Hi Kan,
FYI - we added parametized Gremlin queries in our implementation and have seen
a nice memory heap improvement on the Java side as a result.
That is ... instead of:
g.v(123).outE[[label:'FOO']]
we send:
{
query: 'g.v(p0).outE[[label:p1]]',
params: {
p0: 123,
p1: 'FOO'
}
}
This allows the query to be cached by neo4j and then just called with different
parameters later.
-- Tatham
-----Original Message-----
From: [email protected] [mailto:[email protected]] On
Behalf Of KanTube
Sent: Thursday, 20 October 2011 9:36 AM
To: [email protected]
Subject: [Neo4j] Neo4jRestNet Update
fwiw...
I updated my .Net wrapper
https://github.com/SepiaGroup/Neo4jRestNet/
you can now use LINQ on the flilter and sort commands for example
Node MyNode = Node.GetNode(123);
GremlinScript script = new GremlinScript(MyNode)
.Out("Like")
.Filter(it => it.GetProperty("MyProp").ToLowerCase() == "TestValue" ||
it.GetProperty("AnotherProp").Contains("SomeValue"))
IEnumerable<Node> ReturnNodes = Gremlin.Post<Node>(script);
You can also return a DataTable
GremlinScript script = new GremlinScript();
script.NewTable("t")
.NodeIndexLookup(new Dictionary<string, object>() { { "FirstName" ,
"Jack"
}, { "LastName", "Shaw" } })
.Filter(it => it.GetProperty("UID") == "jshaw")
.As("UserNode")
.OutE("Like")
.As("LikeRel")
.InV()
.As("FriendNode")
.Table("t", "UserNode", "LikeRel", "FriendNode")
.Append("{{it}}{{it.getProperty('{0}')}}{{it.getProperty('{1}')}} >>
-1; t","Date", "FirstName");
DataTable tbl = Gremlin.GetTable(script);
The above table example will submit the following Gremlin script to Neo4j:
t = new Table();
g.V[['FirstName':'Jack','LastName':'Shaw']]
.filter{it.getProperty('UID') == 'jshaw'}
.as('UserNode')
.outE('Likes')
.as('LikeRel')
.inV()
.as('FriendNode')
.table(t,
['UserNode','LikeRel','FriendNode']){it}{it.getProperty('Date')}{it.getProperty('FirstName')}
>> -1; t");
And the returned table will have column names of "UserNode", "LikeRel",
"FriendNode" with typed values of Node, DateTime, string (assuming the
properties are stored with the correct types)
--
View this message in context:
http://neo4j-community-discussions.438527.n3.nabble.com/Neo4jRestNet-Update-tp3436032p3436032.html
Sent from the Neo4j Community Discussions mailing list archive at Nabble.com.
_______________________________________________
Neo4j mailing list
[email protected]
https://lists.neo4j.org/mailman/listinfo/user
_______________________________________________
Neo4j mailing list
[email protected]
https://lists.neo4j.org/mailman/listinfo/user