Titan:has() 不起作用

Titan: has() doesn't work

我一直在尝试使用此查询来查询我的图表

graph()
   .traversal()
   .V()
   .has(Tokens.FIRSTNAME)
   .filter(vt ->
        vt.get().property(Tokens.FIRSTNAME).equals("Hank")
   );

而且总是return没有结果。当我调试代码时,我注意到比较发生在 AbstractElement#equals() 并且它 returns false 因为传递的值(字符串)不是 VertexEdgeVertexProperty

另一种做同样事情但永远行不通的方法是

graph()
    .traversal()
    .V()
    .has(Tokens.FIRSTNAME, "Hank")

我正在使用 titan 0.9.0-M2

我是不是做错了什么?

查询应该是:

graph()
   .traversal()
   .V()
   .has(Tokens.FIRSTNAME)
   .filter(vt ->
        vt.get().value(Tokens.FIRSTNAME).equals("Hank")
   );

甚至更好:

graph()
   .traversal()
   .V()
   .has(Tokens.FIRSTNAME, "Hank")