Я знаю, что мне не хватает чего-то очевидного здесь. Я пытаюсь извлечь значения из TitanDB с помощью Gremlin, чтобы сравнить их в Groovy.
graph = TinkerFactory.createModern()
g = graph.traversal(standard())
markoCount = g.V().has('name','marko').outE('knows').count()
lopCount = g.V().has('name','lop').outE('knows').count()
if(markoCount > lopCount){
// Do something
}
Но, по-видимому, то, что я на самом деле (неправильно) здесь делаю, - это сравнение шагов обхода, которые, очевидно, не сработают:
Невозможно сравнить org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.DefaultGraphTraversal со значением '[TinkerGraphStep(vertex,[name.eq(marko)]), VertexStep(OUT,[knows],edge), CountGlobalStep] ' и org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.DefaultGraphTraversal со значением '[TinkerGraphStep(vertex,[name.eq(lop)]), VertexStep(OUT,[knows],edge), CountGlobalStep] '
У меня такая же проблема с извлечением значений из свойств для использования в Groovy. Я не нашел ничего в документах, указывающих, как установите необработанные значения, подобные этому.
Что нужно для возврата фактических значений из Gremlin, которые я могу использовать позже в своем коде Groovy?
.path()
в конце.count()
, чтобы получить список счетчиков для каждого пути? - person tim_yates   schedule 22.04.2016next()
, чтобы получить фактическое значение. Кажется, это работает. - person Fook   schedule 22.04.2016