agiledevpro
agiledevpro

Reputation: 133

How to add a new property to an existing vertex in gremlin?

I have trouble finding a way of adding a new property to an existing vertex using gremlin. ex property to add: the property "name" with value "anna".

First I try to find the vertex which I want to add the property to. I do this by: g.v(id), where id is the id of the vertex I'm looking for.

Then I've tried adding the property to the vertex by doing: g.v(id).property("name","anna"), but this does not work and gives me an error saying:

"message":"","error":"javax.script.ScriptException: groovy.lang.MissingMethodException: No
signature of method: groovy.lang.MissingMethodException.property() is applicable for argument types: (java.lang.String, java.lang.String) values:

It says here http://www.tinkerpop.com/docs/3.0.0.M1/#giraph-gremlin under "Mutation the graph" that this is the way to add a new property to an existing vertex.

Any suggestions?

Upvotes: 3

Views: 3837

Answers (1)

Faber
Faber

Reputation: 1562

You can achieve that with sideEffect:

g = TinkerGraphFactory.createTinkerGraph()
g.V[0].map
==>{name=lop, lang=java}
g.V[0].sideEffect{it.foo = 'bar'}
g.V[0].map
==>{name=lop, foo=bar, lang=java}

I guess in a script you would need to add an .iterate() at the end of the modification statement.

Upvotes: 1

Related Questions