gremlin 3.7.0 → 3.7.1

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 (76) hide show
  1. package/doc/AnonymousTraversalSource.html +1 -1
  2. package/doc/Authenticator.html +1 -1
  3. package/doc/Bytecode.html +1 -1
  4. package/doc/CardinalityValue.html +5 -5
  5. package/doc/Client.html +41 -8
  6. package/doc/Connection.html +41 -8
  7. package/doc/DriverRemoteConnection.html +44 -11
  8. package/doc/EdgeLabelVerificationStrategy.html +1 -1
  9. package/doc/Graph.html +1 -1
  10. package/doc/GraphSON2Reader.html +1 -1
  11. package/doc/GraphSON2Writer.html +1 -1
  12. package/doc/GraphSON3Reader.html +1 -1
  13. package/doc/GraphSON3Writer.html +1 -1
  14. package/doc/GraphTraversal.html +4305 -297
  15. package/doc/GraphTraversalSource.html +1 -1
  16. package/doc/HaltedTraverserStrategy.html +1 -1
  17. package/doc/MatchAlgorithmStrategy.html +1 -1
  18. package/doc/P.html +1 -1
  19. package/doc/PartitionStrategy.html +1 -1
  20. package/doc/Path.html +1 -1
  21. package/doc/PlainTextSaslAuthenticator.html +1 -1
  22. package/doc/ProductiveByStrategy.html +1 -1
  23. package/doc/RemoteConnection.html +1 -1
  24. package/doc/RemoteStrategy.html +1 -1
  25. package/doc/RemoteTraversal.html +1 -1
  26. package/doc/ReservedKeysVerificationStrategy.html +1 -1
  27. package/doc/ResponseError.html +1 -1
  28. package/doc/ResultSet.html +1 -1
  29. package/doc/SaslAuthenticator.html +1 -1
  30. package/doc/SaslMechanismBase.html +1 -1
  31. package/doc/SaslMechanismPlain.html +1 -1
  32. package/doc/SeedStrategy.html +1 -1
  33. package/doc/SubgraphStrategy.html +1 -1
  34. package/doc/TextP.html +1 -1
  35. package/doc/Transaction.html +1 -1
  36. package/doc/Translator.html +1 -1
  37. package/doc/TraversalStrategies.html +1 -1
  38. package/doc/TraversalStrategy.html +1 -1
  39. package/doc/TypeSerializer.html +1 -1
  40. package/doc/driver_auth_authenticator.js.html +1 -1
  41. package/doc/driver_auth_mechanisms_sasl-mechanism-base.js.html +1 -1
  42. package/doc/driver_auth_mechanisms_sasl-mechanism-plain.js.html +1 -1
  43. package/doc/driver_auth_plain-text-sasl-authenticator.js.html +1 -1
  44. package/doc/driver_auth_sasl-authenticator.js.html +1 -1
  45. package/doc/driver_client.js.html +2 -1
  46. package/doc/driver_connection.js.html +12 -1
  47. package/doc/driver_driver-remote-connection.js.html +2 -1
  48. package/doc/driver_remote-connection.js.html +1 -1
  49. package/doc/driver_response-error.js.html +1 -1
  50. package/doc/driver_result-set.js.html +1 -1
  51. package/doc/global.html +3 -3
  52. package/doc/index.html +1 -1
  53. package/doc/module.exports.html +1 -1
  54. package/doc/process_anonymous-traversal.js.html +1 -1
  55. package/doc/process_bytecode.js.html +1 -1
  56. package/doc/process_graph-traversal.js.html +258 -1
  57. package/doc/process_transaction.js.html +1 -1
  58. package/doc/process_translator.js.html +1 -1
  59. package/doc/process_traversal-strategy.js.html +1 -1
  60. package/doc/process_traversal.js.html +2 -1
  61. package/doc/structure_graph.js.html +1 -1
  62. package/doc/structure_io_binary_internals_DataType.js.html +2 -1
  63. package/doc/structure_io_binary_internals_GraphBinaryReader.js.html +1 -1
  64. package/doc/structure_io_binary_internals_GraphBinaryWriter.js.html +1 -1
  65. package/doc/structure_io_graph-serializer.js.html +1 -1
  66. package/doc/structure_io_type-serializers.js.html +1 -1
  67. package/index.js +1 -0
  68. package/lib/driver/client.js +1 -0
  69. package/lib/driver/connection.js +11 -0
  70. package/lib/driver/driver-remote-connection.js +1 -0
  71. package/lib/process/graph-traversal.js +257 -0
  72. package/lib/process/traversal.js +1 -0
  73. package/lib/structure/io/binary/internals/DataType.js +1 -0
  74. package/lib/structure/io/binary/internals/EnumSerializer.js +1 -0
  75. package/lib/utils.js +1 -1
  76. package/package.json +2 -2
