本文整理了Java中org.neo4j.driver.v1.types.Node.get()
方法的一些代码示例,展示了Node.get()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Node.get()
方法的具体详情如下:
包路径:org.neo4j.driver.v1.types.Node
类名称:Node
方法名:get
暂无
代码示例来源:origin: hibernate/hibernate-ogm
private static Object[] keyValues(Node node, EntityKeyMetadata entityKeyMetadata) {
Object[] values = new Object[entityKeyMetadata.getColumnNames().length];
for ( int i = 0; i < values.length; i++ ) {
values[i] = node.get( entityKeyMetadata.getColumnNames()[i] );
}
return values;
}
}
代码示例来源:origin: hibernate/hibernate-ogm
private Object readProperty(Node node, String targetColumnName) {
if ( node.containsKey( targetColumnName ) ) {
return node.get( targetColumnName ).asObject();
}
return null;
}
代码示例来源:origin: no.ssb.lds/linked-data-store-persistence-provider-neo4j
String key = field.key();
if ("r".equals(key)) {
String rid = field.value().asNode().get("id").asString();
if (id != null && !id.equals(rid)) {
continue;
Value pathValue = value.asNode().get("path");
String pathWithoutIndices = pathValue.asString();
if (pathWithIndices == null) {
throw new IllegalStateException("Unable to determine path with indices");
Value typeValue = value.asNode().get("type");
String type = typeValue.asString();
Value valueValue = value.asNode().get("value");
if ("string".equals(type)) {
String stringValue = valueValue.asString();
代码示例来源:origin: opencypher/cypher-for-gremlin
@Test
public void returnNodeAndRelationship() {
Driver driver = GremlinDatabase.driver("//localhost:" + server.getPort());
try (Session session = driver.session()) {
StatementResult result = session.run("CREATE (n1:Person {name: 'Marko'})-[r:knows {since:1999}]->(n2:Person)" +
"RETURN n1,r,n2",
parameters("message", "Hello"));
Record record = result.single();
Node n1 = record.get("n1").asNode();
Relationship r = record.get("r").asRelationship();
Node n2 = record.get("n2").asNode();
assertThat(n1.hasLabel("Person")).isTrue();
assertThat(n1.get("name").asString()).isEqualTo("Marko");
assertThat(r.hasType("knows")).isTrue();
assertThat(r.startNodeId()).isEqualTo(n1.id());
assertThat(r.endNodeId()).isEqualTo(n2.id());
assertThat(r.get("since").asLong()).isEqualTo(1999L);
assertThat(n2.hasLabel("Person")).isTrue();
}
}
代码示例来源:origin: h-omer/neo4j-versioner-core
@Test
public void shouldCreateACopyOfTheCurrentStateIfPatchedWithoutStateProps() throws Throwable {
// This is in a try-block, to make sure we close the driver after the test
try (Driver driver = GraphDatabase
.driver(neo4j.boltURI(), Config.build().withEncryption().toConfig()); Session session = driver.session()) {
// Given
session.run("CREATE (e:Entity {key:'immutableValue'})-[:CURRENT {date:localdatetime('1988-10-27T00:00:00')}]->(s:State {key:'initialValue'})");
session.run("MATCH (e:Entity)-[:CURRENT]->(s:State) CREATE (e)-[:HAS_STATE {startDate:localdatetime('1988-10-27T00:00:00')}]->(s)");
StatementResult stateResult = session.run("MATCH (s:State) RETURN s");
Node state = stateResult.single().get("s").asNode();
// When
StatementResult result = session.run("MATCH (e:Entity) WITH e CALL graph.versioner.patch(e) YIELD node RETURN node");
// Then
Node newState = result.single().get("node").asNode();
assertThat(state.get("key"), equalTo(newState.get("key")));
assertThat(state.size(), equalTo(newState.size()));
}
}
代码示例来源:origin: h-omer/neo4j-versioner-core
@Test
public void shouldCreateAndPatchANewStateWithoutAdditionalLabelAndDate() throws Throwable {
// This is in a try-block, to make sure we close the driver after the test
try (Driver driver = GraphDatabase
.driver(neo4j.boltURI(), Config.build().withEncryption().toConfig()); Session session = driver.session()) {
// Given
session.run("CREATE (e:Entity {key:'immutableValue'})-[:CURRENT {date:localdatetime('1988-10-27T00:00:00')}]->(s:State {key:'initialValue'})");
session.run("MATCH (e:Entity)-[:CURRENT]->(s:State) CREATE (e)-[:HAS_STATE {startDate:localdatetime('1988-10-27T00:00:00')}]->(s)");
// When
StatementResult result = session.run("MATCH (e:Entity) WITH e CALL graph.versioner.patch(e, {key:'newValue', newKey:'newestValue'}) YIELD node RETURN node");
Node currentState = result.single().get("node").asNode();
StatementResult countStateResult = session.run("MATCH (s:State) RETURN count(s) as s");
StatementResult nextResult = session.run("MATCH (s1:State)-[:PREVIOUS]->(s2:State) return s2");
StatementResult correctStateResult = session.run("MATCH (s1:State)-[:PREVIOUS]->(s2:State) WITH s1 MATCH (e:Entity)-[:CURRENT]->(s1) return e");
// Then
assertThat(countStateResult.single().get("s").asLong(), equalTo(2L));
assertThat(nextResult.single().get("s2").asNode().id(), equalTo(1L));
assertThat(correctStateResult.single().get("e").asNode().id(), equalTo(0L));
assertThat(currentState.get("key").asString(), equalTo("newValue"));
assertThat(currentState.get("newKey").asString(), equalTo("newestValue"));
}
}
代码示例来源:origin: h-omer/neo4j-versioner-core
@Test
public void shouldCreateAndPatchANewStateWithAdditionalLabelButWithoutDate() throws Throwable {
// This is in a try-block, to make sure we close the driver after the test
try (Driver driver = GraphDatabase
.driver(neo4j.boltURI(), Config.build().withEncryption().toConfig()); Session session = driver.session()) {
// Given
session.run("CREATE (e:Entity {key:'immutableValue'})-[:CURRENT {date:localdatetime('1988-10-27T00:00:00')}]->(s:State {key:'initialValue'})");
session.run("MATCH (e:Entity)-[:CURRENT]->(s:State) CREATE (e)-[:HAS_STATE {startDate:localdatetime('1988-10-27T00:00:00')}]->(s)");
// When
StatementResult result = session.run("MATCH (e:Entity) WITH e CALL graph.versioner.patch(e, {key:'newValue', newKey:'newestValue'}, 'Error') YIELD node RETURN node");
Node currentState = result.single().get("node").asNode();
StatementResult countStateResult = session.run("MATCH (s:State) RETURN count(s) as s");
StatementResult nextResult = session.run("MATCH (s1:State)-[:PREVIOUS]->(s2:State) return s2");
StatementResult correctStateResult = session.run("MATCH (s1:State)-[:PREVIOUS]->(s2:State) WITH s1 MATCH (e:Entity)-[:CURRENT]->(s1) return e");
StatementResult currentStateResult = session.run("MATCH (e:Entity)-[:CURRENT]->(s) return s");
// Then
assertThat(countStateResult.single().get("s").asLong(), equalTo(2L));
assertThat(nextResult.single().get("s2").asNode().id(), equalTo(1L));
assertThat(correctStateResult.single().get("e").asNode().id(), equalTo(0L));
assertThat(currentStateResult.single().get("s").asNode().hasLabel("Error"), equalTo(true));
assertThat(currentState.get("key").asString(), equalTo("newValue"));
assertThat(currentState.get("newKey").asString(), equalTo("newestValue"));
}
}
代码示例来源:origin: h-omer/neo4j-versioner-core
@Test
public void shouldCreateACopyOfTheGivenStateWithoutAdditionalDate() throws Throwable {
// This is in a try-block, to make sure we close the driver after the test
try (Driver driver = GraphDatabase
.driver(neo4j.boltURI(), Config.build().withEncryption().toConfig()); Session session = driver.session()) {
// Given
session.run("CREATE (e:Entity {key:'immutableValue'})-[:CURRENT {date:localdatetime('1988-10-27T00:00:00')}]->(s:State {key:'initialValue', newKey:'oldestValue'})");
session.run("MATCH (e:Entity {key:'immutableValue'})-[:CURRENT {date:localdatetime('1988-10-27T00:00:00')}]->(s:State {key:'initialValue'}) CREATE (e)-[:HAS_STATE {startDate:localdatetime('1988-10-27T00:00:00')}]->(s)");
session.run("MATCH (e:Entity) CREATE (e)-[:HAS_STATE {startDate:localdatetime('1988-10-26T00:00:00'), endDate:localdatetime('1988-10-27T00:00:00')}]->(s:State:Test {newKey:'newestValue'})");
session.run("MATCH (sc:State)<-[:CURRENT]-(e:Entity)-[:HAS_STATE]->(s:Test) CREATE (sc)-[:PREVIOUS {date:localdatetime('1988-10-26T00:00:00')}]->(s)");
StatementResult stateResult = session.run("MATCH (s:Test) RETURN s");
Node originalState = stateResult.single().get("s").asNode();
// When
StatementResult result = session.run("MATCH (e:Entity)-[:HAS_STATE]->(s:Test) WITH e, s CALL graph.versioner.patch.from(e, s) YIELD node RETURN node");
Node currentState = result.single().get("node").asNode();
StatementResult countStateResult = session.run("MATCH (s:State) RETURN count(s) as s");
StatementResult correctStateResult = session.run("MATCH (s1:State)-[:PREVIOUS]->(s2:State) WITH s1 MATCH (e:Entity)-[:CURRENT]->(s1) return e");
// Then
assertThat(countStateResult.single().get("s").asLong(), equalTo(3L));
assertThat(correctStateResult.single().get("e").asNode().id(), equalTo(0L));
assertThat(currentState.get("key").asString(), equalTo("initialValue"));
assertThat(currentState.get("newKey").asString(), equalTo("newestValue"));
}
}
代码示例来源:origin: h-omer/neo4j-versioner-core
@Test
public void shouldCreateAndPatchANewStateWithAdditionalLabelAndDateButWithANewProp() throws Throwable {
// This is in a try-block, to make sure we close the driver after the test
try (Driver driver = GraphDatabase
.driver(neo4j.boltURI(), Config.build().withEncryption().toConfig()); Session session = driver.session()) {
// Given
session.run("CREATE (e:Entity {key:'immutableValue'})-[:CURRENT {date:localdatetime('1988-10-27T00:00:00')}]->(s:State {key:'initialValue'})");
session.run("MATCH (e:Entity)-[:CURRENT]->(s:State) CREATE (e)-[:HAS_STATE {startDate:localdatetime('1988-10-27T00:00:00')}]->(s)");
// When
StatementResult result = session.run("MATCH (e:Entity) WITH e CALL graph.versioner.patch(e, {newKey:'newestValue'}, 'Error', localdatetime('1988-10-27T02:46:40')) YIELD node RETURN node");
Node currentState = result.single().get("node").asNode();
StatementResult countStateResult = session.run("MATCH (s:State) RETURN count(s) as s");
StatementResult nextResult = session.run("MATCH (s1:State)-[:PREVIOUS]->(s2:State) return s2");
StatementResult correctStateResult = session.run("MATCH (s1:State)-[:PREVIOUS]->(s2:State) WITH s1 MATCH (e:Entity)-[:CURRENT]->(s1) return e");
StatementResult currentStateResult = session.run("MATCH (e:Entity)-[:CURRENT]->(s) return s");
StatementResult dateResult = session.run("MATCH (e:Entity)-[r:CURRENT]->(s) RETURN r.date as relDate");
StatementResult hasStatusDateResult = session.run("MATCH (e:Entity)-[:CURRENT]->(s:State)-[:PREVIOUS]->(s2:State)<-[rel:HAS_STATE]-(e) RETURN rel.endDate as endDate");
// Then
assertThat(countStateResult.single().get("s").asLong(), equalTo(2L));
assertThat(nextResult.single().get("s2").asNode().id(), equalTo(1L));
assertThat(correctStateResult.single().get("e").asNode().id(), equalTo(0L));
assertThat(currentStateResult.single().get("s").asNode().hasLabel("Error"), equalTo(true));
assertThat(dateResult.single().get("relDate").asLocalDateTime(), equalTo(convertEpochToLocalDateTime(593920000000L)));
assertThat(hasStatusDateResult.single().get("endDate").asLocalDateTime(), equalTo(convertEpochToLocalDateTime(593920000000L)));
assertThat(currentState.get("key").asString(), equalTo("initialValue"));
assertThat(currentState.get("newKey").asString(), equalTo("newestValue"));
}
}
代码示例来源:origin: h-omer/neo4j-versioner-core
@Test
public void shouldCreateAndPatchANewStateWithAdditionalLabelAndDate() throws Throwable {
// This is in a try-block, to make sure we close the driver after the test
try (Driver driver = GraphDatabase
.driver(neo4j.boltURI(), Config.build().withEncryption().toConfig()); Session session = driver.session()) {
// Given
session.run("CREATE (e:Entity {key:'immutableValue'})-[:CURRENT {date:localdatetime('1988-10-27T00:00:00')}]->(s:State {key:'initialValue'})");
session.run("MATCH (e:Entity)-[:CURRENT]->(s:State) CREATE (e)-[:HAS_STATE {startDate:localdatetime('1988-10-27T00:00:00')}]->(s)");
// When
StatementResult result = session.run("MATCH (e:Entity) WITH e CALL graph.versioner.patch(e, {key:'newValue', newKey:'newestValue'}, 'Error', localdatetime('1988-10-27T02:46:40')) YIELD node RETURN node");
Node currentState = result.single().get("node").asNode();
StatementResult countStateResult = session.run("MATCH (s:State) RETURN count(s) as s");
StatementResult nextResult = session.run("MATCH (s1:State)-[:PREVIOUS]->(s2:State) return s2");
StatementResult correctStateResult = session.run("MATCH (s1:State)-[:PREVIOUS]->(s2:State) WITH s1 MATCH (e:Entity)-[:CURRENT]->(s1) return e");
StatementResult currentStateResult = session.run("MATCH (e:Entity)-[:CURRENT]->(s) return s");
StatementResult dateResult = session.run("MATCH (e:Entity)-[r:CURRENT]->(s) RETURN r.date as relDate");
StatementResult hasStatusDateResult = session.run("MATCH (e:Entity)-[:CURRENT]->(s:State)-[:PREVIOUS]->(s2:State)<-[rel:HAS_STATE]-(e) RETURN rel.endDate as endDate");
// Then
assertThat(countStateResult.single().get("s").asLong(), equalTo(2L));
assertThat(nextResult.single().get("s2").asNode().id(), equalTo(1L));
assertThat(correctStateResult.single().get("e").asNode().id(), equalTo(0L));
assertThat(currentStateResult.single().get("s").asNode().hasLabel("Error"), equalTo(true));
assertThat(dateResult.single().get("relDate").asLocalDateTime(), equalTo(convertEpochToLocalDateTime(593920000000L)));
assertThat(hasStatusDateResult.single().get("endDate").asLocalDateTime(), equalTo(convertEpochToLocalDateTime(593920000000L)));
assertThat(currentState.get("key").asString(), equalTo("newValue"));
assertThat(currentState.get("newKey").asString(), equalTo("newestValue"));
}
}
代码示例来源:origin: h-omer/neo4j-versioner-core
@Test
public void shouldCreateACopyOfTheGivenStateWithAdditionalDate() throws Throwable {
// This is in a try-block, to make sure we close the driver after the test
try (Driver driver = GraphDatabase
.driver(neo4j.boltURI(), Config.build().withEncryption().toConfig()); Session session = driver.session()) {
// Given
session.run("CREATE (e:Entity {key:'immutableValue'})-[:CURRENT {date:localdatetime('1988-10-27T00:00:00')}]->(s:State {key:'initialValue', newKey:'oldestValue'})");
session.run("MATCH (e:Entity {key:'immutableValue'})-[:CURRENT {date:localdatetime('1988-10-27T00:00:00')}]->(s:State {key:'initialValue'}) CREATE (e)-[:HAS_STATE {startDate:localdatetime('1988-10-27T00:00:00')}]->(s)");
session.run("MATCH (e:Entity) CREATE (e)-[:HAS_STATE {startDate:localdatetime('1988-10-26T00:00:00'), endDate:localdatetime('1988-10-27T00:00:00')}]->(s:State:Test {newKey:'newestValue'})");
session.run("MATCH (sc:State)<-[:CURRENT]-(e:Entity)-[:HAS_STATE]->(s:Test) CREATE (sc)-[:PREVIOUS {date:localdatetime('1988-10-26T00:00:00')}]->(s)");
StatementResult stateResult = session.run("MATCH (s:Test) RETURN s");
Node originalState = stateResult.single().get("s").asNode();
// When
StatementResult result = session.run("MATCH (e:Entity)-[:HAS_STATE]->(s:Test) WITH e, s CALL graph.versioner.patch.from(e, s, false, localdatetime('1988-10-27T02:46:40')) YIELD node RETURN node");
Node currentState = result.single().get("node").asNode();
StatementResult countStateResult = session.run("MATCH (s:State) RETURN count(s) as s");
StatementResult correctStateResult = session.run("MATCH (s1:State)-[:PREVIOUS]->(s2:State) WITH s1 MATCH (e:Entity)-[:CURRENT]->(s1) return e");
StatementResult dateResult = session.run("MATCH (e:Entity)-[r:CURRENT]->(s) RETURN r.date as relDate");
StatementResult hasStatusDateResult = session.run("MATCH (e:Entity)-[:CURRENT]->(s:State)-[:PREVIOUS]->(s2:State)<-[rel:HAS_STATE]-(e) RETURN rel.endDate as endDate");
// Then
assertThat(countStateResult.single().get("s").asLong(), equalTo(3L));
assertThat(correctStateResult.single().get("e").asNode().id(), equalTo(0L));
assertThat(currentState.get("key").asString(), equalTo("initialValue"));
assertThat(currentState.get("newKey").asString(), equalTo("newestValue"));
assertThat(dateResult.single().get("relDate").asLocalDateTime(), equalTo(convertEpochToLocalDateTime(593920000000L)));
assertThat(hasStatusDateResult.single().get("endDate").asLocalDateTime(), equalTo(convertEpochToLocalDateTime(593920000000L)));
}
}
代码示例来源:origin: h-omer/neo4j-versioner-core
@Test
public void shouldCreateACopyOfTheGivenStateWithAdditionalDateButWithANewProp() throws Throwable {
// This is in a try-block, to make sure we close the driver after the test
try (Driver driver = GraphDatabase
.driver(neo4j.boltURI(), Config.build().withEncryption().toConfig()); Session session = driver.session()) {
// Given
session.run("CREATE (e:Entity {key:'immutableValue'})-[:CURRENT {date:localdatetime('1988-10-27T00:00:00')}]->(s:State {key:'initialValue'})");
session.run("MATCH (e:Entity {key:'immutableValue'})-[:CURRENT {date:localdatetime('1988-10-27T00:00:00')}]->(s:State {key:'initialValue'}) CREATE (e)-[:HAS_STATE {startDate:localdatetime('1988-10-27T00:00:00')}]->(s)");
session.run("MATCH (e:Entity) CREATE (e)-[:HAS_STATE {startDate:localdatetime('1988-10-26T00:00:00'), endDate:localdatetime('1988-10-27T00:00:00')}]->(s:State:Test {newKey:'newestValue'})");
session.run("MATCH (sc:State)<-[:CURRENT]-(e:Entity)-[:HAS_STATE]->(s:Test) CREATE (sc)-[:PREVIOUS {date:localdatetime('1988-10-26T00:00:00')}]->(s)");
StatementResult stateResult = session.run("MATCH (s:Test) RETURN s");
Node originalState = stateResult.single().get("s").asNode();
// When
StatementResult result = session.run("MATCH (e:Entity)-[:HAS_STATE]->(s:Test) WITH e, s CALL graph.versioner.patch.from(e, s, false,localdatetime('1988-10-27T02:46:40')) YIELD node RETURN node");
Node currentState = result.single().get("node").asNode();
StatementResult countStateResult = session.run("MATCH (s:State) RETURN count(s) as s");
StatementResult correctStateResult = session.run("MATCH (s1:State)-[:PREVIOUS]->(s2:State) WITH s1 MATCH (e:Entity)-[:CURRENT]->(s1) return e");
StatementResult dateResult = session.run("MATCH (e:Entity)-[r:CURRENT]->(s) RETURN r.date as relDate");
StatementResult hasStatusDateResult = session.run("MATCH (e:Entity)-[:CURRENT]->(s:State)-[:PREVIOUS]->(s2:State)<-[rel:HAS_STATE]-(e) RETURN rel.endDate as endDate");
// Then
//assertThat(currentState.id(), equalTo(21L));
assertThat(countStateResult.single().get("s").asLong(), equalTo(3L));
assertThat(correctStateResult.single().get("e").asNode().id(), equalTo(0L));
assertThat(currentState.get("key").asString(), equalTo("initialValue"));
assertThat(currentState.get("newKey").asString(), equalTo("newestValue"));
assertThat(dateResult.single().get("relDate").asLocalDateTime(), equalTo(convertEpochToLocalDateTime(593920000000L)));
assertThat(hasStatusDateResult.single().get("endDate").asLocalDateTime(), equalTo(convertEpochToLocalDateTime(593920000000L)));
}
}
内容来源于网络,如有侵权,请联系作者删除!