У меня есть GraphTraversals, которые выглядят так (attrGroup:Могу ли я как-то повторно использовать Gremlin GraphTraversals при назначении переменной?
GraphTraversal<Vertex,Edge> attrGroupTraversal = some code generates it;
List<Vertex> attributeVs = attrGroupTraversal.inV().out(EdgeLabels.ContainsAttribute).toList();
List<Vertex> sourceVs = attrGroupTraversal.inV().out(EdgeLabels.ContainsSource).toList();
List<Vertex> targetVs = attrGroupTraversal.out(EdgeLabels.ContainsTarget).toList();
Есть ли способ повторного использования attrGroupTraversal поэтому не нужно повторно создать код его в первую очередь
Я? получение:
java.lang.IllegalStateException: стратегии обхода являются полными и обход не может быть больше не модулируются
at org.apache.tinkerpop.gremlin.process.traversal.Traversal $ Exceptions.traversalIsLocked (Traversal.java:245) at org.apache.tinkerpop.gremlin.process.traversal.util.DefaultTraversal.addStep (DefaultTraversal.java : 274) at org.apache.tinkerpop.gremlin.process.traversal.Traversal $ Admin.addStep (Traversal.java:301) at org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal $ Admin.addStep (GraphTraversal.java:170) на org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal.inV (GraphTraversal.java:384)
Методы - это полезные инструменты, чтобы избежать «копирования и вставки» кода. – user2864740
Вы подразумеваете, что я не думал о создании метода для нового обхода? : P Что, если я скажу вам, что эта переменная передается из другого кода, поэтому я не могу на самом деле сделать метод для нее, так как ее фактическая форма неизвестна заранее. Изменен код, чтобы отразить это. –