@@ -442,6 +442,16 @@ class GraphTraversal extends Traversal {
442
442
  return this;
443
443
  }
444
444
 
445
+ /**
446
+ * Graph traversal all method.
447
+ * @param {...Object} args
448
+ * @returns {GraphTraversal}
449
+ */
450
+ all(...args) {
451
+ this.bytecode.addStep('all', args);
452
+ return this;
453
+ }
454
+
445
455
  /**
446
456
  * Graph traversal and method.
447
457
  * @param {...Object} args
@@ -452,6 +462,16 @@ class GraphTraversal extends Traversal {
452
462
  return this;
453
463
  }
454
464
 
465
+ /**
466
+ * Graph traversal any method.
467
+ * @param {...Object} args
468
+ * @returns {GraphTraversal}
469
+ */
470
+ any(...args) {
471
+ this.bytecode.addStep('any', args);
472
+ return this;
473
+ }
474
+
455
475
  /**
456
476
  * Graph traversal as method.
457
477
  * @param {...Object} args
@@ -462,6 +482,26 @@ class GraphTraversal extends Traversal {
462
482
  return this;
463
483
  }
464
484
 
485
+ /**
486
+ * Graph traversal asDate method.
487
+ * @param {...Object} args
488
+ * @returns {GraphTraversal}
489
+ */
490
+ asDate(...args) {
491
+ this.bytecode.addStep('asDate', args);
492
+ return this;
493
+ }
494
+
495
+ /**
496
+ * Graph traversal asString method.
497
+ * @param {...Object} args
498
+ * @returns {GraphTraversal}
499
+ */
500
+ asString(...args) {
501
+ this.bytecode.addStep('asString', args);
502
+ return this;
503
+ }
504
+
465
505
  /**
466
506
  * Graph traversal barrier method.
467
507
  * @param {...Object} args
@@ -571,6 +611,16 @@ class GraphTraversal extends Traversal {
571
611
  return this;
572
612
  }
573
613
 
614
+ /**
615
+ * Graph traversal combine method.
616
+ * @param {...Object} args
617
+ * @returns {GraphTraversal}
618
+ */
619
+ combine(...args) {
620
+ this.bytecode.addStep('combine', args);
621
+ return this;
622
+ }
623
+
574
624
  /**
575
625
  * Graph traversal concat method.
576
626
  * @param {...Object} args
@@ -581,6 +631,16 @@ class GraphTraversal extends Traversal {
581
631
  return this;
582
632
  }
583
633
 
634
+ /**
635
+ * Graph traversal conjoin method.
636
+ * @param {...Object} args
637
+ * @returns {GraphTraversal}
638
+ */
639
+ conjoin(...args) {
640
+ this.bytecode.addStep('conjoin', args);
641
+ return this;
642
+ }
643
+
584
644
  /**
585
645
  * Graph traversal connectedComponent method.
586
646
  * @param {...Object} args
@@ -621,6 +681,26 @@ class GraphTraversal extends Traversal {
621
681
  return this;
622
682
  }
623
683
 
684
+ /**
685
+ * Graph traversal dateAdd method.
686
+ * @param {...Object} args
687
+ * @returns {GraphTraversal}
688
+ */
689
+ dateAdd(...args) {
690
+ this.bytecode.addStep('dateAdd', args);
691
+ return this;
692
+ }
693
+
694
+ /**
695
+ * Graph traversal dateDiff method.
696
+ * @param {...Object} args
697
+ * @returns {GraphTraversal}
698
+ */
699
+ dateDiff(...args) {
700
+ this.bytecode.addStep('dateDiff', args);
701
+ return this;
702
+ }
703
+
624
704
  /**
625
705
  * Graph traversal dedup method.
626
706
  * @param {...Object} args
@@ -631,6 +711,26 @@ class GraphTraversal extends Traversal {
631
711
  return this;
632
712
  }
633
713
 
714
+ /**
715
+ * Graph traversal difference method.
716
+ * @param {...Object} args
717
+ * @returns {GraphTraversal}
718
+ */
719
+ difference(...args) {
720
+ this.bytecode.addStep('difference', args);
721
+ return this;
722
+ }
723
+
724
+ /**
725
+ * Graph traversal disjunct method.
726
+ * @param {...Object} args
727
+ * @returns {GraphTraversal}
728
+ */
729
+ disjunct(...args) {
730
+ this.bytecode.addStep('disjunct', args);
731
+ return this;
732
+ }
733
+
634
734
  /**
635
735
  * Graph traversal drop method.
636
736
  * @param {...Object} args
@@ -710,6 +810,16 @@ class GraphTraversal extends Traversal {
710
810
  return this;
711
811
  }
712
812
 
813
+ /**
814
+ * Graph traversal format method.
815
+ * @param {...Object} args
816
+ * @returns {GraphTraversal}
817
+ */
818
+ format(...args) {
819
+ this.bytecode.addStep('format', args);
820
+ return this;
821
+ }
822
+
713
823
  /**
714
824
  * Graph traversal from method.
715
825
  * @param {...Object} args
@@ -870,6 +980,16 @@ class GraphTraversal extends Traversal {
870
980
  return this;
871
981
  }
872
982
 
983
+ /**
984
+ * Graph traversal intersect method.
985
+ * @param {...Object} args
986
+ * @returns {GraphTraversal}
987
+ */
988
+ intersect(...args) {
989
+ this.bytecode.addStep('intersect', args);
990
+ return this;
991
+ }
992
+
873
993
  /**
874
994
  * Graph traversal is method.
875
995
  * @param {...Object} args
@@ -900,6 +1020,16 @@ class GraphTraversal extends Traversal {
900
1020
  return this;
901
1021
  }
902
1022
 
1023
+ /**
1024
+ * Graph traversal length method.
1025
+ * @param {...Object} args
1026
+ * @returns {GraphTraversal}
1027
+ */
1028
+ length(...args) {
1029
+ this.bytecode.addStep('length', args);
1030
+ return this;
1031
+ }
1032
+
903
1033
  /**
904
1034
  * Graph traversal limit method.
905
1035
  * @param {...Object} args
@@ -930,6 +1060,16 @@ class GraphTraversal extends Traversal {
930
1060
  return this;
931
1061
  }
932
1062
 
1063
+ /**
1064
+ * Graph traversal lTrim method.
1065
+ * @param {...Object} args
1066
+ * @returns {GraphTraversal}
1067
+ */
1068
+ lTrim(...args) {
1069
+ this.bytecode.addStep('lTrim', args);
1070
+ return this;
1071
+ }
1072
+
933
1073
  /**
934
1074
  * Graph traversal map method.
935
1075
  * @param {...Object} args
@@ -980,6 +1120,16 @@ class GraphTraversal extends Traversal {
980
1120
  return this;
981
1121
  }
982
1122
 
1123
+ /**
1124
+ * Graph traversal merge method.
1125
+ * @param {...Object} args
1126
+ * @returns {GraphTraversal}
1127
+ */
1128
+ merge(...args) {
1129
+ this.bytecode.addStep('merge', args);
1130
+ return this;
1131
+ }
1132
+
983
1133
  /**
984
1134
  * Graph traversal mergeE method.
985
1135
  * @param {...Object} args
@@ -1140,6 +1290,16 @@ class GraphTraversal extends Traversal {
1140
1290
  return this;
1141
1291
  }
1142
1292
 
1293
+ /**
1294
+ * Graph traversal product method.
1295
+ * @param {...Object} args
1296
+ * @returns {GraphTraversal}
1297
+ */
1298
+ product(...args) {
1299
+ this.bytecode.addStep('product', args);
1300
+ return this;
1301
+ }
1302
+
1143
1303
  /**
1144
1304
  * Graph traversal profile method.
1145
1305
  * @param {...Object} args
@@ -1230,6 +1390,36 @@ class GraphTraversal extends Traversal {
1230
1390
  return this;
1231
1391
  }
1232
1392
 
1393
+ /**
1394
+ * Graph traversal replace method.
1395
+ * @param {...Object} args
1396
+ * @returns {GraphTraversal}
1397
+ */
1398
+ replace(...args) {
1399
+ this.bytecode.addStep('replace', args);
1400
+ return this;
1401
+ }
1402
+
1403
+ /**
1404
+ * Graph traversal reverse method.
1405
+ * @param {...Object} args
1406
+ * @returns {GraphTraversal}
1407
+ */
1408
+ reverse(...args) {
1409
+ this.bytecode.addStep('reverse', args);
1410
+ return this;
1411
+ }
1412
+
1413
+ /**
1414
+ * Graph traversal rTrim method.
1415
+ * @param {...Object} args
1416
+ * @returns {GraphTraversal}
1417
+ */
1418
+ rTrim(...args) {
1419
+ this.bytecode.addStep('rTrim', args);
1420
+ return this;
1421
+ }
1422
+
1233
1423
  /**
1234
1424
  * Graph traversal sack method.
1235
1425
  * @param {...Object} args
@@ -1300,6 +1490,16 @@ class GraphTraversal extends Traversal {
1300
1490
  return this;
1301
1491
  }
1302
1492
 
1493
+ /**
1494
+ * Graph traversal split method.
1495
+ * @param {...Object} args
1496
+ * @returns {GraphTraversal}
1497
+ */
1498
+ split(...args) {
1499
+ this.bytecode.addStep('split', args);
1500
+ return this;
1501
+ }
1502
+
1303
1503
  /**
1304
1504
  * Graph traversal store method.
1305
1505
  * @param {...Object} args
@@ -1320,6 +1520,16 @@ class GraphTraversal extends Traversal {
1320
1520
  return this;
1321
1521
  }
1322
1522
 
1523
+ /**
1524
+ * Graph traversal subgraph method.
1525
+ * @param {...Object} args
1526
+ * @returns {GraphTraversal}
1527
+ */
1528
+ substring(...args) {
1529
+ this.bytecode.addStep('substring', args);
1530
+ return this;
1531
+ }
1532
+
1323
1533
  /**
1324
1534
  * Graph traversal sum method.
1325
1535
  * @param {...Object} args
@@ -1380,6 +1590,26 @@ class GraphTraversal extends Traversal {
1380
1590
  return this;
1381
1591
  }
1382
1592
 
1593
+ /**
1594
+ * Graph traversal toLower method.
1595
+ * @param {...Object} args
1596
+ * @returns {GraphTraversal}
1597
+ */
1598
+ toLower(...args) {
1599
+ this.bytecode.addStep('toLower', args);
1600
+ return this;
1601
+ }
1602
+
1603
+ /**
1604
+ * Graph traversal toUpper method.
1605
+ * @param {...Object} args
1606
+ * @returns {GraphTraversal}
1607
+ */
1608
+ toUpper(...args) {
1609
+ this.bytecode.addStep('toUpper', args);
1610
+ return this;
1611
+ }
1612
+
1383
1613
  /**
1384
1614
  * Graph traversal toV method.
1385
1615
  * @param {...Object} args
@@ -1400,6 +1630,16 @@ class GraphTraversal extends Traversal {
1400
1630
  return this;
1401
1631
  }
1402
1632
 
1633
+ /**
1634
+ * Graph traversal trim method.
1635
+ * @param {...Object} args
1636
+ * @returns {GraphTraversal}
1637
+ */
1638
+ trim(...args) {
1639
+ this.bytecode.addStep('trim', args);
1640
+ return this;
1641
+ }
1642
+
1403
1643
  /**
1404
1644
  * Graph traversal unfold method.
1405
1645
  * @param {...Object} args
@@ -1545,8 +1785,12 @@ const statics = {
1545
1785
  addE: (...args) => callOnEmptyTraversal('addE', args),
1546
1786
  addV: (...args) => callOnEmptyTraversal('addV', args),
1547
1787
  aggregate: (...args) => callOnEmptyTraversal('aggregate', args),
1788
+ all: (...args) => callOnEmptyTraversal('all', args),
1548
1789
  and: (...args) => callOnEmptyTraversal('and', args),
1790
+ any: (...args) => callOnEmptyTraversal('any', args),
1549
1791
  as: (...args) => callOnEmptyTraversal('as', args),
1792
+ asDate: (...args) => callOnEmptyTraversal('asDate', args),
1793
+ asString: (...args) => callOnEmptyTraversal('asString', args),
1550
1794
  barrier: (...args) => callOnEmptyTraversal('barrier', args),
1551
1795
  both: (...args) => callOnEmptyTraversal('both', args),
1552
1796
  bothE: (...args) => callOnEmptyTraversal('bothE', args),
@@ -1561,6 +1805,8 @@ const statics = {
1561
1805
  constant: (...args) => callOnEmptyTraversal('constant', args),
1562
1806
  count: (...args) => callOnEmptyTraversal('count', args),
1563
1807
  cyclicPath: (...args) => callOnEmptyTraversal('cyclicPath', args),
1808
+ dateAdd: (...args) => callOnEmptyTraversal('dateAdd', args),
1809
+ dateDiff: (...args) => callOnEmptyTraversal('dateDiff', args),
1564
1810
  dedup: (...args) => callOnEmptyTraversal('dedup', args),
1565
1811
  drop: (...args) => callOnEmptyTraversal('drop', args),
1566
1812
  element: (...args) => callOnEmptyTraversal('element', args),
@@ -1570,6 +1816,7 @@ const statics = {
1570
1816
  filter: (...args) => callOnEmptyTraversal('filter', args),
1571
1817
  flatMap: (...args) => callOnEmptyTraversal('flatMap', args),
1572
1818
  fold: (...args) => callOnEmptyTraversal('fold', args),
1819
+ format: (...args) => callOnEmptyTraversal('format', args),
1573
1820
  group: (...args) => callOnEmptyTraversal('group', args),
1574
1821
  groupCount: (...args) => callOnEmptyTraversal('groupCount', args),
1575
1822
  has: (...args) => callOnEmptyTraversal('has', args),
@@ -1588,9 +1835,11 @@ const statics = {
1588
1835
  is: (...args) => callOnEmptyTraversal('is', args),
1589
1836
  key: (...args) => callOnEmptyTraversal('key', args),
1590
1837
  label: (...args) => callOnEmptyTraversal('label', args),
1838
+ length: (...args) => callOnEmptyTraversal('length', args),
1591
1839
  limit: (...args) => callOnEmptyTraversal('limit', args),
1592
1840
  local: (...args) => callOnEmptyTraversal('local', args),
1593
1841
  loops: (...args) => callOnEmptyTraversal('loops', args),
1842
+ lTrim: (...args) => callOnEmptyTraversal('lTrim', args),
1594
1843
  map: (...args) => callOnEmptyTraversal('map', args),
1595
1844
  match: (...args) => callOnEmptyTraversal('match', args),
1596
1845
  math: (...args) => callOnEmptyTraversal('math', args),
@@ -1614,22 +1863,30 @@ const statics = {
1614
1863
  propertyMap: (...args) => callOnEmptyTraversal('propertyMap', args),
1615
1864
  range: (...args) => callOnEmptyTraversal('range', args),
1616
1865
  repeat: (...args) => callOnEmptyTraversal('repeat', args),
1866
+ replace: (...args) => callOnEmptyTraversal('replace', args),
1867
+ reverse: (...args) => callOnEmptyTraversal('reverse', args),
1868
+ rTrim: (...args) => callOnEmptyTraversal('rTrim', args),
1617
1869
  sack: (...args) => callOnEmptyTraversal('sack', args),
1618
1870
  sample: (...args) => callOnEmptyTraversal('sample', args),
1619
1871
  select: (...args) => callOnEmptyTraversal('select', args),
1620
1872
  sideEffect: (...args) => callOnEmptyTraversal('sideEffect', args),
1621
1873
  simplePath: (...args) => callOnEmptyTraversal('simplePath', args),
1622
1874
  skip: (...args) => callOnEmptyTraversal('skip', args),
1875
+ split: (...args) => callOnEmptyTraversal('split', args),
1623
1876
  store: (...args) => callOnEmptyTraversal('store', args),
1624
1877
  subgraph: (...args) => callOnEmptyTraversal('subgraph', args),
1878
+ substring: (...args) => callOnEmptyTraversal('substring', args),
1625
1879
  sum: (...args) => callOnEmptyTraversal('sum', args),
1626
1880
  tail: (...args) => callOnEmptyTraversal('tail', args),
1627
1881
  timeLimit: (...args) => callOnEmptyTraversal('timeLimit', args),
1628
1882
  times: (...args) => callOnEmptyTraversal('times', args),
1629
1883
  to: (...args) => callOnEmptyTraversal('to', args),
1630
1884
  toE: (...args) => callOnEmptyTraversal('toE', args),
1885
+ toLower: (...args) => callOnEmptyTraversal('toLower', args),
1886
+ toUpper: (...args) => callOnEmptyTraversal('toUpper', args),
1631
1887
  toV: (...args) => callOnEmptyTraversal('toV', args),
1632
1888
  tree: (...args) => callOnEmptyTraversal('tree', args),
1889
+ trim: (...args) => callOnEmptyTraversal('trim', args),
1633
1890
  unfold: (...args) => callOnEmptyTraversal('unfold', args),
1634
1891
  union: (...args) => callOnEmptyTraversal('union', args),
1635
1892
  until: (...args) => callOnEmptyTraversal('until', args),
@@ -1661,7 +1918,7 @@ module.exports = {
1661
1918
  <br class="clear">
1662
1919
 
1663
1920
  <footer>
1664
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Fri Aug 04 2023 12:43:56 GMT-0700 (Pacific Daylight Time)
1921
+ 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)
1665
1922
  </footer>
1666
1923
 
1667
1924
  <script> prettyPrint(); </script>
@@ -134,7 +134,7 @@ module.exports = {
134
134
  <br class="clear">
135
135
 
136
136
  <footer>
137
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Fri Aug 04 2023 12:43:56 GMT-0700 (Pacific Daylight Time)
137
+ 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)
138
138
  </footer>
139
139
 
140
140
  <script> prettyPrint(); </script>
@@ -163,7 +163,7 @@ module.exports = Translator;
163
163
  <br class="clear">
164
164
 
165
165
  <footer>
166
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Fri Aug 04 2023 12:43:56 GMT-0700 (Pacific Daylight Time)
166
+ 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)
167
167
  </footer>
168
168
 
169
169
  <script> prettyPrint(); </script>
@@ -395,7 +395,7 @@ module.exports = {
395
395
  <br class="clear">
396
396
 
397
397
  <footer>
398
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Fri Aug 04 2023 12:43:56 GMT-0700 (Pacific Daylight Time)
398
+ 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)
399
399
  </footer>
400
400
 
401
401
  <script> prettyPrint(); </script>
@@ -539,6 +539,7 @@ module.exports = {
539
539
  cardinality: toEnum('Cardinality', 'list set single'),
540
540
  column: toEnum('Column', 'keys values'),
541
541
  direction: toDirectionEnum('Direction', 'BOTH IN OUT from_ to'),
542
+ dt: toEnum('DT', 'second minute hour day'),
542
543
  graphSONVersion: toEnum('GraphSONVersion', 'V1_0 V2_0 V3_0'),
543
544
  gryoVersion: toEnum('GryoVersion', 'V1_0 V3_0'),
544
545
  merge: toEnum('Merge', 'onCreate onMatch outV inV'),
@@ -565,7 +566,7 @@ module.exports = {
565
566
  <br class="clear">
566
567
 
567
568
  <footer>
568
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Fri Aug 04 2023 12:43:56 GMT-0700 (Pacific Daylight Time)
569
+ 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)
569
570
  </footer>
570
571
 
571
572
  <script> prettyPrint(); </script>
@@ -232,7 +232,7 @@ module.exports = {
232
232
  <br class="clear">
233
233
 
234
234
  <footer>
235
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Fri Aug 04 2023 12:43:56 GMT-0700 (Pacific Daylight Time)
235
+ 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)
236
236
  </footer>
237
237
 
238
238
  <script> prettyPrint(); </script>
@@ -102,6 +102,7 @@ const DataType = {
102
102
  METRICS: 0x2c,
103
103
  TRAVERSALMETRICS: 0x2d,
104
104
  MERGE: 0x2e,
105
+ DT: 0x2f,
105
106
 
106
107
  CHAR: 0x80,
107
108
  DURATION: 0x81,
@@ -140,7 +141,7 @@ module.exports = DataType;
140
141
  <br class="clear">
141
142
 
142
143
  <footer>
143
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Fri Aug 04 2023 12:43:56 GMT-0700 (Pacific Daylight Time)
144
+ 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)
144
145
  </footer>
145
146
 
146
147
  <script> prettyPrint(); </script>
@@ -122,7 +122,7 @@ module.exports = class GraphBinaryReader {
122
122
  <br class="clear">
123
123
 
124
124
  <footer>
125
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Fri Aug 04 2023 12:43:56 GMT-0700 (Pacific Daylight Time)
125
+ 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)
126
126
  </footer>
127
127
 
128
128
  <script> prettyPrint(); </script>
@@ -125,7 +125,7 @@ module.exports = class GraphBinaryWriter {
125
125
  <br class="clear">
126
126
 
127
127
  <footer>
128
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Fri Aug 04 2023 12:43:56 GMT-0700 (Pacific Daylight Time)
128
+ 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)
129
129
  </footer>
130
130
 
131
131
  <script> prettyPrint(); </script>
@@ -342,7 +342,7 @@ module.exports = {
342
342
  <br class="clear">
343
343
 
344
344
  <footer>
345
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Fri Aug 04 2023 12:43:56 GMT-0700 (Pacific Daylight Time)
345
+ 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)
346
346
  </footer>
347
347
 
348
348
  <script> prettyPrint(); </script>
@@ -546,7 +546,7 @@ module.exports = {
546
546
  <br class="clear">
547
547
 
548
548
  <footer>
549
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Fri Aug 04 2023 12:43:56 GMT-0700 (Pacific Daylight Time)
549
+ 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)
550
550
  </footer>
551
551
 
552
552
  <script> prettyPrint(); </script>
package/index.js CHANGED
@@ -67,6 +67,7 @@ module.exports = {
67
67
  cardinality: t.cardinality,
68
68
  column: t.column,
69
69
  direction: t.direction,
70
+ dt: t.dt,
70
71
  merge: t.merge,
71
72
  operator: t.operator,
72
73
  order: t.order,
@@ -46,6 +46,7 @@ class Client {
46
46
  * @param {Boolean} [options.pingEnabled] Setup ping interval. Defaults to: true.
47
47
  * @param {Number} [options.pingInterval] Ping request interval in ms if ping enabled. Defaults to: 60000.
48
48
  * @param {Number} [options.pongTimeout] Timeout of pong response in ms after sending a ping. Defaults to: 30000.
49
+ * @param {http.Agent} [options.agent] The http.Agent implementation to use.
49
50
  * @constructor
50
51
  */
