本文整理汇总了Java中org.apache.tinkerpop.gremlin.structure.Graph类的典型用法代码示例。如果您正苦于以下问题:Java Graph类的具体用法?Java Graph怎么用?Java Graph使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
Graph类属于org.apache.tinkerpop.gremlin.structure包,在下文中一共展示了Graph类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: createGraph
import org.apache.tinkerpop.gremlin.structure.Graph; //导入依赖的package包/类
public Graph createGraph() throws InterruptedException {
Graph newGraph;
if (this.cassandraEnabled) {
Builder titanBuilder = TitanFactory.build().set("storage.backend", "cassandra")
.set("storage.cassandra.keyspace", this.cassandraKeyspace)
.set("storage.hostname", Arrays.asList(hostname.split(","))).set("storage.port", this.port)
.set("cache.db-cache", this.cacheEnabled).set("cache.db-cache-clean-wait", this.titanCacheCleanWait)
.set("cache.db-cache-time", this.titanCacheTime).set("cache.db-cache-size", this.titanCacheSize);
if (StringUtils.isNotEmpty(this.username)) {
titanBuilder = titanBuilder.set("storage.username", this.username);
}
if (StringUtils.isNotEmpty(this.password)) {
titanBuilder = titanBuilder.set("storage.password", this.password);
}
newGraph = titanBuilder.open();
} else {
newGraph = TitanFactory.build().set("storage.backend", "inmemory").open();
}
createSchemaElements(newGraph);
LOGGER.info("Initialized titan db.");
return newGraph;
}
示例2: getBaseConfiguration
import org.apache.tinkerpop.gremlin.structure.Graph; //导入依赖的package包/类
@Override
public Map<String, Object> getBaseConfiguration(final String graphName, final Class<?> test, final String testMethodName,
final LoadGraphWith.GraphData loadGraphWith) {
final TinkerGraph.DefaultIdManager idManager = TinkerGraph.DefaultIdManager.UUID;
final String idMaker = idManager.name();
return new HashMap<String, Object>() {{
put(Graph.GRAPH, TinkerGraph.class.getName());
put(TinkerGraph.GREMLIN_TINKERGRAPH_VERTEX_ID_MANAGER, idMaker);
put(TinkerGraph.GREMLIN_TINKERGRAPH_EDGE_ID_MANAGER, idMaker);
put(TinkerGraph.GREMLIN_TINKERGRAPH_VERTEX_PROPERTY_ID_MANAGER, idMaker);
if (requiresListCardinalityAsDefault(loadGraphWith, test, testMethodName))
put(TinkerGraph.GREMLIN_TINKERGRAPH_DEFAULT_VERTEX_PROPERTY_CARDINALITY, VertexProperty.Cardinality.list.name());
if (requiresPersistence(test, testMethodName)) {
put(TinkerGraph.GREMLIN_TINKERGRAPH_GRAPH_FORMAT, "gryo");
final File tempDir = TestHelper.makeTestDataPath(test, "temp");
put(TinkerGraph.GREMLIN_TINKERGRAPH_GRAPH_LOCATION,
tempDir.getAbsolutePath() + File.separator + testMethodName + ".kryo");
}
}};
}
示例3: getBaseConfiguration
import org.apache.tinkerpop.gremlin.structure.Graph; //导入依赖的package包/类
@Override
public Map<String, Object> getBaseConfiguration(final String graphName, final Class<?> test, final String testMethodName,
final LoadGraphWith.GraphData loadGraphWith) {
final TinkerGraph.DefaultIdManager idManager = selectIdMakerFromGraphData(loadGraphWith);
final String idMaker = (idManager.equals(TinkerGraph.DefaultIdManager.ANY) ? selectIdMakerFromTest(test, testMethodName) : idManager).name();
return new HashMap<String, Object>() {{
put(Graph.GRAPH, TinkerGraph.class.getName());
put(TinkerGraph.GREMLIN_TINKERGRAPH_VERTEX_ID_MANAGER, idMaker);
put(TinkerGraph.GREMLIN_TINKERGRAPH_EDGE_ID_MANAGER, idMaker);
put(TinkerGraph.GREMLIN_TINKERGRAPH_VERTEX_PROPERTY_ID_MANAGER, idMaker);
if (requiresListCardinalityAsDefault(loadGraphWith, test, testMethodName))
put(TinkerGraph.GREMLIN_TINKERGRAPH_DEFAULT_VERTEX_PROPERTY_CARDINALITY, VertexProperty.Cardinality.list.name());
if (requiresPersistence(test, testMethodName)) {
put(TinkerGraph.GREMLIN_TINKERGRAPH_GRAPH_FORMAT, "gryo");
final File tempDir = TestHelper.makeTestDataPath(test, "temp");
put(TinkerGraph.GREMLIN_TINKERGRAPH_GRAPH_LOCATION,
tempDir.getAbsolutePath() + File.separator + testMethodName + ".kryo");
}
}};
}
示例4: shouldSupportFindDocuments
import org.apache.tinkerpop.gremlin.structure.Graph; //导入依赖的package包/类
@Test
public void shouldSupportFindDocuments() throws Exception {
final Graph graph = TinkerFactory.createModern();
final GraphTraversalSource g = graph.traversal(GraphTraversalSource.class);
final MongoDBTraversalSource db = graph.traversal(MongoDBTraversalSource.class);
// test find(name,marko)
assertEquals(
parser.parse("{\"~label\":\"person\",\"created\":{\"~label\":\"software\",\"~id\":3,\"name\":\"lop\",\"lang\":\"java\"}," +
"\"~id\":1,\"name\":\"marko\",\"age\":29,\"knows\":[{\"~label\":\"person\",\"~id\":2,\"name\":\"vadas\",\"age\":27}," +
"{\"~label\":\"person\",\"created\":{\"~label\":\"software\",\"~id\":5,\"name\":\"ripple\",\"lang\":\"java\"}," +
"\"~id\":4,\"name\":\"josh\",\"age\":32},{\"~label\":\"person\",\"created\":{\"~label\":\"software\",\"~id\":3,\"name\":\"lop\",\"lang\":\"java\"}," +
"\"~id\":4,\"name\":\"josh\",\"age\":32}]}"),
parser.parse(db.find("{ \"name\": \"marko\" }").next().toString()));
compareQueryTraversalSegment(g.V().has("age", P.gt(30)), db.find("{\"age\" : {\"$gt\" : 30}}"));
compareQueryTraversalSegment(g.V().has("name", "vadas").has("age", 27), db.find("{\"age\" : 27, \"name\":\"vadas\"}"));
}
示例5: addEdge
import org.apache.tinkerpop.gremlin.structure.Graph; //导入依赖的package包/类
protected static Edge addEdge(final TinkerGraph graph, final TinkerVertex outVertex, final TinkerVertex inVertex, final String label, final Object... keyValues) {
ElementHelper.validateLabel(label);
ElementHelper.legalPropertyKeyValueArray(keyValues);
Object idValue = graph.edgeIdManager.convert(ElementHelper.getIdValue(keyValues).orElse(null));
final Edge edge;
if (null != idValue) {
if (graph.edges.containsKey(idValue))
throw Graph.Exceptions.edgeWithIdAlreadyExists(idValue);
} else {
idValue = graph.edgeIdManager.getNextId(graph);
}
edge = new TinkerEdge(idValue, outVertex, label, inVertex);
ElementHelper.attachProperties(edge, keyValues);
graph.edges.put(edge.id(), edge);
TinkerHelper.addOutEdge(outVertex, label, edge);
TinkerHelper.addInEdge(inVertex, label, edge);
return edge;
}
示例6: createKeyIndex
import org.apache.tinkerpop.gremlin.structure.Graph; //导入依赖的package包/类
public void createKeyIndex(final String key) {
if (null == key)
throw Graph.Exceptions.argumentCanNotBeNull("key");
if (key.isEmpty())
throw new IllegalArgumentException("The key for the index cannot be an empty string");
if (this.indexedKeys.contains(key))
return;
this.indexedKeys.add(key);
(Vertex.class.isAssignableFrom(this.indexClass) ?
this.graph.vertices.values().<T>stream() :
this.graph.edges.values().<T>stream())
.map(e -> new Object[]{((T) e).property(key), e})
.filter(a -> ((Property) a[0]).isPresent())
.forEach(a -> this.put(key, ((Property) a[0]).value(), (T) a[1]));
}
示例7: shouldDeserializeGraphSONIntoTinkerGraphKeepingTypes
import org.apache.tinkerpop.gremlin.structure.Graph; //导入依赖的package包/类
/**
* Thorough types verification for Vertex ids, Vertex props, Edge ids, Edge props
*/
@Test
public void shouldDeserializeGraphSONIntoTinkerGraphKeepingTypes() throws IOException {
final GraphWriter writer = getWriter(defaultMapperV2d0);
final GraphReader reader = getReader(defaultMapperV2d0);
final Graph sampleGraph1 = TinkerFactory.createModern();
final Vertex v1 = sampleGraph1.addVertex(T.id, 100, "name", "kevin", "theUUID", UUID.randomUUID());
final Vertex v2 = sampleGraph1.addVertex(T.id, 101L, "name", "henri", "theUUID", UUID.randomUUID());
v1.addEdge("hello", v2, T.id, 101L,
"uuid", UUID.randomUUID());
try (final ByteArrayOutputStream out = new ByteArrayOutputStream()) {
writer.writeObject(out, sampleGraph1);
final String json = out.toString();
final TinkerGraph read = reader.readObject(new ByteArrayInputStream(json.getBytes()), TinkerGraph.class);
assertTrue(approximateGraphsCheck(sampleGraph1, read));
}
}
开发者ID:ShiftLeftSecurity,项目名称:tinkergraph-gremlin,代码行数:23,代码来源:TinkerGraphGraphSONSerializerV2d0Test.java
示例8: shouldLoseTypesWithGraphSONNoTypesForEdgeProps
import org.apache.tinkerpop.gremlin.structure.Graph; //导入依赖的package包/类
/**
* Asserts the approximateGraphsChecks function fails when expected. Edge props.
*/
@Test
public void shouldLoseTypesWithGraphSONNoTypesForEdgeProps() throws IOException {
final GraphWriter writer = getWriter(noTypesMapperV2d0);
final GraphReader reader = getReader(noTypesMapperV2d0);
final Graph sampleGraph1 = TinkerFactory.createModern();
final Vertex v1 = sampleGraph1.addVertex(T.id, 100, "name", "kevin");
v1.addEdge("hello", sampleGraph1.traversal().V().has("name", "marko").next(), T.id, 101,
"uuid", UUID.randomUUID());
try (final ByteArrayOutputStream out = new ByteArrayOutputStream()) {
writer.writeGraph(out, sampleGraph1);
final String json = out.toString();
final TinkerGraph read = TinkerGraph.open();
reader.readGraph(new ByteArrayInputStream(json.getBytes()), read);
// Should fail on deserialized edge prop.
assertFalse(approximateGraphsCheck(sampleGraph1, read));
}
}
开发者ID:ShiftLeftSecurity,项目名称:tinkergraph-gremlin,代码行数:22,代码来源:TinkerGraphGraphSONSerializerV2d0Test.java
示例9: deserializersTestsTinkerGraph
import org.apache.tinkerpop.gremlin.structure.Graph; //导入依赖的package包/类
@Test
public void deserializersTestsTinkerGraph() {
final TinkerGraph tg = TinkerGraph.open();
final Vertex v = tg.addVertex("vertexTest");
final Vertex v2 = tg.addVertex("vertexTest");
v.addEdge("knows", v2);
final GraphWriter writer = getWriter(defaultMapperV2d0);
final GraphReader reader = getReader(defaultMapperV2d0);
try (final ByteArrayOutputStream out = new ByteArrayOutputStream()) {
writer.writeObject(out, tg);
final String json = out.toString();
final Graph gRead = (Graph)reader.readObject(new ByteArrayInputStream(json.getBytes()), Object.class);
assertTrue(approximateGraphsCheck(tg, gRead));
} catch (IOException e) {
e.printStackTrace();
fail("Should not have thrown exception: " + e.getMessage());
}
}
开发者ID:ShiftLeftSecurity,项目名称:tinkergraph-gremlin,代码行数:24,代码来源:TinkerGraphGraphSONSerializerV2d0Test.java
示例10: generate
import org.apache.tinkerpop.gremlin.structure.Graph; //导入依赖的package包/类
private static void generate(final Graph graph) {
final int size = 100;
final List<Object> ids = new ArrayList<>();
final Vertex v = graph.addVertex("sin", 0.0f, "cos", 1.0f, "ii", 0f);
ids.add(v.id());
final GraphTraversalSource g = graph.traversal();
final Random rand = new Random();
for (int ii = 1; ii < size; ii++) {
final Vertex t = graph.addVertex("ii", ii, "sin", Math.sin(ii / 5.0f), "cos", Math.cos(ii / 5.0f));
final Vertex u = g.V(ids.get(rand.nextInt(ids.size()))).next();
t.addEdge("linked", u);
ids.add(u.id());
ids.add(v.id());
}
}
示例11: benchmarkStandardTraversals
import org.apache.tinkerpop.gremlin.structure.Graph; //导入依赖的package包/类
@Test
@Ignore
public void benchmarkStandardTraversals() throws Exception {
Graph graph = TinkerGraph.open();
GraphTraversalSource g = graph.traversal();
graph.io(GraphMLIo.build()).readGraph("data/grateful-dead.xml");
final List<Supplier<Traversal>> traversals = Arrays.asList(
() -> g.V().outE().inV().outE().inV().outE().inV(),
() -> g.V().out().out().out(),
() -> g.V().out().out().out().path(),
() -> g.V().repeat(out()).times(2),
() -> g.V().repeat(out()).times(3),
() -> g.V().local(out().out().values("name").fold()),
() -> g.V().out().local(out().out().values("name").fold()),
() -> g.V().out().map(v -> g.V(v.get()).out().out().values("name").toList())
);
traversals.forEach(traversal -> {
logger.info("\nTESTING: {}", traversal.get());
for (int i = 0; i < 7; i++) {
final long t = System.currentTimeMillis();
traversal.get().iterate();
System.out.print(" " + (System.currentTimeMillis() - t));
}
});
}
示例12: testPlay9
import org.apache.tinkerpop.gremlin.structure.Graph; //导入依赖的package包/类
@Test
@Ignore
public void testPlay9() throws Exception {
Graph graph = TinkerGraph.open();
graph.io(GraphMLIo.build()).readGraph("../data/grateful-dead.xml");
GraphTraversalSource g = graph.traversal().withComputer(Computer.compute().workers(4)).withStrategies(PathRetractionStrategy.instance());
GraphTraversalSource h = graph.traversal().withComputer(Computer.compute().workers(4)).withoutStrategies(PathRetractionStrategy.class);
for (final GraphTraversalSource source : Arrays.asList(g, h)) {
System.out.println(source.V().match(
__.as("a").in("sungBy").as("b"),
__.as("a").in("sungBy").as("c"),
__.as("b").out("writtenBy").as("d"),
__.as("c").out("writtenBy").as("e"),
__.as("d").has("name", "George_Harrison"),
__.as("e").has("name", "Bob_Marley")).select("a").count().profile().next());
}
}
示例13: testPlay6
import org.apache.tinkerpop.gremlin.structure.Graph; //导入依赖的package包/类
@Test
@Ignore
public void testPlay6() throws Exception {
final Graph graph = TinkerGraph.open();
final GraphTraversalSource g = graph.traversal();
for (int i = 0; i < 1000; i++) {
graph.addVertex(T.label, "person", T.id, i);
}
graph.vertices().forEachRemaining(a -> {
graph.vertices().forEachRemaining(b -> {
if (a != b) {
a.addEdge("knows", b);
}
});
});
graph.vertices(50).next().addEdge("uncle", graph.vertices(70).next());
logger.info(TimeUtil.clockWithResult(500, () -> g.V().match(as("a").out("knows").as("b"), as("a").out("uncle").as("b")).toList()).toString());
}
示例14: shouldReturnDetachedElements
import org.apache.tinkerpop.gremlin.structure.Graph; //导入依赖的package包/类
@Test
public void shouldReturnDetachedElements() {
final Graph graph = TinkerFactory.createModern();
final GraphTraversalSource g = graph.traversal().withComputer().withStrategies(HaltedTraverserStrategy.create(new MapConfiguration(new HashMap<String, Object>() {{
put(HaltedTraverserStrategy.HALTED_TRAVERSER_FACTORY, DetachedFactory.class.getCanonicalName());
}})));
g.V().out().forEachRemaining(vertex -> assertEquals(DetachedVertex.class, vertex.getClass()));
g.V().out().properties("name").forEachRemaining(vertexProperty -> assertEquals(DetachedVertexProperty.class, vertexProperty.getClass()));
g.V().out().values("name").forEachRemaining(value -> assertEquals(String.class, value.getClass()));
g.V().out().outE().forEachRemaining(edge -> assertEquals(DetachedEdge.class, edge.getClass()));
g.V().out().outE().properties("weight").forEachRemaining(property -> assertEquals(DetachedProperty.class, property.getClass()));
g.V().out().outE().values("weight").forEachRemaining(value -> assertEquals(Double.class, value.getClass()));
g.V().out().out().forEachRemaining(vertex -> assertEquals(DetachedVertex.class, vertex.getClass()));
g.V().out().out().path().forEachRemaining(path -> assertEquals(DetachedPath.class, path.getClass()));
g.V().out().pageRank().forEachRemaining(vertex -> assertEquals(DetachedVertex.class, vertex.getClass()));
g.V().out().pageRank().out().forEachRemaining(vertex -> assertEquals(DetachedVertex.class, vertex.getClass()));
// should handle nested collections
g.V().out().fold().next().forEach(vertex -> assertEquals(DetachedVertex.class, vertex.getClass()));
}
示例15: clear
import org.apache.tinkerpop.gremlin.structure.Graph; //导入依赖的package包/类
@Override
public void clear(Graph graph, Configuration configuration) throws Exception {
if (graph != null) {
if (graph.tx().isOpen()) graph.tx().close();
graph.tx().onReadWrite(READ_WRITE_BEHAVIOR.MANUAL);
graph.tx().open();
System.out.println("Clearing graph");
graph.vertices().forEachRemaining(v -> v.remove());
graph.tx().commit();
System.out.println("Shutting down graph " + graph);
graph.close();
}
// Thread.sleep(10);
// File directory = new File(configuration.getString(BitsyGraph.DB_PATH_KEY));
// wipeOut(directory);
// Thread.sleep(10);
}