gremlin 3.7.1 → 3.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/.eslintrc.js +3 -4
  2. package/.nvmrc +1 -0
  3. package/LICENSE +9 -1
  4. package/NOTICE +1 -1
  5. package/README.md +1 -1
  6. package/doc/AnonymousTraversalSource.html +2 -2
  7. package/doc/Authenticator.html +2 -2
  8. package/doc/Bytecode.html +2 -2
  9. package/doc/CardinalityValue.html +2 -2
  10. package/doc/Client.html +9 -108
  11. package/doc/Connection.html +9 -196
  12. package/doc/DataType.js.html +149 -0
  13. package/doc/DriverRemoteConnection.html +12 -111
  14. package/doc/EdgeLabelVerificationStrategy.html +2 -2
  15. package/doc/Graph.html +2 -2
  16. package/doc/GraphBinaryReader.js.html +132 -0
  17. package/doc/GraphBinaryWriter.js.html +135 -0
  18. package/doc/GraphSON2Reader.html +4 -4
  19. package/doc/GraphSON2Writer.html +5 -5
  20. package/doc/GraphSON3Reader.html +3 -3
  21. package/doc/GraphSON3Writer.html +3 -3
  22. package/doc/GraphTraversal.html +2 -2
  23. package/doc/GraphTraversalSource.html +2 -2
  24. package/doc/HaltedTraverserStrategy.html +2 -2
  25. package/doc/MatchAlgorithmStrategy.html +2 -2
  26. package/doc/P.html +2 -2
  27. package/doc/PartitionStrategy.html +2 -2
  28. package/doc/Path.html +2 -2
  29. package/doc/PlainTextSaslAuthenticator.html +2 -2
  30. package/doc/ProductiveByStrategy.html +2 -2
  31. package/doc/RemoteConnection.html +2 -2
  32. package/doc/RemoteStrategy.html +2 -2
  33. package/doc/RemoteTraversal.html +2 -2
  34. package/doc/ReservedKeysVerificationStrategy.html +2 -2
  35. package/doc/ResponseError.html +2 -2
  36. package/doc/ResultSet.html +7 -95
  37. package/doc/SaslAuthenticator.html +2 -2
  38. package/doc/SaslMechanismBase.html +2 -2
  39. package/doc/SaslMechanismPlain.html +7 -7
  40. package/doc/SeedStrategy.html +2 -2
  41. package/doc/SubgraphStrategy.html +2 -2
  42. package/doc/TextP.html +2 -2
  43. package/doc/Transaction.html +5 -5
  44. package/doc/Translator.html +2 -2
  45. package/doc/TraversalStrategies.html +2 -2
  46. package/doc/TraversalStrategy.html +2 -2
  47. package/doc/TypeSerializer.html +2 -2
  48. package/doc/driver_auth_authenticator.js.html +2 -2
  49. package/doc/driver_auth_mechanisms_sasl-mechanism-base.js.html +2 -2
  50. package/doc/driver_auth_mechanisms_sasl-mechanism-plain.js.html +3 -2
  51. package/doc/driver_auth_plain-text-sasl-authenticator.js.html +2 -2
  52. package/doc/driver_auth_sasl-authenticator.js.html +2 -2
  53. package/doc/driver_client.js.html +2 -5
  54. package/doc/driver_connection.js.html +82 -118
  55. package/doc/driver_driver-remote-connection.js.html +2 -5
  56. package/doc/driver_remote-connection.js.html +2 -2
  57. package/doc/driver_response-error.js.html +2 -2
  58. package/doc/driver_result-set.js.html +2 -11
  59. package/doc/global.html +158 -3
  60. package/doc/index.html +3 -3
  61. package/doc/module.exports.html +4 -4
  62. package/doc/process_anonymous-traversal.js.html +2 -2
  63. package/doc/process_bytecode.js.html +2 -2
  64. package/doc/process_graph-traversal.js.html +2 -2
  65. package/doc/process_transaction.js.html +12 -4
  66. package/doc/process_translator.js.html +2 -2
  67. package/doc/process_traversal-strategy.js.html +2 -2
  68. package/doc/process_traversal.js.html +2 -2
  69. package/doc/structure_graph.js.html +2 -2
  70. package/doc/structure_io_binary_internals_DataType.js.html +2 -2
  71. package/doc/structure_io_binary_internals_GraphBinaryReader.js.html +4 -2
  72. package/doc/structure_io_binary_internals_GraphBinaryWriter.js.html +4 -2
  73. package/doc/structure_io_graph-serializer.js.html +3 -2
  74. package/doc/structure_io_type-serializers.js.html +2 -2
  75. package/doc/utils.js.html +181 -0
  76. package/lib/driver/auth/mechanisms/sasl-mechanism-plain.js +1 -0
  77. package/lib/driver/client.js +0 -3
  78. package/lib/driver/connection.js +80 -116
  79. package/lib/driver/driver-remote-connection.js +0 -3
  80. package/lib/driver/result-set.js +0 -9
  81. package/lib/process/transaction.js +10 -2
  82. package/lib/structure/io/binary/internals/AnySerializer.js +2 -0
  83. package/lib/structure/io/binary/internals/ArraySerializer.js +2 -0
  84. package/lib/structure/io/binary/internals/BigIntegerSerializer.js +2 -0
  85. package/lib/structure/io/binary/internals/BooleanSerializer.js +2 -0
  86. package/lib/structure/io/binary/internals/BulkSetSerializer.js +2 -0
  87. package/lib/structure/io/binary/internals/ByteBufferSerializer.js +2 -0
  88. package/lib/structure/io/binary/internals/ByteSerializer.js +2 -0
  89. package/lib/structure/io/binary/internals/BytecodeSerializer.js +1 -0
  90. package/lib/structure/io/binary/internals/DateSerializer.js +2 -0
  91. package/lib/structure/io/binary/internals/DoubleSerializer.js +2 -0
  92. package/lib/structure/io/binary/internals/EdgeSerializer.js +1 -0
  93. package/lib/structure/io/binary/internals/EnumSerializer.js +1 -0
  94. package/lib/structure/io/binary/internals/FloatSerializer.js +2 -0
  95. package/lib/structure/io/binary/internals/GraphBinaryReader.js +2 -0
  96. package/lib/structure/io/binary/internals/GraphBinaryWriter.js +2 -0
  97. package/lib/structure/io/binary/internals/IntSerializer.js +2 -0
  98. package/lib/structure/io/binary/internals/LambdaSerializer.js +1 -0
  99. package/lib/structure/io/binary/internals/LongSerializer.js +2 -0
  100. package/lib/structure/io/binary/internals/LongSerializerNg.js +2 -0
  101. package/lib/structure/io/binary/internals/MapSerializer.js +2 -0
  102. package/lib/structure/io/binary/internals/PSerializer.js +1 -0
  103. package/lib/structure/io/binary/internals/PathSerializer.js +1 -0
  104. package/lib/structure/io/binary/internals/PropertySerializer.js +1 -0
  105. package/lib/structure/io/binary/internals/ShortSerializer.js +2 -0
  106. package/lib/structure/io/binary/internals/StringSerializer.js +2 -0
  107. package/lib/structure/io/binary/internals/TextPSerializer.js +1 -0
  108. package/lib/structure/io/binary/internals/TraversalStrategySerializer.js +2 -0
  109. package/lib/structure/io/binary/internals/TraverserSerializer.js +1 -0
  110. package/lib/structure/io/binary/internals/UnspecifiedNullSerializer.js +2 -0
  111. package/lib/structure/io/binary/internals/UuidSerializer.js +2 -0
  112. package/lib/structure/io/binary/internals/VertexPropertySerializer.js +1 -0
  113. package/lib/structure/io/binary/internals/VertexSerializer.js +1 -0
  114. package/lib/structure/io/binary/internals/utils.js +2 -0
  115. package/lib/structure/io/graph-serializer.js +1 -0
  116. package/lib/utils.js +40 -29
  117. package/licenses/chai +21 -0
  118. package/package.json +7 -3