51
52
  constructor(url, options = {}) {
@@ -46,6 +46,8 @@ const graphBinaryMimeType = 'application/vnd.graphbinary-v1.0';
46
46
  const pingIntervalDelay = 60 * 1000;
47
47
  const pongTimeoutDelay = 30 * 1000;
48
48
 
49
+ const uuidPattern = '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}';
50
+
49
51
  /**
50
52
  * Represents a single connection to a Gremlin Server.
51
53
  */
@@ -68,6 +70,7 @@ class Connection extends EventEmitter {
68
70
  * @param {Boolean} [options.pingEnabled] Setup ping interval. Defaults to: true.
69
71
  * @param {Number} [options.pingInterval] Ping request interval in ms if ping enabled. Defaults to: 60000.
70
72
  * @param {Number} [options.pongTimeout] Timeout of pong response in ms after sending a ping. Defaults to: 30000.
73
+ * @param {http.Agent} [options.agent] The http.Agent implementation to use.
71
74
  * @constructor
72
75
  */
73
76
  constructor(url, options) {
@@ -132,6 +135,7 @@ class Connection extends EventEmitter {
132
135
  cert: this.options.cert,
133
136
  pfx: this.options.pfx,
134
137
  rejectUnauthorized: this.options.rejectUnauthorized,
138
+ agent: this.options.agent,
135
139
  });
136
140
 
137
141
  this._ws.on('message', (data) => this._handleMessage(data));
@@ -168,6 +172,10 @@ class Connection extends EventEmitter {
168
172
  submit(processor, op, args, requestId) {
169
173
  // TINKERPOP-2847: Use lower case to prevent string comparison issues.
170
174
  const rid = (requestId || utils.getUuid()).toLowerCase();
175
+ if (!rid.match(uuidPattern)) {
176
+ throw new Error('Provided requestId "' + rid + '" is not a valid UUID.');
177
+ }
178
+
171
179
  return this.open().then(
172
180
  () =>
173
181
  new Promise((resolve, reject) => {
@@ -197,6 +205,9 @@ class Connection extends EventEmitter {
197
205
  stream(processor, op, args, requestId) {
198
206
  // TINKERPOP-2847: Use lower case to prevent string comparison issues.
199
207
  const rid = (requestId || utils.getUuid()).toLowerCase();
208
+ if (!rid.match(uuidPattern)) {
209
+ throw new Error('Provided requestId "' + rid + '" is not a valid UUID.');
210
+ }
200
211
 
201
212
  const readableStream = new Stream.Readable({
202
213
  objectMode: true,
@@ -52,6 +52,7 @@ class DriverRemoteConnection extends RemoteConnection {
52
52
  * @param {Boolean} [options.pingEnabled] Setup ping interval. Defaults to: true.
53
53
  * @param {Number} [options.pingInterval] Ping request interval in ms if ping enabled. Defaults to: 60000.
54
54
  * @param {Number} [options.pongTimeout] Timeout of pong response in ms after sending a ping. Defaults to: 30000.
55
+ * @param {http.Agent} [options.agent] The http.Agent implementation to use.
55
56
  * @constructor
56
57
  */
57
58
  constructor(url, options = {}) {