0

I have two separate questions:

How can I get the label of a vertex object. I tried vertex.getId() .getClass() and similar but nothing is even close to the label I set to the vertex.

and, how can I get a relationship which connects any vertices of a set of vertices.

Iterable<Vertex> startNodes = getVertexList(relationshipStorage.getStartNode(), graph);
                Iterable<Vertex> endNodes = getVertexList(relationshipStorage.getEndNode(), graph);

                List<Edge> list = StreamSupport.stream(startNodes.spliterator(), false)
                        .flatMap(vertex1 -> StreamSupport.stream(vertex1.getEdges(Direction.OUT, relationshipId).spliterator(), false))
                        .filter(edge -> StreamSupport.stream(endNodes.spliterator(), false).anyMatch(vertex -> edge.getVertex(Direction.OUT).equals(vertex)))
                        .collect(Collectors.toList());

I am currently streaming through all the start vertices and looking if a relationship leaving them matches one of the end vertices. Isn't there nothing more nicer?

raycons
  • 735
  • 12
  • 26

1 Answers1

1

You could use

vertex.getProperty("@class");

to get the name of the class of your vertex.

Alessandro Rota
  • 3,560
  • 1
  • 8
  • 10