DATAGRAPH-220 upgrade to neo4j 1.7, also with upgrades of java-rest-binding, neo4j-spatial

This commit is contained in:
Michael Hunger
2012-04-03 13:47:31 +02:00
parent 5c7bfde855
commit 3463c513c0
10 changed files with 30 additions and 28 deletions

View File

@@ -141,7 +141,7 @@
</property>
<property name="userTransaction">
<bean class="org.neo4j.kernel.impl.transaction.UserTransactionImpl">
<constructor-arg ref="graphDatabaseService" />
<constructor-arg value="#{graphDatabaseService.txManager}" />
</bean>
</property>
</bean>
@@ -149,7 +149,6 @@
</constructor-arg>
</bean>
<bean class="org.springframework.jdbc.datasource.DriverManagerDataSource" id="dataSource">
<property name="driverClassName" value="${database.driverClassName}"/>
<property name="url" value="${database.url}"/>

View File

@@ -128,7 +128,7 @@
<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.7-SNAPSHOT</neo4j.version>
<neo4j.spatial.version>0.7</neo4j.spatial.version>
<neo4j.spatial.version>0.8-SNAPSHOT</neo4j.spatial.version>
<aspectj.version>1.6.12</aspectj.version>
<blueprints.version>1.2</blueprints.version>
<gremlin.version>1.5</gremlin.version>

View File

