upgrade to neo4j 1.7

This commit is contained in:
Michael Hunger
2012-03-25 04:15:45 +02:00
parent 35b3d4da86
commit 5c7bfde855
8 changed files with 32 additions and 21 deletions

View File

@@ -127,12 +127,12 @@
<org.springframework.version.40>4.0.0.RELEASE</org.springframework.version.40>
<org.springframework.version>[${org.springframework.version.30}, ${org.springframework.version.40})</org.springframework.version>
<data.commons.version>1.2.1.RELEASE</data.commons.version>
<neo4j.version>1.6</neo4j.version>
<neo4j.version>1.7-SNAPSHOT</neo4j.version>
<neo4j.spatial.version>0.7</neo4j.spatial.version>
<aspectj.version>1.6.12</aspectj.version>
<blueprints.version>1.1</blueprints.version>
<gremlin.version>1.4</gremlin.version>
<pipes.version>1.4</pipes.version>
<blueprints.version>1.2</blueprints.version>
<gremlin.version>1.5</gremlin.version>
<pipes.version>1.5</pipes.version>
</properties>
<profiles>
<profile>
@@ -394,6 +394,7 @@
<artifactId>neo4j-management</artifactId>
</exclusion>
</exclusions>
<optional>true</optional>
</dependency>
<dependency>
@@ -402,12 +403,6 @@
<version>${blueprints.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.tinkerpop.blueprints</groupId>
<artifactId>blueprints-neo4j-graph</artifactId>
<version>${blueprints.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.tinkerpop.gremlin</groupId>

View File

@@ -60,6 +60,7 @@ import org.springframework.transaction.PlatformTransactionManager;
import org.springframework.transaction.jta.JtaTransactionManager;
import org.springframework.transaction.jta.UserTransactionAdapter;
import javax.transaction.TransactionManager;
import javax.validation.Validator;
import static java.util.Arrays.asList;
@@ -244,8 +245,9 @@ public abstract class Neo4jConfiguration {
JtaTransactionManager jtaTm = new JtaTransactionManager();
final GraphDatabaseService gds = getGraphDatabaseService();
if (gds instanceof AbstractGraphDatabase) {
final TransactionManager txManager = ((AbstractGraphDatabase) gds).getTxManager();
jtaTm.setTransactionManager(new SpringTransactionManager(gds));
jtaTm.setUserTransaction(new UserTransactionImpl(gds));
jtaTm.setUserTransaction(new UserTransactionImpl(txManager));
} else {
final NullTransactionManager tm = new NullTransactionManager();
jtaTm.setTransactionManager(tm);

View File

@@ -206,7 +206,7 @@ public class DelegatingGraphDatabase implements GraphDatabase {
return true; // assume always running tx (e.g. for REST or other remotes)
}
try {
final TransactionManager txManager = ((AbstractGraphDatabase) delegate).getConfig().getTxModule().getTxManager();
final TransactionManager txManager = ((AbstractGraphDatabase) delegate).getTxManager();
return txManager.getStatus() != Status.STATUS_NO_TRANSACTION;
} catch (SystemException e) {
log.error("Error accessing TransactionManager", e);

View File

@@ -21,7 +21,8 @@ import com.tinkerpop.blueprints.pgm.Vertex;
import com.tinkerpop.blueprints.pgm.impls.neo4j.Neo4jEdge;
import com.tinkerpop.blueprints.pgm.impls.neo4j.Neo4jGraph;
import com.tinkerpop.blueprints.pgm.impls.neo4j.Neo4jVertex;
import com.tinkerpop.pipes.util.Table;
import com.tinkerpop.pipes.util.structures.Row;
import com.tinkerpop.pipes.util.structures.Table;
import org.neo4j.graphdb.GraphDatabaseService;
import org.neo4j.helpers.collection.IterableWrapper;
import org.slf4j.Logger;
@@ -89,9 +90,9 @@ public class GremlinExecutor {
if (result instanceof Iterable) {
if (result instanceof Table) {
final Table table = (Table) result;
return new IterableWrapper<Map<String,Object>,Table.Row>(table) {
return new IterableWrapper<Map<String,Object>,Row>(table) {
@Override
protected Map<String, Object> underlyingObjectToObject(Table.Row row) {
protected Map<String, Object> underlyingObjectToObject(Row row) {
Map<String,Object> result=new LinkedHashMap<String, Object>();
for (String column : table.getColumnNames()) {
result.put(column, row.getColumn(column));

View File

@@ -35,7 +35,7 @@ public class SpringProvider extends TransactionManagerProvider
}
@Override
protected AbstractTransactionManager loadTransactionManager(String s, KernelPanicEventGenerator kernelPanicEventGenerator, TxHook txHook, StringLogger stringLogger, FileSystemAbstraction fileSystemAbstraction) {
public AbstractTransactionManager loadTransactionManager(String s, KernelPanicEventGenerator kernelPanicEventGenerator, TxHook txHook, StringLogger stringLogger, FileSystemAbstraction fileSystemAbstraction) {
return new SpringServiceImpl();
}
}

View File

@@ -40,11 +40,20 @@ class SpringServiceImpl extends AbstractTransactionManager
}
@Override
public void init( XaDataSourceManager xaDsManager )
{
public void init() throws Throwable {
delegate = jtaTransactionManager.getTransactionManager();
}
@Override
public void start() throws Throwable {
}
@Override
public void shutdown() throws Throwable {
}
public void begin() throws NotSupportedException, SystemException
{
delegate.begin();

View File

@@ -24,6 +24,8 @@ import org.springframework.beans.factory.FactoryBean;
import org.springframework.transaction.jta.JtaTransactionManager;
import org.springframework.transaction.jta.UserTransactionAdapter;
import javax.transaction.TransactionManager;
/**
* @author mh
* @since 09.04.11
@@ -50,8 +52,9 @@ public class TestTransactionManagerFactoryBean implements FactoryBean<JtaTransac
private JtaTransactionManager createJtaTransactionManager(GraphDatabaseService gds) {
JtaTransactionManager jtaTm = new JtaTransactionManager();
if (gds instanceof AbstractGraphDatabase) {
final TransactionManager txManager = ((AbstractGraphDatabase) gds).getTxManager();
jtaTm.setTransactionManager(new SpringTransactionManager(gds));
jtaTm.setUserTransaction(new UserTransactionImpl(gds));
jtaTm.setUserTransaction(new UserTransactionImpl(txManager));
} else {
final NullTransactionManager tm = new NullTransactionManager();
jtaTm.setTransactionManager(tm);

View File

@@ -23,6 +23,7 @@ import org.junit.Test;
import org.neo4j.graphdb.GraphDatabaseService;
import org.neo4j.graphdb.Node;
import org.neo4j.graphdb.NotFoundException;
import org.neo4j.kernel.AbstractGraphDatabase;
import org.neo4j.kernel.Config;
import org.neo4j.kernel.EmbeddedGraphDatabase;
import org.objectweb.jotm.Current;
@@ -115,8 +116,8 @@ public class JOTMIntegrationTest {
@Test
public void databaseConfiguredWithSpringJtaShouldUseJtaTransactionManager() throws SystemException, NotSupportedException {
Map<Object, Object> config = ((EmbeddedGraphDatabase) gds).getConfig().getParams();
assertEquals("spring-jta", config.get(Config.TXMANAGER_IMPLEMENTATION));
final Config config = ((AbstractGraphDatabase) gds).getConfig();
assertEquals("spring-jta", config.getParams().get(Config.TXMANAGER_IMPLEMENTATION));
JtaTransactionManager tm = ctx.getBean("transactionManager", JtaTransactionManager.class);
Transaction transaction = tm.createTransaction("jotm", 1000);