allow client users to pass bindings as a second arg
Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/b711b5e6 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/b711b5e6 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/b711b5e6 Branch: refs/heads/TINKERPOP-1599 Commit: b711b5e667c53328aed1c5fe9baad51fde5dc0b1 Parents: e3067e9 Author: davebshow <davebs...@gmail.com> Authored: Wed Feb 15 17:57:32 2017 -0500 Committer: davebshow <davebs...@gmail.com> Committed: Fri Feb 17 11:36:57 2017 -0500 ---------------------------------------------------------------------- .../src/main/jython/gremlin_python/driver/client.py | 8 +++++--- gremlin-python/src/main/jython/tests/driver/test_client.py | 4 ++++ 2 files changed, 9 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/b711b5e6/gremlin-python/src/main/jython/gremlin_python/driver/client.py ---------------------------------------------------------------------- diff --git a/gremlin-python/src/main/jython/gremlin_python/driver/client.py b/gremlin-python/src/main/jython/gremlin_python/driver/client.py index 0314a44..c7c7037 100644 --- a/gremlin-python/src/main/jython/gremlin_python/driver/client.py +++ b/gremlin-python/src/main/jython/gremlin_python/driver/client.py @@ -103,10 +103,10 @@ class Client: self._url, self._traversal_source, protocol, self._transport_factory, self._executor, self._pool) - def submit(self, message): - return self.submitAsync(message).result() + def submit(self, message, bindings=None): + return self.submitAsync(message, bindings=bindings).result() - def submitAsync(self, message): + def submitAsync(self, message, bindings=None): if isinstance(message, traversal.Bytecode): message = request.RequestMessage( processor='traversal', op='bytecode', @@ -117,5 +117,7 @@ class Client: processor='', op='eval', args={'gremlin': message, 'aliases': {'g': self._traversal_source}}) + if bindings: + message.args.update(bindings) conn = self._pool.get(True) return conn.write(message) http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/b711b5e6/gremlin-python/src/main/jython/tests/driver/test_client.py ---------------------------------------------------------------------- diff --git a/gremlin-python/src/main/jython/tests/driver/test_client.py b/gremlin-python/src/main/jython/tests/driver/test_client.py index 02582a1..416caab 100644 --- a/gremlin-python/src/main/jython/tests/driver/test_client.py +++ b/gremlin-python/src/main/jython/tests/driver/test_client.py @@ -40,6 +40,10 @@ def test_client_simple_eval(client): assert client.submit('1 + 1').all().result()[0] == 2 +def test_client_simple_eval_bindings(client): + assert client.submit('x + x', {'x': 2}).all().result()[0] == 4 + + def test_client_eval_traversal(client): assert len(client.submit('g.V()').all().result()) == 6