У меня есть обход, в котором я создаю две вершины и соединяю их таким ребром:
DseCluster dseCluster = null;
dseCluster = DseCluster.builder()
.addContactPoint(DbC.dseHost)
.build();
DseSession dseSession = dseCluster.connect();
GraphTraversalSource g = DseGraph.traversal(dseSession, new GraphOptions().setGraphName(DbC.graphName));
GraphTraversal traversal = g
.addV("aLabel").as("a")
.addV("aLabel").as("b")
.addE("edgeLabel").from("a").to("b")
GraphStatement graphStatement = DseGraph.statementFromTraversal(traversal);
GraphResultSet grs = dseSession.executeGraph(graphStatement.setGraphName(DbC.graphName));
//grs contains an edge only
Как я могу сделать так, чтобы набор результатов содержал только определенную вершину, например, исходную вершину "a"?
Я знаю, что мог бы сделать вместо этого:
GraphTraversal traversal = g
.addV("aLabel").as("a")
.addV("aLabel").as("b")
.addE("edgeLabel").from("a").to("b").outV() // this returns a
но я ищу такое решение, как
GraphTraversal traversal = g
.addV("aLabel").as("a")
.addV("aLabel").as("b")
.addE("edgeLabel").from("a").to("b").emit("a") // this doesn't work
Спасибо!