rexpro-client

0.2.0 • Public • Published

rexpro-client

A simple Rexster client for node.js implementing the binary protocol RexPro.

For more information about the RexPro protocol visit Rexster's wiki.

The client is implemented using q, so every method returns a promise.

Installation

npm install rexpro-client

Examples

Ad-hoc query

var RexProClient = require("rexpro-client");
 
var client = RexProClient({
    host: "localhost",      // default
    port: 8184,             // default
    graph: "tinkerpop",
    serializer: "msgpack"   // Defining a serializer is optional,
});                         // 'json' is the default.
 
var query = {
    script: "g.V.has('name', name).out()",
    bindings: {
        name: "titan"
    }
};
 
client.execute(query)
.then(function(data) {
    console.log(data);
})
.catch(function(err) {
    throw err;
})
.done();
 

In session query

var session;
 
client.openSession()
.then(function(uuid) {
    // Use the UUID to execute a query
    // within the context of this session.
    session = uuid;
    query.session = uuid;
    return client.execute(query);
})
.then(function(data) {
    console.log(data);
    return client.closeSession({
        'session': session
    });
})
.catch(function(err) {
    throw err;
})
.done();
 

API

For a more detailed explanation about the parameters see the Rexster's wiki.

openSession(options) Opens a session and returns the UUID for the session.

  • graph - The name of the graph to open a session on. Optional.
  • graphObjName - The variable name of the graph object. Optional.
  • username - Used for authentication. Optional.
  • password - Used for authentication. Optional.

closeSession(options) Closes a session and returns true if it was successful.

  • session - The UUID of the session you want to close.
  • username - Used for authentication. Optional.
  • password - Used for authentication. Optional.

execute(options) Sends a script for execution to the server.

  • session - The session's UUID. Optional.
  • serializer - The type of serialization that this request will use. Optional
  • graph - The name of the graph to open a session on. Optional.
  • graphObjName - The variable name of the graph object. Optional.
  • inSession - Indicates this request should be executed in the supplied session. Defaults to false.
  • isolate - If true bindings from previous messages are not available. Defaults to true.
  • transaction - Execute the script within a transaction. Defaults to true.
  • console - If true a console response will be returned. Defaults to false.
  • script - The script to be executed. Optional.
  • bindings - An object with the bindings tot he gremlin engine. Optional.

License

MIT

Dependencies (8)

Dev Dependencies (5)

Package Sidebar

Install

npm i rexpro-client

Weekly Downloads

1

Version

0.2.0

License

MIT

Last publish

Collaborators

  • mujx_x