@@ -38,7 +38,7 @@
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j-rest-graphdb</artifactId>
<version>1.6</version>
<version>1.7-SNAPSHOT</version>
<exclusions>
<exclusion>
<groupId>org.neo4j</groupId>
@@ -57,6 +57,12 @@
<optional>true</optional>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j-shell</artifactId>
<version>${neo4j.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.neo4j.server.plugin</groupId>
<artifactId>neo4j-gremlin-plugin</artifactId>
@@ -111,10 +117,6 @@
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.fileinstall</artifactId>
</exclusion>
<exclusion>
<groupId>org.neo4j</groupId>
<artifactId>neo4j-shell</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jdk14</artifactId>

View File

@@ -19,7 +19,7 @@ package org.springframework.data.neo4j.config;
import org.neo4j.graphdb.GraphDatabaseService;
import org.neo4j.graphdb.Node;
import org.neo4j.graphdb.Relationship;
import org.neo4j.kernel.AbstractGraphDatabase;
import org.neo4j.kernel.GraphDatabaseAPI;
import org.neo4j.kernel.impl.transaction.SpringTransactionManager;
import org.neo4j.kernel.impl.transaction.UserTransactionImpl;
import org.springframework.beans.factory.annotation.Autowired;
@@ -244,8 +244,8 @@ public abstract class Neo4jConfiguration {
protected JtaTransactionManager createJtaTransactionManager() {
JtaTransactionManager jtaTm = new JtaTransactionManager();
final GraphDatabaseService gds = getGraphDatabaseService();
if (gds instanceof AbstractGraphDatabase) {
final TransactionManager txManager = ((AbstractGraphDatabase) gds).getTxManager();
if (gds instanceof GraphDatabaseAPI) {
final TransactionManager txManager = ((GraphDatabaseAPI) gds).getTxManager();
jtaTm.setTransactionManager(new SpringTransactionManager(gds));
jtaTm.setUserTransaction(new UserTransactionImpl(txManager));
} else {

View File

@@ -40,8 +40,8 @@ public abstract class QueryTemplates {
static final String SKIP_LIMIT = " skip %d limit %d";
static final String START_CLAUSE = "`%s`=node:`%s`(`%s`=" + PLACEHOLDER + ")";
static final String START_CLAUSE_FULLTEXT = "`%s`=node:`%s`(" + PLACEHOLDER + ")";
static final String WHERE_CLAUSE_1 = "`%1$s`.`%2$s` AND `%1$s`.`%2$s` %3$s {%4$d}";
static final String WHERE_CLAUSE_0 = "`%1$s`.`%2$s` AND `%1$s`.`%2$s` %3$s ";
static final String WHERE_CLAUSE_1 = "`%1$s`.`%2$s`! %3$s {%4$d}";
static final String WHERE_CLAUSE_0 = "`%1$s`.`%2$s`! %3$s ";
static final String SORT_CLAUSE = "%s %s";
static final String ORDER_BY_CLAUSE = " order by %s";

View File

@@ -26,6 +26,7 @@ import org.neo4j.graphdb.index.IndexManager;
import org.neo4j.graphdb.index.UniqueFactory;
import org.neo4j.graphdb.traversal.TraversalDescription;
import org.neo4j.kernel.AbstractGraphDatabase;
import org.neo4j.kernel.GraphDatabaseAPI;
import org.neo4j.kernel.Traversal;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -202,11 +203,11 @@ public class DelegatingGraphDatabase implements GraphDatabase {
@Override
public boolean transactionIsRunning() {
if (!(delegate instanceof AbstractGraphDatabase)) {
if (!(delegate instanceof GraphDatabaseAPI)) {
return true; // assume always running tx (e.g. for REST or other remotes)
}
try {
final TransactionManager txManager = ((AbstractGraphDatabase) delegate).getTxManager();
final TransactionManager txManager = ((GraphDatabaseAPI) delegate).getTxManager();
return txManager.getStatus() != Status.STATUS_NO_TRANSACTION;
} catch (SystemException e) {
log.error("Error accessing TransactionManager", e);

View File

@@ -23,6 +23,7 @@ import org.neo4j.graphdb.GraphDatabaseService;
import org.neo4j.kernel.AbstractGraphDatabase;
import org.neo4j.kernel.EmbeddedGraphDatabase;
import org.neo4j.kernel.HighlyAvailableGraphDatabase;
import org.neo4j.kernel.configuration.Config;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.core.convert.ConversionService;
@@ -76,7 +77,7 @@ public class DataGraphNamespaceHandlerTest {
final Config config = assertInjected("-external-embedded");
final AbstractGraphDatabase gds = (AbstractGraphDatabase) config.graphDatabaseService;
assertEquals(EmbeddedGraphDatabase.class, gds.getClass());
final org.neo4j.kernel.Config neoConfig = gds.getConfig();
final org.neo4j.kernel.configuration.Config neoConfig = gds.getConfig();
assertEquals("true", neoConfig.getParams().get("allow_store_upgrade"));
}
@Test
@@ -84,7 +85,7 @@ public class DataGraphNamespaceHandlerTest {
public void injectionForExistingHighlyAvailableGraphDatabaseService() {
final Config config = assertInjected("-external-ha");
final AbstractGraphDatabase gds = (AbstractGraphDatabase) config.graphDatabaseService;
final org.neo4j.kernel.Config neoConfig = gds.getConfig();
final org.neo4j.kernel.configuration.Config neoConfig = gds.getConfig();
assertEquals(HighlyAvailableGraphDatabase.class, gds.getClass());
assertEquals("1", neoConfig.getParams().get("ha.server_id"));
}

View File

@@ -18,6 +18,7 @@ package org.springframework.data.neo4j.config;
import org.neo4j.graphdb.GraphDatabaseService;
import org.neo4j.kernel.AbstractGraphDatabase;
import org.neo4j.kernel.GraphDatabaseAPI;
import org.neo4j.kernel.impl.transaction.SpringTransactionManager;
import org.neo4j.kernel.impl.transaction.UserTransactionImpl;
import org.springframework.beans.factory.FactoryBean;
@@ -51,8 +52,8 @@ 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();
if (gds instanceof GraphDatabaseAPI) {
final TransactionManager txManager = ((GraphDatabaseAPI) gds).getTxManager();
jtaTm.setTransactionManager(new SpringTransactionManager(gds));
jtaTm.setUserTransaction(new UserTransactionImpl(txManager));
} else {

View File

@@ -66,7 +66,7 @@ public class CypherQueryBuilderUnitTests {
Part part = new Part("infoLike", Person.class);
query.addRestriction(part);
assertThat(query.toString(), is(DEFAULT_START_CLAUSE+" where `person`.`info` AND `person`.`info` =~ {0} return `person`"));
assertThat(query.toString(), is(DEFAULT_START_CLAUSE+" where `person`.`info`! =~ {0} return `person`"));
}
@Test
public void createsQueryForGreaterThanPropertyReference() {
@@ -74,7 +74,7 @@ public class CypherQueryBuilderUnitTests {
Part part = new Part("ageGreaterThan", Person.class);
query.addRestriction(part);
assertThat(query.toString(), is(DEFAULT_START_CLAUSE+" where `person`.`age` AND `person`.`age` > {0} return `person`"));
assertThat(query.toString(), is(DEFAULT_START_CLAUSE+" where `person`.`age`! > {0} return `person`"));
}
@Test
public void createsQueryForTwoPropertyExpressions() {
@@ -82,7 +82,7 @@ public class CypherQueryBuilderUnitTests {
query.addRestriction(new Part("ageGreaterThan", Person.class));
query.addRestriction(new Part("info", Person.class));
assertThat(query.toString(), is(DEFAULT_START_CLAUSE+" where `person`.`age` AND `person`.`age` > {0} and `person`.`info` AND `person`.`info` = {1} return `person`"));
assertThat(query.toString(), is(DEFAULT_START_CLAUSE+" where `person`.`age`! > {0} and `person`.`info`! = {1} return `person`"));
}
@Test
@@ -91,7 +91,7 @@ public class CypherQueryBuilderUnitTests {
Part part = new Part("ageIsNull", Person.class);
query.addRestriction(part);
assertThat(query.toString(), is(DEFAULT_START_CLAUSE+" where `person`.`age` AND `person`.`age` is null return `person`"));
assertThat(query.toString(), is(DEFAULT_START_CLAUSE+" where `person`.`age`! is null return `person`"));
}
@Test
@@ -119,7 +119,7 @@ public class CypherQueryBuilderUnitTests {
query.addRestriction(new Part("age", Person.class));
final String className = Person.class.getName();
assertThat(query.toString(), is(DEFAULT_START_CLAUSE +" where `person`.`age` AND `person`.`age` = {0} return `person`"));
assertThat(query.toString(), is(DEFAULT_START_CLAUSE +" where `person`.`age`! = {0} return `person`"));
}
@Test
public void createsSimpleTraversalClauseCorrectly() {
@@ -140,7 +140,7 @@ public class CypherQueryBuilderUnitTests {
assertThat(query.toString(), is(
"start `person`=node:`Person`(`name`={0}), `person_group`=node:`Group`(`name`={1}) " +
"match `person`<-[:`members`]-`person_group`, `person`<-[:`members`]-`person_group`-[:`members`]->`person_group_members` " +
"where `person`.`age` AND `person`.`age` > {2} and `person_group_members`.`age` AND `person_group_members`.`age` = {3} " +
"where `person`.`age`! > {2} and `person_group_members`.`age`! = {3} " +
"return `person`"
));
}

View File

@@ -24,8 +24,7 @@ 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.neo4j.kernel.configuration.Config;
import org.objectweb.jotm.Current;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.data.neo4j.support.node.Neo4jHelper;
@@ -35,7 +34,6 @@ import org.springframework.transaction.jta.ManagedTransactionAdapter;
import javax.transaction.NotSupportedException;
import javax.transaction.SystemException;
import javax.transaction.Transaction;
import java.util.Map;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;