有没有办法将遍历与具体图解耦并将其应用于多个图?

问题描述

我想对遍历步骤进行抽象描述,我可以自由地将其应用于多个图,但遍历实例似乎是有状态的,并且不可重用。

我正在寻找类似的东西:

GraphTraversal findMarko = __.has("name","marko"); //Does Marko exist?
GraphTraversalSource g1 = ...;
GraphTraversalSource g2 = ...;
g1.V().where(findMarko).hasNext(); //Does Marko exist in g1?
g2.V().where(findMarko).hasNext(); //Does Marko exist in g2?

但这会导致:

java.lang.IllegalStateException: 遍历策略完成,不能再调制遍历

这以某种方式可行吗?它甚至有意义吗?

我需要这个的原因是我正在使用我以完全相同的方式查询的数千个小图。我将抽象规则从一些 DSL 转换为 Gremlin,并希望跳过为每个图重做这一步。拥有一个可重用(或可克隆)的遍历实例可以解决这个问题。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)