gremlin-secure
Version:
Private version of the gremlin websocket client module: https://github.com/jbmusso/gremlin-javascript. This private version supports SSL and SASL authentication, and is undergoing a PR with the main module. This package is created as a private, temporary
41 lines (30 loc) • 3.2 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _highland = require('highland');
var _highland2 = _interopRequireDefault(_highland);
var _lodash = require('lodash');
var _lodash2 = _interopRequireDefault(_lodash);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function defaultExecuteHandler(messageStream, callback) {
var errored = false;
var objectMode = false;
(0, _highland2.default)(messageStream).stopOnError(function (err) {
// TODO: this does not seem to halt the stream properly, and make
// the callback being fired twice. We need to get rid of the ugly
// errored variable check.
errored = true;
callback(err);
}).map(function (_ref) {
var data = _ref.result.data;
objectMode = !_lodash2.default.isArray(data);
return data;
}).sequence().toArray(function (results) {
if (!errored) {
callback(null, objectMode ? results[0] : results);
}
});
}
exports.default = defaultExecuteHandler;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9leGVjdXRlSGFuZGxlci5qcyJdLCJuYW1lcyI6WyJkZWZhdWx0RXhlY3V0ZUhhbmRsZXIiLCJtZXNzYWdlU3RyZWFtIiwiY2FsbGJhY2siLCJlcnJvcmVkIiwib2JqZWN0TW9kZSIsInN0b3BPbkVycm9yIiwiZXJyIiwibWFwIiwiZGF0YSIsInJlc3VsdCIsImlzQXJyYXkiLCJzZXF1ZW5jZSIsInRvQXJyYXkiLCJyZXN1bHRzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTs7OztBQUNBOzs7Ozs7QUFHQSxTQUFTQSxxQkFBVCxDQUErQkMsYUFBL0IsRUFBOENDLFFBQTlDLEVBQXdEO0FBQ3RELE1BQUlDLFVBQVUsS0FBZDtBQUNBLE1BQUlDLGFBQWEsS0FBakI7O0FBRUEsMEJBQVNILGFBQVQsRUFDR0ksV0FESCxDQUNlLFVBQUNDLEdBQUQsRUFBUztBQUNwQjtBQUNBO0FBQ0E7QUFDQUgsY0FBVSxJQUFWO0FBQ0FELGFBQVNJLEdBQVQ7QUFDRCxHQVBILEVBUUdDLEdBUkgsQ0FRTyxnQkFBMEI7QUFBQSxRQUFiQyxJQUFhLFFBQXZCQyxNQUF1QixDQUFiRCxJQUFhOztBQUM3QkosaUJBQWEsQ0FBQyxpQkFBRU0sT0FBRixDQUFVRixJQUFWLENBQWQ7O0FBRUEsV0FBT0EsSUFBUDtBQUNELEdBWkgsRUFhR0csUUFiSCxHQWNHQyxPQWRILENBY1csVUFBQ0MsT0FBRCxFQUFhO0FBQ3BCLFFBQUksQ0FBQ1YsT0FBTCxFQUFjO0FBQ1pELGVBQVMsSUFBVCxFQUFlRSxhQUFhUyxRQUFRLENBQVIsQ0FBYixHQUEwQkEsT0FBekM7QUFDRDtBQUNGLEdBbEJIO0FBbUJEOztrQkFFY2IscUIiLCJmaWxlIjoiZXhlY3V0ZUhhbmRsZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgaGlnaGxhbmQgZnJvbSAnaGlnaGxhbmQnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcblxuXG5mdW5jdGlvbiBkZWZhdWx0RXhlY3V0ZUhhbmRsZXIobWVzc2FnZVN0cmVhbSwgY2FsbGJhY2spIHtcbiAgbGV0IGVycm9yZWQgPSBmYWxzZTtcbiAgbGV0IG9iamVjdE1vZGUgPSBmYWxzZTtcblxuICBoaWdobGFuZChtZXNzYWdlU3RyZWFtKVxuICAgIC5zdG9wT25FcnJvcigoZXJyKSA9PiB7XG4gICAgICAvLyBUT0RPOiB0aGlzIGRvZXMgbm90IHNlZW0gdG8gaGFsdCB0aGUgc3RyZWFtIHByb3Blcmx5LCBhbmQgbWFrZVxuICAgICAgLy8gdGhlIGNhbGxiYWNrIGJlaW5nIGZpcmVkIHR3aWNlLiBXZSBuZWVkIHRvIGdldCByaWQgb2YgdGhlIHVnbHlcbiAgICAgIC8vIGVycm9yZWQgdmFyaWFibGUgY2hlY2suXG4gICAgICBlcnJvcmVkID0gdHJ1ZTtcbiAgICAgIGNhbGxiYWNrKGVycik7XG4gICAgfSlcbiAgICAubWFwKCh7IHJlc3VsdDoge8KgZGF0YSB9IH0pID0+IHtcbiAgICAgIG9iamVjdE1vZGUgPSAhXy5pc0FycmF5KGRhdGEpO1xuXG4gICAgICByZXR1cm4gZGF0YTtcbiAgICB9KVxuICAgIC5zZXF1ZW5jZSgpXG4gICAgLnRvQXJyYXkoKHJlc3VsdHMpID0+IHtcbiAgICAgIGlmICghZXJyb3JlZCkge1xuICAgICAgICBjYWxsYmFjayhudWxsLCBvYmplY3RNb2RlID8gcmVzdWx0c1swXSA6IHJlc3VsdHMpO1xuICAgICAgfVxuICAgIH0pO1xufVxuXG5leHBvcnQgZGVmYXVsdCBkZWZhdWx0RXhlY3V0ZUhhbmRsZXI7XG4iXX0=