OrientDB получает метку из вершины и получает связь из вершины
У меня есть два отдельных вопроса:
Как я могу получить метку объекта вершины. Я попытался vertex.getId() .getClass() и аналогичные, но нет ничего даже близко к метке, которую я установил для вершины.
и как я могу получить отношения, которые соединяют любые вершины набора вершин.
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());
В настоящее время я просматривал все начальные вершины и смотрю, соответствует ли отношение, оставляющее их, одной из конечных вершин. Нет ничего более приятного?
1 ответ
Вы могли бы использовать
vertex.getProperty("@class");
чтобы получить название класса вашей вершины.