@@ -91,13 +91,13 @@ module.exports = PlainTextSaslAuthenticator;
91
91
  </div>
92
92
 
93
93
  <nav>
94
- <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#statics">statics</a></li></ul>
94
+ <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#statics">statics</a></li><li><a href="global.html#toArrayBuffer">toArrayBuffer</a></li></ul>
95
95
  </nav>
96
96
 
97
97
  <br class="clear">
98
98
 
99
99
  <footer>
100
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Dec 04 2023 12:21:39 GMT-0800 (Pacific Standard Time)
100
+ Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Apr 15 2024 11:06:40 GMT-0700 (Pacific Daylight Time)
101
101
  </footer>
102
102
 
103
103
  <script> prettyPrint(); </script>
@@ -85,13 +85,13 @@ module.exports = SaslAuthenticator;
85
85
  </div>
86
86
 
87
87
  <nav>
88
- <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#statics">statics</a></li></ul>
88
+ <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#statics">statics</a></li><li><a href="global.html#toArrayBuffer">toArrayBuffer</a></li></ul>
89
89
  </nav>
90
90
 
91
91
  <br class="clear">
92
92
 
93
93
  <footer>
94
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Dec 04 2023 12:21:39 GMT-0800 (Pacific Standard Time)
94
+ Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Apr 15 2024 11:06:40 GMT-0700 (Pacific Daylight Time)
95
95
  </footer>
