0.02
No commit activity in last 3 years
No release in over 3 years
Simple Gremlin server client for the WebSocketChannelizer
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.13
~> 0.8
~> 12.0
~> 3.5
~> 0.49

Runtime

 Project Readme

Ruby Gremlin Client

Build Status Gem Version Coverage Status

=================================== WARNING ===================================
|| If you are using version 0.1.2 or prior please update! Your results won't ||
|| be consistent while you don't do so!                                      ||
=================================== WARNING ===================================

Details on the above at #3

Gremlin client in ruby for the WebSocketChannelizer.

This client is not thread safe by itself! If you want to make it safer for your app, please make sure to use something like ConnectionPool gem.

Usage:

gem instal gremlin_client
conn = GremlinClient::Connection.new(host: 'localhost', port:123)
resp = conn.send_query("g.V().has('myVar', myValue)", {myValue: 'this_is_processed_by_gremlin_server'})

Alternativelly, you can use groovy files instead:

resp = conn.file_send("query.groovy", {var1: 12})
g.V().has("something", var1)

You can even specify the folder where to load those files in the constructor:

conn = GremlinClient::Connection.new(gremlin_script_path:  'scripts/gremlin')

TODO:

The following things are priority in our list of things to do, but we haven't had time to implement yet:

  • rspec
  • SSL support
  • authentication

The following is very nice to have, but since we are testing against Titan 1.0.0, which has a pretty old version of Gremlin, we still rely on groovy to do more complex parsing. But as soon as JanusGraph is release it would be nice to start working on:

  • ruby-side syntax like g.V.hasLabel("omg")..
  • compiled Gremlin query generation