96
96
 
97
97
  <script> prettyPrint(); </script>
@@ -71,9 +71,6 @@ class Client {
71
71
  * @param {Boolean} [options.enableUserAgentOnConnect] Determines if a user agent will be sent during connection handshake. Defaults to: true
72
72
  * @param {String} [options.processor] The name of the opProcessor to use, leave it undefined or set 'session' when session mode.
73
73
  * @param {String} [options.session] The sessionId of Client in session mode. Defaults to null means session-less Client.
74
- * @param {Boolean} [options.pingEnabled] Setup ping interval. Defaults to: true.
75
- * @param {Number} [options.pingInterval] Ping request interval in ms if ping enabled. Defaults to: 60000.
76
- * @param {Number} [options.pongTimeout] Timeout of pong response in ms after sending a ping. Defaults to: 30000.
77
74
  * @param {http.Agent} [options.agent] The http.Agent implementation to use.
78
75
  * @constructor
79
76
  */
@@ -237,13 +234,13 @@ module.exports = Client;
237
234
  </div>
238
235
 
239
236
  <nav>
240
- <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#statics">statics</a></li></ul>
237
+ <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#statics">statics</a></li><li><a href="global.html#toArrayBuffer">toArrayBuffer</a></li></ul>
241
238
  </nav>
242
239
 
243
240
  <br class="clear">
244
241
 
245
242
  <footer>
246
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Dec 04 2023 12:21:39 GMT-0800 (Pacific Standard Time)
243
+ Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Apr 15 2024 11:06:40 GMT-0700 (Pacific Daylight Time)
247
244
  </footer>
248
245
 
249
246
  <script> prettyPrint(); </script>
@@ -50,11 +50,11 @@
50
50
  */
51
51
  'use strict';
52
52
 
53
- const EventEmitter = require('events');
54
- const Stream = require('stream');
55
- const WebSocket = require('ws');
56
- const util = require('util');
53
+ const { Buffer } = require('buffer');
54
+ const EventEmitter = require('eventemitter3');
55
+ const Stream = require('readable-stream');
57
56
  const utils = require('../utils');
57
+ const { DeferredPromise } = utils;
58
58
  const serializer = require('../structure/io/graph-serializer');
59
59
  const { graphBinaryReader, graphBinaryWriter } = require('../structure/io/binary/GraphBinary');
60
60
  const ResultSet = require('./result-set');
@@ -71,9 +71,6 @@ const defaultMimeType = 'application/vnd.gremlin-v3.0+json';
71
71
  const graphSON2MimeType = 'application/vnd.gremlin-v2.0+json';
72
72
  const graphBinaryMimeType = 'application/vnd.graphbinary-v1.0';
73
73
 
74
- const pingIntervalDelay = 60 * 1000;
75
- const pongTimeoutDelay = 30 * 1000;
76
-
77
74
  const uuidPattern = '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}';
78
75
 
79
76
  /**
@@ -95,9 +92,6 @@ class Connection extends EventEmitter {
95
92
  * @param {Authenticator} [options.authenticator] The authentication handler to use.
96
93
  * @param {Object} [options.headers] An associative array containing the additional header key/values for the initial request.
97
94
  * @param {Boolean} [options.enableUserAgentOnConnect] Determines if a user agent will be sent during connection handshake. Defaults to: true
98
- * @param {Boolean} [options.pingEnabled] Setup ping interval. Defaults to: true.
99
- * @param {Number} [options.pingInterval] Ping request interval in ms if ping enabled. Defaults to: 60000.
100
- * @param {Number} [options.pongTimeout] Timeout of pong response in ms after sending a ping. Defaults to: 30000.
101
95
  * @param {http.Agent} [options.agent] The http.Agent implementation to use.
102
96
  * @constructor
103
97
  */
@@ -115,14 +109,12 @@ class Connection extends EventEmitter {
115
109
 
116
110
  // A map containing the request id and the handler. The id should be in lower case to prevent string comparison issues.
117
111
  this._responseHandlers = {};
118
- this._reader = options.reader || this._getDefaultReader(this.mimeType);
119
- this._writer = options.writer || this._getDefaultWriter(this.mimeType);
112
+ this._reader = options.reader || this.#getDefaultReader(this.mimeType);
113
+ this._writer = options.writer || this.#getDefaultWriter(this.mimeType);
120
114
  this._openPromise = null;
121
115
  this._openCallback = null;
122
116
  this._closePromise = null;
123
117
  this._closeCallback = null;
124
- this._pingInterval = null;
125
- this._pongTimeout = null;
126
118
 
127
119
  this._header = String.fromCharCode(this.mimeType.length) + this.mimeType; // TODO: what if mimeType.length > 255
128
120
  this._header_buf = Buffer.from(this._header);
@@ -130,70 +122,61 @@ class Connection extends EventEmitter {
130
122
  this.traversalSource = options.traversalSource || 'g';
131
123
  this._authenticator = options.authenticator;
132
124
  this._enableUserAgentOnConnect = options.enableUserAgentOnConnect !== false;
133
-
134
- this._pingEnabled = this.options.pingEnabled === false ? false : true;
135
- this._pingIntervalDelay = this.options.pingInterval || pingIntervalDelay;
136
- this._pongTimeoutDelay = this.options.pongTimeout || pongTimeoutDelay;
137
125
  }
138
126
 
139
127
  /**
140
128
  * Opens the connection, if its not already opened.
141
129
  * @returns {Promise}
142
130
  */
143
- open() {
131
+ async open() {
144
132
  if (this.isOpen) {
145
- return Promise.resolve();
133
+ return;
146
134
  }
147
135
  if (this._openPromise) {
148
136
  return this._openPromise;
149
137
  }
150
138
 
139
+ this._openPromise = DeferredPromise();
140
+
151
141
  this.emit('log', 'ws open');
152
142
  let headers = this.options.headers;
153
143
  if (this._enableUserAgentOnConnect) {
154
144
  if (!headers) {
155
145
  headers = [];
156
146
  }
157
- headers[utils.getUserAgentHeader()] = utils.getUserAgent();
147
+
148
+ const userAgent = await utils.getUserAgent();
149
+ if (userAgent !== undefined) {
150
+ headers[utils.getUserAgentHeader()] = await utils.getUserAgent();
151
+ }
158
152
  }
159
153
 
160
- this._ws = new WebSocket(this.url, {
161
- headers: headers,
162
- ca: this.options.ca,
163
- cert: this.options.cert,
164
- pfx: this.options.pfx,
165
- rejectUnauthorized: this.options.rejectUnauthorized,
166
- agent: this.options.agent,
167
- });
154
+ const WebSocket = globalThis.WebSocket ?? (await import('ws')).default;
155
+
156
+ this._ws = new WebSocket(
157
+ this.url,
158
+ globalThis.WebSocket === undefined
159
+ ? {
160
+ headers: headers,
161
+ ca: this.options.ca,
162
+ cert: this.options.cert,
163
+ pfx: this.options.pfx,
164
+ rejectUnauthorized: this.options.rejectUnauthorized,
165
+ agent: this.options.agent,
166
+ }
167
+ : undefined,
168
+ );
168
169
 
169
- this._ws.on('message', (data) => this._handleMessage(data));
170
- this._ws.on('close', (code, message) => this._handleClose(code, message));
170
+ if ('binaryType' in this._ws) {
171
+ this._ws.binaryType = 'arraybuffer';
172
+ }
171
173
 
172
- this._ws.on('pong', () => {
173
- this.emit('log', 'ws pong received');
174
- if (this._pongTimeout) {
175
- clearTimeout(this._pongTimeout);
176
- this._pongTimeout = null;
177
- }
178
- });
179
- this._ws.on('ping', () => {
180
- this.emit('log', 'ws ping received');
181
- this._ws.pong();
182
- });
174
+ this._ws.addEventListener('open', this.#handleOpen);
175
+ this._ws.addEventListener('error', this.#handleError);
176
+ this._ws.addEventListener('message', this.#handleMessage);
177
+ this._ws.addEventListener('close', this.#handleClose);
183
178
 
184
- return (this._openPromise = new Promise((resolve, reject) => {
185
- this._ws.on('open', () => {
186
- this.isOpen = true;
187
- if (this._pingEnabled) {
188
- this._pingHeartbeat();
189
- }
190
- resolve();
191
- });
192
- this._ws.on('error', (err) => {
193
- this._handleError(err);
194
- reject(err);
195
- });
196
- }));
179
+ return await this._openPromise;
197
180
  }
198
181
 
199
182
  /** @override */
@@ -223,7 +206,7 @@ class Connection extends EventEmitter {
223
206
  };
224
207
 
225
208
  const request_buf = this._writer.writeRequest(request);
226
- const message = Buffer.concat([this._header_buf, request_buf]);
209
+ const message = utils.toArrayBuffer(Buffer.concat([this._header_buf, request_buf]));
227
210
  this._ws.send(message);
228
211
  }),
229
212
  );
@@ -258,7 +241,7 @@ class Connection extends EventEmitter {
258
241
  };
259
242
 
260
243
  const request_buf = this._writer.writeRequest(request);
261
- const message = Buffer.concat([this._header_buf, request_buf]);
244
+ const message = utils.toArrayBuffer(Buffer.concat([this._header_buf, request_buf]));
262
245
  this._ws.send(message);
263
246
  })
264
247
  .catch((err) => readableStream.destroy(err));
@@ -266,7 +249,7 @@ class Connection extends EventEmitter {
266
249
  return readableStream;
267
250
  }
268
251
 
269
- _getDefaultReader(mimeType) {
252
+ #getDefaultReader(mimeType) {
270
253
  if (mimeType === graphBinaryMimeType) {
271
254
  return graphBinaryReader;
272
255
  }
@@ -274,7 +257,7 @@ class Connection extends EventEmitter {
274
257
  return mimeType === graphSON2MimeType ? new serializer.GraphSON2Reader() : new serializer.GraphSONReader();
275
258
  }
276
259
 
277
- _getDefaultWriter(mimeType) {
260
+ #getDefaultWriter(mimeType) {
278
261
  if (mimeType === graphBinaryMimeType) {
279
262
  return graphBinaryWriter;
280
263
  }
@@ -282,68 +265,58 @@ class Connection extends EventEmitter {
282
265
  return mimeType === graphSON2MimeType ? new serializer.GraphSON2Writer() : new serializer.GraphSONWriter();
283
266
  }
284
267
 
285
- _pingHeartbeat() {
286
- if (this._pingInterval) {
287
- clearInterval(this._pingInterval);
288
- this._pingInterval = null;
289
- }
268
+ #handleOpen = () => {
269
+ this._openPromise.resolve();
270
+ this.isOpen = true;
271
+ };
290
272
 
291
- this._pingInterval = setInterval(() => {
292
- if (this.isOpen === false) {
293
- // in case of if not open..
294
- if (this._pingInterval) {
295
- clearInterval(this._pingInterval);
296
- this._pingInterval = null;
297
- }
298
- }
299
-
300
- this._pongTimeout = setTimeout(() => {
301
- this._ws.terminate();
302
- }, this._pongTimeoutDelay);
303
-
304
- this._ws.ping();
305
- }, this._pingIntervalDelay);
306
- }
307
-
308
- _handleError(err) {
309
- this.emit('log', `ws error ${err}`);
310
- this._cleanupWebsocket(err);
311
- this.emit('socketError', err);
312
- }
273
+ /**
274
+ * @param {Event} event
275
+ */
276
+ #handleError = ({ error }) => {
277
+ this._openPromise.reject(error);
278
+ this.emit('log', `ws error ${error}`);
279
+ this.#cleanupWebsocket(error);
280
+ this.emit('socketError', error);
281
+ };
313
282
 
314
- _handleClose(code, message) {
283
+ /**
284
+ * @param {CloseEvent} event
285
+ */
286
+ #handleClose = ({ code, message }) => {
315
287
  this.emit('log', `ws close code=${code} message=${message}`);
316
- this._cleanupWebsocket();
288
+ this.#cleanupWebsocket();
317
289
  if (this._closeCallback) {
318
290
  this._closeCallback();
319
291
  }
320
292
  this.emit('close', code, message);
321
- }
293
+ };
294
+
295
+ /**
296
+ * @param {MessageEvent&lt;any>} event
297
+ */
298
+ #handleMessage = ({ data: _data }) => {
299
+ const data = _data instanceof ArrayBuffer ? Buffer.from(_data) : _data;
322
300
 
323
- _handleMessage(data) {
324
301
  const response = this._reader.readResponse(data);
325
302
  if (response.requestId === null || response.requestId === undefined) {
326
303
  // There was a serialization issue on the server that prevented the parsing of the request id
327
304
  // We invoke any of the pending handlers with an error
328
305
  Object.keys(this._responseHandlers).forEach((requestId) => {
329
306
  const handler = this._responseHandlers[requestId];
330
- this._clearHandler(requestId);
307
+ this.#clearHandler(requestId);
331
308
  if (response.status !== undefined &amp;&amp; response.status.message) {
332
309
  return handler.callback(
333
310
  // TINKERPOP-2285: keep the old server error message in case folks are parsing that - fix in a future breaking version
334
311
  new ResponseError(
335
- util.format(
336
- 'Server error (no request information): %s (%d)',
337
- response.status.message,
338
- response.status.code,
339
- ),
312
+ `Server error (no request information): ${response.status.message} (${response.status.code})`,
340
313
  response.status,
341
314
  ),
342
315
  );
343
316
  }
344
317
  // TINKERPOP-2285: keep the old server error message in case folks are parsing that - fix in a future breaking version
345
318
  return handler.callback(
346
- new ResponseError(util.format('Server error (no request information): %j', response), response.status),
319
+ new ResponseError(`Server error (no request information): ${JSON.stringify(response)}`, response.status),
347
320
  );
348
321
  });
349
322
  return;
@@ -370,10 +343,7 @@ class Connection extends EventEmitter {
370
343
  // callback in error
371
344
  return handler.callback(
372
345
  // TINKERPOP-2285: keep the old server error message in case folks are parsing that - fix in a future breaking version
373
- new ResponseError(
374
- util.format('Server error: %s (%d)', response.status.message, response.status.code),
375
- response.status,
376
- ),
346
+ new ResponseError(`Server error: ${response.status.message} (${response.status.code})`, response.status),
377
347
  );
378
348
  }
379
349
 
@@ -381,7 +351,7 @@ class Connection extends EventEmitter {
381
351
 
382
352
  switch (response.status.code) {
383
353
  case responseStatusCode.noContent:
384
- this._clearHandler(response.requestId);
354
+ this.#clearHandler(response.requestId);
385
355
  if (isStreamingResponse) {
386
356
  handler.result.push(new ResultSet(utils.emptyArray, response.status.attributes));
387
357
  return handler.callback(null);
@@ -405,24 +375,15 @@ class Connection extends EventEmitter {
405
375
  } else {
406
376
  handler.result = response.result.data;
407
377
  }
408
- this._clearHandler(response.requestId);
378
+ this.#clearHandler(response.requestId);
409
379
  return handler.callback(null, new ResultSet(handler.result, response.status.attributes));
410
380
  }
411
- }
381
+ };
412
382
 
413
383
  /**
414
384
  * clean websocket context
415
385
  */
416
- _cleanupWebsocket(err) {
417
- if (this._pingInterval) {
418
- clearInterval(this._pingInterval);
419
- }
420
- this._pingInterval = null;
421
- if (this._pongTimeout) {
422
- clearTimeout(this._pongTimeout);
423
- }
424
- this._pongTimeout = null;
425
-
386
+ #cleanupWebsocket(err) {
426
387
  // Invoke waiting callbacks to complete Promises when closing the websocket
427
388
  Object.keys(this._responseHandlers).forEach((requestId) => {
428
389
  const handler = this._responseHandlers[requestId];
@@ -434,7 +395,10 @@ class Connection extends EventEmitter {
434
395
  handler.callback(cause);
435
396
  }
436
397
  });
437
- this._ws.removeAllListeners();
398
+ this._ws.removeEventListener('open', this.#handleOpen);
399
+ this._ws.removeEventListener('error', this.#handleError);
400
+ this._ws.removeEventListener('message', this.#handleMessage);
401
+ this._ws.removeEventListener('close', this.#handleClose);
438
402
  this._openPromise = null;
439
403
  this._closePromise = null;
440
404
  this.isOpen = false;
@@ -445,7 +409,7 @@ class Connection extends EventEmitter {
445
409
  * @param requestId
446
410
  * @private
447
411
  */
448
- _clearHandler(requestId) {
412
+ #clearHandler(requestId) {
449
413
  delete this._responseHandlers[requestId];
450
414
  }
451
415
 
@@ -478,13 +442,13 @@ module.exports = Connection;
478
442
  </div>
479
443
 
480
444
  <nav>
481
- <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#statics">statics</a></li></ul>
445
+ <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#statics">statics</a></li><li><a href="global.html#toArrayBuffer">toArrayBuffer</a></li></ul>
482
446
  </nav>
483
447
 
484
448
  <br class="clear">
485
449
 
486
450
  <footer>
487
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Dec 04 2023 12:21:39 GMT-0800 (Pacific Standard Time)
451
+ Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Apr 15 2024 11:06:40 GMT-0700 (Pacific Daylight Time)
488
452
  </footer>
489
453
 
490
454
  <script> prettyPrint(); </script>
@@ -77,9 +77,6 @@ class DriverRemoteConnection extends RemoteConnection {
77
77
  * @param {Authenticator} [options.authenticator] The authentication handler to use.
78
78
  * @param {Object} [options.headers] An associative array containing the additional header key/values for the initial request.
79
79
  * @param {Boolean} [options.enableUserAgentOnConnect] Determines if a user agent will be sent during connection handshake. Defaults to: true
80
- * @param {Boolean} [options.pingEnabled] Setup ping interval. Defaults to: true.
81
- * @param {Number} [options.pingInterval] Ping request interval in ms if ping enabled. Defaults to: 60000.
82
- * @param {Number} [options.pongTimeout] Timeout of pong response in ms after sending a ping. Defaults to: 30000.
83
80
  * @param {http.Agent} [options.agent] The http.Agent implementation to use.
84
81
  * @constructor
85
82
  */
@@ -180,13 +177,13 @@ module.exports = DriverRemoteConnection;
180
177
  </div>
181
178
 
182
179
  <nav>
183
- <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#statics">statics</a></li></ul>
180
+ <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#statics">statics</a></li><li><a href="global.html#toArrayBuffer">toArrayBuffer</a></li></ul>
184
181
  </nav>
185
182
 
186
183
  <br class="clear">
187
184
 
188
185
  <footer>
189
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Dec 04 2023 12:21:39 GMT-0800 (Pacific Standard Time)
186
+ Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Apr 15 2024 11:06:40 GMT-0700 (Pacific Daylight Time)
190
187
  </footer>
191
188
 
192
189
  <script> prettyPrint(); </script>
@@ -183,13 +183,13 @@ module.exports = { RemoteConnection, RemoteStrategy, RemoteTraversal };
183
183
  </div>
184
184
 
185
185
  <nav>
186
- <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#statics">statics</a></li></ul>
186
+ <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#statics">statics</a></li><li><a href="global.html#toArrayBuffer">toArrayBuffer</a></li></ul>
187
187
  </nav>
188
188
 
189
189
  <br class="clear">
190
190
 
191
191
  <footer>
192
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Dec 04 2023 12:21:39 GMT-0800 (Pacific Standard Time)
192
+ Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Apr 15 2024 11:06:40 GMT-0700 (Pacific Daylight Time)
193
193
  </footer>
194
194
 
195
195
  <script> prettyPrint(); </script>
@@ -83,13 +83,13 @@ module.exports = ResponseError;
83
83
  </div>
84
84
 
85
85
  <nav>
86
- <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#statics">statics</a></li></ul>
86
+ <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#statics">statics</a></li><li><a href="global.html#toArrayBuffer">toArrayBuffer</a></li></ul>
87
87
  </nav>
88
88
 
89
89
  <br class="clear">
90
90
 
91
91
  <footer>
92
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Dec 04 2023 12:21:39 GMT-0800 (Pacific Standard Time)
92
+ Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Apr 15 2024 11:06:40 GMT-0700 (Pacific Daylight Time)
93
93
  </footer>
94
94
 
95
95
  <script> prettyPrint(); </script>