arangodb-driver 3.10.4 → 3.10.4.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (290) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/README.md +9 -11
  4. data/lib/arango/aql.rb +75 -9
  5. data/lib/arango/cursor.rb +6 -1
  6. data/lib/arango/database/analyzer.rb +3 -0
  7. data/lib/arango/database/aql_functions.rb +2 -0
  8. data/lib/arango/database/aql_queries.rb +2 -0
  9. data/lib/arango/database/aql_query_cache.rb +2 -0
  10. data/lib/arango/database/collections.rb +2 -0
  11. data/lib/arango/database/document_collections.rb +4 -2
  12. data/lib/arango/database/edge_collections.rb +2 -0
  13. data/lib/arango/database/foxx_services.rb +3 -0
  14. data/lib/arango/database/graphs.rb +2 -0
  15. data/lib/arango/database/http_route.rb +4 -1
  16. data/lib/arango/database/replication.rb +3 -1
  17. data/lib/arango/database/stream_transactions.rb +3 -0
  18. data/lib/arango/database/system_collections.rb +2 -0
  19. data/lib/arango/database/tasks.rb +2 -0
  20. data/lib/arango/database/transactions.rb +4 -1
  21. data/lib/arango/database/user.rb +2 -0
  22. data/lib/arango/database/view_access.rb +2 -0
  23. data/lib/arango/database.rb +4 -2
  24. data/lib/arango/document/base.rb +2 -0
  25. data/lib/arango/document/class_methods.rb +2 -0
  26. data/lib/arango/document/instance_methods.rb +2 -0
  27. data/lib/arango/document/mixin.rb +2 -0
  28. data/lib/arango/document.rb +3 -0
  29. data/lib/arango/document_collection/base.rb +2 -0
  30. data/lib/arango/document_collection/class_methods.rb +2 -0
  31. data/lib/arango/document_collection/documents.rb +2 -0
  32. data/lib/arango/document_collection/importing.rb +2 -0
  33. data/lib/arango/document_collection/indexes.rb +2 -0
  34. data/lib/arango/document_collection/instance_methods.rb +2 -0
  35. data/lib/arango/document_collection/mixin.rb +2 -0
  36. data/lib/arango/document_collection/replication.rb +2 -0
  37. data/lib/arango/document_collection/user.rb +2 -0
  38. data/lib/arango/driver/typhoeus.rb +2 -0
  39. data/lib/arango/edge/base.rb +2 -0
  40. data/lib/arango/edge/class_methods.rb +2 -0
  41. data/lib/arango/edge/instance_methods.rb +2 -0
  42. data/lib/arango/edge/mixin.rb +2 -0
  43. data/lib/arango/edge_collection/base.rb +2 -0
  44. data/lib/arango/edge_collection/class_methods.rb +2 -0
  45. data/lib/arango/edge_collection/edge_acces_2.rb +20 -20
  46. data/lib/arango/edge_collection/edges.rb +2 -0
  47. data/lib/arango/edge_collection/instance_methods.rb +2 -0
  48. data/lib/arango/edge_collection/mixin.rb +2 -0
  49. data/lib/arango/error.rb +5 -1
  50. data/lib/arango/error_db.rb +9 -0
  51. data/lib/arango/foxx.rb +3 -2
  52. data/lib/arango/graph/base.rb +2 -0
  53. data/lib/arango/graph/class_methods.rb +5 -2
  54. data/lib/arango/graph/definition.rb +2 -0
  55. data/lib/arango/graph/instance_methods.rb +7 -3
  56. data/lib/arango/graph/mixin.rb +2 -0
  57. data/lib/arango/helper/database_assignment.rb +2 -0
  58. data/lib/arango/helper/satisfaction.rb +2 -0
  59. data/lib/arango/helper/server_assignment.rb +2 -0
  60. data/lib/arango/index.rb +20 -3
  61. data/lib/arango/replication.rb +3 -2
  62. data/lib/arango/request.rb +67 -0
  63. data/lib/arango/requests/administration/availability.rb +3 -0
  64. data/lib/arango/requests/administration/cluster_endpoints.rb +3 -0
  65. data/lib/arango/requests/administration/create_task.rb +3 -0
  66. data/lib/arango/requests/administration/create_task_id.rb +3 -0
  67. data/lib/arango/requests/administration/delete_task.rb +3 -0
  68. data/lib/arango/requests/administration/echo.rb +3 -0
  69. data/lib/arango/requests/administration/endpoints.rb +3 -0
  70. data/lib/arango/requests/administration/engine.rb +3 -0
  71. data/lib/arango/requests/administration/execute.rb +3 -0
  72. data/lib/arango/requests/administration/get_log_level.rb +3 -0
  73. data/lib/arango/requests/administration/get_mode.rb +3 -0
  74. data/lib/arango/requests/administration/get_task.rb +3 -0
  75. data/lib/arango/requests/administration/list_tasks.rb +2 -0
  76. data/lib/arango/requests/administration/log.rb +2 -0
  77. data/lib/arango/requests/administration/metrics.rb +2 -0
  78. data/lib/arango/requests/administration/reload_routing.rb +2 -0
  79. data/lib/arango/requests/administration/role.rb +2 -0
  80. data/lib/arango/requests/administration/server_id.rb +2 -0
  81. data/lib/arango/requests/administration/set_log_level.rb +2 -0
  82. data/lib/arango/requests/administration/set_mode.rb +2 -0
  83. data/lib/arango/requests/administration/statistics.rb +2 -0
  84. data/lib/arango/requests/administration/statistics_description.rb +2 -0
  85. data/lib/arango/requests/administration/status.rb +2 -0
  86. data/lib/arango/requests/administration/target_version.rb +2 -0
  87. data/lib/arango/requests/administration/time.rb +2 -0
  88. data/lib/arango/requests/administration/version.rb +2 -0
  89. data/lib/arango/requests/analyzer/create.rb +3 -0
  90. data/lib/arango/requests/analyzer/delete.rb +3 -0
  91. data/lib/arango/requests/analyzer/get.rb +3 -0
  92. data/lib/arango/requests/analyzer/list.rb +3 -0
  93. data/lib/arango/requests/aql/clear_query_result_cache.rb +3 -0
  94. data/lib/arango/requests/aql/create_function.rb +3 -0
  95. data/lib/arango/requests/aql/current_queries.rb +3 -0
  96. data/lib/arango/requests/aql/delete_function.rb +4 -0
  97. data/lib/arango/requests/aql/delete_slow_query_list.rb +3 -0
  98. data/lib/arango/requests/aql/explain.rb +3 -0
  99. data/lib/arango/requests/aql/get_query_result_cache_properties.rb +3 -0
  100. data/lib/arango/requests/aql/get_query_tracking_properties.rb +3 -0
  101. data/lib/arango/requests/aql/get_slow_query_list.rb +3 -0
  102. data/lib/arango/requests/aql/kill_query.rb +4 -0
  103. data/lib/arango/requests/aql/list_functions.rb +2 -0
  104. data/lib/arango/requests/aql/parse.rb +2 -0
  105. data/lib/arango/requests/aql/query_result_cache_entries.rb +2 -0
  106. data/lib/arango/requests/aql/set_query_result_cache_properties.rb +2 -0
  107. data/lib/arango/requests/aql/set_query_tracking_properties.rb +2 -0
  108. data/lib/arango/requests/backup/create.rb +3 -0
  109. data/lib/arango/requests/backup/delete.rb +3 -0
  110. data/lib/arango/requests/backup/download.rb +3 -0
  111. data/lib/arango/requests/backup/list.rb +3 -0
  112. data/lib/arango/requests/backup/restore.rb +2 -0
  113. data/lib/arango/requests/backup/upload.rb +2 -0
  114. data/lib/arango/requests/bulk/execute.rb +3 -0
  115. data/lib/arango/requests/bulk/export.rb +3 -0
  116. data/lib/arango/requests/bulk/import_document.rb +3 -0
  117. data/lib/arango/requests/bulk/import_json.rb +3 -0
  118. data/lib/arango/requests/cluster/health.rb +3 -0
  119. data/lib/arango/requests/cluster/maintenance.rb +2 -0
  120. data/lib/arango/requests/cluster/statistics.rb +3 -1
  121. data/lib/arango/requests/collection/checksum.rb +3 -0
  122. data/lib/arango/requests/collection/count.rb +3 -0
  123. data/lib/arango/requests/collection/create.rb +3 -0
  124. data/lib/arango/requests/collection/delete.rb +3 -0
  125. data/lib/arango/requests/collection/get.rb +3 -0
  126. data/lib/arango/requests/collection/get_properties.rb +3 -0
  127. data/lib/arango/requests/collection/list_all.rb +3 -0
  128. data/lib/arango/requests/collection/load.rb +2 -0
  129. data/lib/arango/requests/collection/load_indexes_into_memory.rb +2 -0
  130. data/lib/arango/requests/collection/recalculate_count.rb +2 -0
  131. data/lib/arango/requests/collection/rename.rb +2 -0
  132. data/lib/arango/requests/collection/responsible_shard.rb +2 -0
  133. data/lib/arango/requests/collection/revision.rb +2 -0
  134. data/lib/arango/requests/collection/rotate_journal.rb +2 -0
  135. data/lib/arango/requests/collection/set_properties.rb +2 -0
  136. data/lib/arango/requests/collection/shards.rb +2 -0
  137. data/lib/arango/requests/collection/statistics.rb +2 -0
  138. data/lib/arango/requests/collection/truncate.rb +2 -0
  139. data/lib/arango/requests/collection/unload.rb +3 -1
  140. data/lib/arango/requests/cursor/create.rb +3 -0
  141. data/lib/arango/requests/cursor/delete.rb +3 -0
  142. data/lib/arango/requests/cursor/next_batch.rb +2 -0
  143. data/lib/arango/requests/database/create.rb +3 -0
  144. data/lib/arango/requests/database/delete.rb +3 -0
  145. data/lib/arango/requests/database/get_information.rb +3 -0
  146. data/lib/arango/requests/database/list_accessible.rb +3 -0
  147. data/lib/arango/requests/database/list_all.rb +3 -0
  148. data/lib/arango/requests/document/create.rb +3 -0
  149. data/lib/arango/requests/document/create_multiple.rb +3 -0
  150. data/lib/arango/requests/document/delete.rb +3 -0
  151. data/lib/arango/requests/document/delete_multiple.rb +3 -0
  152. data/lib/arango/requests/document/get.rb +3 -0
  153. data/lib/arango/requests/document/get_multiple.rb +3 -0
  154. data/lib/arango/requests/document/head.rb +3 -0
  155. data/lib/arango/requests/document/replace.rb +2 -0
  156. data/lib/arango/requests/document/replace_multiple.rb +2 -0
  157. data/lib/arango/requests/document/update.rb +2 -0
  158. data/lib/arango/requests/document/update_multiple.rb +2 -0
  159. data/lib/arango/requests/foxx/commit.rb +3 -0
  160. data/lib/arango/requests/foxx/description.rb +3 -0
  161. data/lib/arango/requests/foxx/disable_development_mode.rb +3 -0
  162. data/lib/arango/requests/foxx/download_bundle.rb +3 -0
  163. data/lib/arango/requests/foxx/enable_development_mode.rb +3 -0
  164. data/lib/arango/requests/foxx/get_configuration.rb +3 -0
  165. data/lib/arango/requests/foxx/get_dependencies.rb +3 -0
  166. data/lib/arango/requests/foxx/install.rb +3 -0
  167. data/lib/arango/requests/foxx/list_all.rb +3 -0
  168. data/lib/arango/requests/foxx/list_scripts.rb +2 -0
  169. data/lib/arango/requests/foxx/readme.rb +2 -0
  170. data/lib/arango/requests/foxx/replace.rb +2 -0
  171. data/lib/arango/requests/foxx/replace_configuration.rb +2 -0
  172. data/lib/arango/requests/foxx/replace_dependencies.rb +2 -0
  173. data/lib/arango/requests/foxx/run_script.rb +2 -0
  174. data/lib/arango/requests/foxx/run_tests.rb +2 -0
  175. data/lib/arango/requests/foxx/swagger.rb +2 -0
  176. data/lib/arango/requests/foxx/uninstall.rb +2 -0
  177. data/lib/arango/requests/foxx/update_configuration.rb +2 -0
  178. data/lib/arango/requests/foxx/update_dependencies.rb +2 -0
  179. data/lib/arango/requests/foxx/upgrade.rb +3 -1
  180. data/lib/arango/requests/graph/add_edge_definition.rb +2 -0
  181. data/lib/arango/requests/graph/add_vertex_collection.rb +2 -0
  182. data/lib/arango/requests/graph/create.rb +3 -0
  183. data/lib/arango/requests/graph/create_edge.rb +3 -0
  184. data/lib/arango/requests/graph/create_vertex.rb +3 -0
  185. data/lib/arango/requests/graph/delete.rb +3 -0
  186. data/lib/arango/requests/graph/delete_edge.rb +3 -0
  187. data/lib/arango/requests/graph/delete_vertex.rb +3 -0
  188. data/lib/arango/requests/graph/get.rb +3 -0
  189. data/lib/arango/requests/graph/get_edge.rb +3 -0
  190. data/lib/arango/requests/graph/get_vertex.rb +3 -0
  191. data/lib/arango/requests/graph/list_all.rb +3 -0
  192. data/lib/arango/requests/graph/list_edge_definitions.rb +2 -0
  193. data/lib/arango/requests/graph/list_vertex_collections.rb +2 -0
  194. data/lib/arango/requests/graph/remove_edge_definition.rb +2 -0
  195. data/lib/arango/requests/graph/remove_vertex_collection.rb +2 -0
  196. data/lib/arango/requests/graph/replace_edge.rb +2 -0
  197. data/lib/arango/requests/graph/replace_edge_definition.rb +2 -0
  198. data/lib/arango/requests/graph/replace_vertex.rb +2 -0
  199. data/lib/arango/requests/graph/update_edge.rb +2 -0
  200. data/lib/arango/requests/graph/update_vertex.rb +2 -0
  201. data/lib/arango/requests/graph_edges/read.rb +2 -0
  202. data/lib/arango/requests/graph_traversal/execute.rb +3 -0
  203. data/lib/arango/requests/index/create.rb +3 -0
  204. data/lib/arango/requests/index/delete.rb +3 -0
  205. data/lib/arango/requests/index/get.rb +3 -0
  206. data/lib/arango/requests/index/list_all.rb +3 -0
  207. data/lib/arango/requests/job/cancel.rb +3 -0
  208. data/lib/arango/requests/job/delete.rb +3 -0
  209. data/lib/arango/requests/job/get.rb +3 -0
  210. data/lib/arango/requests/job/list.rb +3 -0
  211. data/lib/arango/requests/job/result.rb +2 -0
  212. data/lib/arango/requests/replication/create_dump_batch.rb +3 -0
  213. data/lib/arango/requests/replication/delete_dump_batch.rb +3 -0
  214. data/lib/arango/requests/replication/get_applier_config.rb +3 -0
  215. data/lib/arango/requests/replication/get_applier_state.rb +3 -0
  216. data/lib/arango/requests/replication/get_cluster_inventory.rb +3 -0
  217. data/lib/arango/requests/replication/get_dump.rb +3 -0
  218. data/lib/arango/requests/replication/get_inventory.rb +3 -0
  219. data/lib/arango/requests/replication/get_last_tick.rb +3 -0
  220. data/lib/arango/requests/replication/get_log_first_tick.rb +3 -0
  221. data/lib/arango/requests/replication/get_log_follow.rb +3 -0
  222. data/lib/arango/requests/replication/get_logger_state.rb +3 -0
  223. data/lib/arango/requests/replication/get_logger_tick_ranges.rb +3 -0
  224. data/lib/arango/requests/replication/get_server_id.rb +3 -0
  225. data/lib/arango/requests/replication/get_tail.rb +3 -0
  226. data/lib/arango/requests/replication/get_tick_ranges.rb +3 -0
  227. data/lib/arango/requests/replication/make_slave.rb +2 -0
  228. data/lib/arango/requests/replication/prolong_dump_batch.rb +2 -0
  229. data/lib/arango/requests/replication/set_applier_config.rb +2 -0
  230. data/lib/arango/requests/replication/start_applier.rb +2 -0
  231. data/lib/arango/requests/replication/stop_applier.rb +2 -0
  232. data/lib/arango/requests/replication/synchronize.rb +2 -0
  233. data/lib/arango/requests/task/all.rb +2 -0
  234. data/lib/arango/requests/task/create.rb +3 -0
  235. data/lib/arango/requests/task/create_with_id.rb +3 -0
  236. data/lib/arango/requests/task/delete.rb +3 -0
  237. data/lib/arango/requests/task/get.rb +3 -0
  238. data/lib/arango/requests/transaction/begin.rb +3 -0
  239. data/lib/arango/requests/transaction/commit.rb +3 -0
  240. data/lib/arango/requests/transaction/delete.rb +3 -0
  241. data/lib/arango/requests/transaction/execute.rb +3 -0
  242. data/lib/arango/requests/transaction/list_running.rb +2 -0
  243. data/lib/arango/requests/transaction/status.rb +2 -0
  244. data/lib/arango/requests/user/clear_collection_access_level.rb +3 -0
  245. data/lib/arango/requests/user/clear_database_access_level.rb +3 -0
  246. data/lib/arango/requests/user/create.rb +3 -0
  247. data/lib/arango/requests/user/delete.rb +3 -0
  248. data/lib/arango/requests/user/get.rb +3 -0
  249. data/lib/arango/requests/user/get_collection_access_level.rb +3 -0
  250. data/lib/arango/requests/user/get_database_access_level.rb +3 -0
  251. data/lib/arango/requests/user/list_all.rb +3 -1
  252. data/lib/arango/requests/user/list_databases.rb +2 -0
  253. data/lib/arango/requests/user/replace.rb +2 -0
  254. data/lib/arango/requests/user/set_collection_access_level.rb +2 -0
  255. data/lib/arango/requests/user/set_database_access_level.rb +2 -0
  256. data/lib/arango/requests/user/update.rb +2 -0
  257. data/lib/arango/requests/view/create_search_view.rb +3 -0
  258. data/lib/arango/requests/view/delete.rb +4 -1
  259. data/lib/arango/requests/view/get.rb +3 -0
  260. data/lib/arango/requests/view/get_properties.rb +3 -0
  261. data/lib/arango/requests/view/list_all.rb +2 -0
  262. data/lib/arango/requests/view/rename.rb +2 -0
  263. data/lib/arango/requests/view/set_search_view_properties.rb +3 -1
  264. data/lib/arango/requests/view/update_search_view_properties.rb +2 -0
  265. data/lib/arango/requests/wal/flush.rb +3 -0
  266. data/lib/arango/requests/wal/get_properties.rb +4 -0
  267. data/lib/arango/requests/wal/set_properties.rb +2 -0
  268. data/lib/arango/requests/wal/transactions.rb +2 -0
  269. data/lib/arango/result.rb +4 -0
  270. data/lib/arango/search_view.rb +5 -1
  271. data/lib/arango/server/administration.rb +5 -1
  272. data/lib/arango/server/agency.rb +2 -0
  273. data/lib/arango/server/async.rb +3 -1
  274. data/lib/arango/server/databases.rb +2 -0
  275. data/lib/arango/server/monitoring.rb +2 -0
  276. data/lib/arango/server/opal_support.rb +2 -0
  277. data/lib/arango/server/tasks.rb +2 -0
  278. data/lib/arango/server/user.rb +2 -0
  279. data/lib/arango/server.rb +3 -2
  280. data/lib/arango/task.rb +3 -2
  281. data/lib/arango/transaction.rb +3 -2
  282. data/lib/arango/user.rb +78 -39
  283. data/lib/arango/version.rb +2 -1
  284. data/lib/arango/view/basics.rb +6 -0
  285. data/lib/arango/view.rb +3 -2
  286. data/lib/arango.rb +42 -0
  287. data/lib/arangodb-driver.rb +2 -7
  288. metadata +2 -46
  289. data/arango_opal.js +0 -25855
  290. data/lib/arango/document_collection/vertices.rb +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5a2b41f2d171312b42060c35661e16339cea0c932339db26eae7a40e0e1b2b54
4
- data.tar.gz: 520ad0f13d405d6a6ebc6012514e5de4b9105856e3510e8540886b6d6ca088f2
3
+ metadata.gz: 6b0e45b676274654db012747ff27323c0f2b9e0e6ef02d7eed84e042dd5c68bb
4
+ data.tar.gz: 9c9e8b171d889b19d4b433c5e2f25b096abf8eec372f5dc8001d8ab150bd1f18
5
5
  SHA512:
6
- metadata.gz: bfe5232d7621188434f82606d8794a27ec6ce0ad1cc04e313bc7d5702c92e21f9207eb964c361b14b86696cdfa9b75e7b81912c55eb5a6adaa507c0e20db3fb3
7
- data.tar.gz: 63c288da51f0395401d6a56fb3ad67287390af356006f94d16156a478cde9ed3d0c6ef47b4c987dedb32f805e9e79be85fb0fd2e93ff7bbe9f996aa12672113f
6
+ metadata.gz: 656efbd84747f9b0beeadaac4d81e47da2418b46ddcf9d56eccdc34c74aa32613b5479e0d04ce854b3fdd7676e0e6d955c67e058fabe5eb037f058773434d36f
7
+ data.tar.gz: 42c306840713aec3f08e287ec09419c97b8995ae7e86a8c3f7bb5450ca39dc7fe4a9e8ac41464c66fa581c29bda44d8b4527527441025b9bf42a45fd075788dd
data/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2016 StefanoMartin, 2019 Jan Biedermann
3
+ Copyright (c) 2016 StefanoMartin, 2019 Jan Biedermann, 2023 Klaus Kämpf
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
data/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
  arangodb-driver
3
3
  <br/>
4
4
  <br/>
5
- <img src="https://raw.githubusercontent.com/isomorfeus/arango-driver/master/docs/arango-driver.png" align="center"/>
5
+ <img src="https://raw.githubusercontent.com/kkaempf/arangodb-driver/master/docs/arangodb-driver.png" align="center"/>
6
6
  </h1>
7
7
 
8
8
  arangodb-driver is a drop-in replacement for the (archived) [arango-driver](https://github.com/janbiedermann/arango-driver).
@@ -21,14 +21,12 @@ The history of arangodb-driver is long and twisted.
21
21
  It started with [ArangoRB](https://github.com/StefanoMartin/ArangoRB), converted to [arango-driver](https://github.com/janbiedermann/arango-driver)
22
22
  and converted again to [arangodb-driver](https://github.com/kkaempf/arangodb-driver).
23
23
 
24
- The main purpose of the last rename was to get it published at [rubygems.org](https://rubygems.org)
24
+ The main purpose of the last rename was to get it published at [rubygems.org](https://rubygems.org/gems/arangodb-driver)
25
25
 
26
26
  ## Installation
27
27
 
28
- This doesnt work yet, gem not published yet:
29
28
  To install arangodb-driver: `gem install arangodb-driver`
30
29
  To use it in your application: `require "arangodb-driver"`
31
- Please install from the repo instead.
32
30
 
33
31
  ## Community and Support
34
32
 
@@ -90,7 +88,7 @@ Password is a mandatory field.
90
88
 
91
89
  ### Returning results
92
90
 
93
- arangodb-driver try always to store the information obtained from ArangoDB in an instance.
91
+ arangodb-driver tries always to store the information obtained from ArangoDB in an instance.
94
92
  If you need to receive the output, you can return it with:
95
93
 
96
94
  ``` ruby
@@ -440,11 +438,11 @@ It means that we skip the first three Documents, we can retrieve the next 100 Do
440
438
  To retrieve specific Document you can use:
441
439
 
442
440
  ``` ruby
443
- myCollection.documentsMatch match: {value: 4} # All Documents of the Collection with value equal to 4
444
- myCollection.documentMatch match: {value: 4} # The first Document of the Collection with value equal to 4
445
- myCollection.documentByKeys keys: ["4546", "4646"] # Documents of the Collection with the keys in the Array
441
+ myCollection.documentsMatch match: {value: 4} # All Documents of the Collection with value equal to 4
442
+ myCollection.documentMatch match: {value: 4} # The first Document of the Collection with value equal to 4
443
+ myCollection.documentByKeys keys: ["4546", "4646"] # Documents of the Collection with the keys in the Array
446
444
  myCollection.documentByName names: ["4546", "4646"] # Documents of the Collection with the name in the Array
447
- myCollection.random # A random Document of the Collection
445
+ myCollection.random # A random Document of the Collection
448
446
  ```
449
447
 
450
448
  #### Modifying multiple documents
@@ -476,7 +474,7 @@ One-to-more with one Edge class (and More-to-one with one Edge class)
476
474
  * [myDocA] --(myEdge)--> [myDocB]
477
475
  * [myDocA] --(myEdge)--> [myDocC]
478
476
 
479
- ``` ruby
477
+ ``` ruby
480
478
  myEdgeCollection.createEdges document: myEdge, from: myDocA, to: [myDocB, myDocC]
481
479
  ```
482
480
 
@@ -487,7 +485,7 @@ More-to-More with one Edge class
487
485
  * [myDocA] --(myEdge)--> [myDocD]
488
486
  * [myDocB] --(myEdge)--> [myDocD]
489
487
 
490
- ``` ruby
488
+ ``` ruby
491
489
  myEdgeCollection.createEdges document: myEdge, from: [myDocA, myDocB], to: [myDocC, myDocD]
492
490
  ```
493
491
 
data/lib/arango/aql.rb CHANGED
@@ -1,18 +1,21 @@
1
- # === AQL ===
2
-
3
1
  module Arango
2
+ #
3
+ # Arango Query Language
4
+ #
4
5
  class AQL
5
6
  include Arango::Helper::Satisfaction
6
7
 
7
8
  class << self
8
9
 
9
- # id: the query’s id
10
- # query: the query string (potentially truncated)
11
- # bindVars: the bind parameter values used by the query
12
- # started: the date and time when the query was started
13
- # runTime: the query’s run time up to the point the list of queries was queried
14
- # state: the querys current execution state (as a string)
15
- # stream: whether or not the query uses a streaming cursor
10
+ # @param query_hash [Hash]
11
+ # * id: the query's id
12
+ # * query: the query string (potentially truncated)
13
+ # * bindVars: the bind parameter values used by the query
14
+ # * started: the date and time when the query was started
15
+ # * runTime: the query's run time up to the point the list of queries was queried
16
+ # * state: the query's current execution state (as a string)
17
+ # * stream: whether or not the query uses a streaming cursor
18
+ # @return [Arango::AQL]
16
19
  def from_result_hash(query_hash)
17
20
  new_query_hash = query_hash.transform_keys { |k| k.to_s.underscore.to_sym }
18
21
  new_query_hash[:query_id] = query_hash.delete(:id)
@@ -20,6 +23,33 @@ module Arango
20
23
  end
21
24
  end
22
25
 
26
+ # Create a new AQL query
27
+ # @param query
28
+ # @param database
29
+ # @param batch_size
30
+ # @param bind_vars
31
+ # @param cache
32
+ # @param count
33
+ # @param fail_on_warning
34
+ # @param full_count
35
+ # @param intermediate_commit_count
36
+ # @param intermediate_commit_size
37
+ # @param max_plans
38
+ # @param max_transaction_size
39
+ # @param max_warning_count
40
+ # @param memory_limit
41
+ # @param optimizer_rules
42
+ # @param profile
43
+ # @param satellite_sync_wait
44
+ # @param skip_inaccessible_collections
45
+ # @param ttl
46
+ # @param query_id
47
+ # @param run_time
48
+ # @param started
49
+ # @param state
50
+ # @param stream
51
+ # @param block
52
+ # @param &ruby_block
23
53
  def initialize(query:, database:, batch_size: nil, bind_vars: nil, cache: nil, count: nil, fail_on_warning: nil, full_count: nil,
24
54
  intermediate_commit_count: nil, intermediate_commit_size: nil, max_plans: nil, max_transaction_size: nil,
25
55
  max_warning_count: nil, memory_limit: nil, optimizer_rules: nil, profile: nil, satellite_sync_wait: nil,
@@ -65,6 +95,8 @@ module Arango
65
95
  send(:optimizer_rules=, optimizer_rules) if optimizer_rules
66
96
  end
67
97
 
98
+ # set optimizer rules
99
+ # @param attrs [Hash]
68
100
  def optimizer_rules=(attrs)
69
101
  @optimizer_rules = attrs
70
102
  if attrs.nil?
@@ -74,6 +106,26 @@ module Arango
74
106
  end
75
107
  end
76
108
 
109
+ # @!attribute [r] failOnWarning
110
+ # @return [Boolean] fail on warning
111
+ # @!attribute [r] fullCount
112
+ # @return [Integer] full count
113
+ # @!attribute [r] intermediateCommitCount
114
+ # @return [Integer] intermediate commit count
115
+ # @!attribute [r] intermediateCommitSize
116
+ # @return [Integer] intermediate commit size
117
+ # @!attribute [r] maxPlans
118
+ # @return [Integer] max plans
119
+ # @!attribute [r] maxTransactionSize
120
+ # @return [Integer] max transaction size
121
+ # @!attribute [r] maxWarningCount
122
+ # @return [Integer] max warning count
123
+ # @!attribute [r] profile
124
+ # @return [Hash] profile
125
+ # @!attribute [r] satelliteSyncWait
126
+ # @return [Boolean] satellite sync wait
127
+ # @!attribute [r] skipInaccessibleCollections
128
+ # @return [Boolean] skip inaccessible collections
77
129
  %w[failOnWarning fullCount intermediateCommitCount intermediateCommitSize maxPlans maxTransactionSize maxWarningCount
78
130
  profile satelliteSyncWait skipInaccessibleCollections].each do |param_name|
79
131
  var_name = param_name.underscore.to_sym
@@ -88,10 +140,14 @@ module Arango
88
140
  attr_reader :server, :cached, :database, :extra, :id, :id_cache, :optimizer_rules, :result
89
141
  attr_reader :run_time, :started, :state, :stream
90
142
 
143
+ # check if more results are pending
144
+ # @return [Boolean]
91
145
  def has_more?
92
146
  @has_more
93
147
  end
94
148
 
149
+ # return Hash representation
150
+ # @return [Hash]
95
151
  def to_h
96
152
  {
97
153
  batchSize: @batch_size,
@@ -108,6 +164,9 @@ module Arango
108
164
  }.delete_if{|_,v| v.nil?}
109
165
  end
110
166
 
167
+ # run an AQL request
168
+ # @param &block
169
+ # @return [Arango::AQL] (if no block passed)
111
170
  def request
112
171
  body = {
113
172
  batchSize: @batch_size,
@@ -125,10 +184,13 @@ module Arango
125
184
  @block ? @block.call(self, result) : self
126
185
  end
127
186
 
187
+ # see {request}
128
188
  def execute
129
189
  request
130
190
  end
131
191
 
192
+ # get next result of query
193
+ # @return [Arango::AQL]
132
194
  def next
133
195
  if @has_more
134
196
  result = Arango::Requests::Cursor::NextBatch.execute(server: @server, args: { id: @id })
@@ -139,11 +201,13 @@ module Arango
139
201
  end
140
202
  end
141
203
 
204
+ # delete current query
142
205
  def delete
143
206
  Arango::Requests::Cursor::Delete.execute(server: @server, args: { id: @id })
144
207
  true
145
208
  end
146
209
 
210
+ # kill current query
147
211
  def kill
148
212
  Arango::Requests::AQL::KillQuery.execute(server: @server, args: { id: @query_id })
149
213
  true
@@ -151,6 +215,7 @@ module Arango
151
215
 
152
216
  # === PROPERTY QUERY ===
153
217
 
218
+ # explain current query
154
219
  def explain
155
220
  body = {
156
221
  query: @query,
@@ -160,6 +225,7 @@ module Arango
160
225
  Arango::Requests::AQL::Explain.execute(server: @server, body: body)
161
226
  end
162
227
 
228
+ # parse current query
163
229
  def parse
164
230
  Arango::Requests::AQL::Parse.execute(server: @server, body: { query: @query })
165
231
  end
data/lib/arango/cursor.rb CHANGED
@@ -1,4 +1,9 @@
1
+
1
2
  module Arango
3
+ #
4
+ # Arango Cursor
5
+ # - not implemented -
6
+ #
2
7
  class Cursor
3
8
  def has_next?
4
9
 
@@ -64,4 +69,4 @@ module Arango
64
69
 
65
70
  end
66
71
  end
67
- end
72
+ end
@@ -1,5 +1,8 @@
1
1
  module Arango
2
+ # Arango Database
2
3
  class Database
4
+ # Arango Database Analyzer
5
+ # - not implemented -
3
6
  module Analyzer
4
7
  def create_analyzer
5
8
  # TODO
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Database
2
3
  class Database
4
+ # Arango Database AQLFunctions
3
5
  module AQLFunctions
4
6
 
5
7
  def list_aql_functions(namespace: nil)
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Database
2
3
  class Database
4
+ # Arango Database AQLQueries
3
5
  module AQLQueries
4
6
  def new_aql(query:, batch_size: nil, bind_vars: nil, cache: nil, count: nil, fail_on_warning: nil, full_count: nil,
5
7
  intermediate_commit_count: nil, intermediate_commit_size: nil, max_plans: nil, max_transaction_size: nil,
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Database
2
3
  class Database
4
+ # Arango Database AQLQueryCache
3
5
  module AQLQueryCache
4
6
 
5
7
  def clear_query_cache
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Database
2
3
  class Database
4
+ # Arango Database Collections
3
5
  module Collections
4
6
  # Retrieves all collections from the database.
5
7
  # @param exclude_system [Boolean] Optional, default true, exclude system collections.
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Database
2
3
  class Database
4
+ # Arango Database DocumentCollections
3
5
  module DocumentCollections
4
6
  # Retrieves all document collections from the database.
5
7
  # @param exclude_system [Boolean] Optional, default true, exclude system collections.
@@ -13,9 +15,9 @@ module Arango
13
15
 
14
16
  # Creates a new document collection.
15
17
  # @param name [String] The name of the collection.
16
- # @param type [Symbol] One of :document or :edge, the collection type, optional, default: :document.
18
+ # @param is_system [Boolean] set true to create a system collection, defaults to false
17
19
  # @return [Arango::DocumentCollection::Base] The instance of the collection created.
18
- def create_document_collection(name:, is_system: false)
20
+ def create_document_collection(name:, type: :document, is_system: false)
19
21
  Arango::DocumentCollection::Base.new(name: name, database: self, is_system: is_system).create
20
22
  end
21
23
  def batch_create_document_collection(name:, is_system: false)
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Database
2
3
  class Database
4
+ # Arango Database EdgeCollections
3
5
  module EdgeCollections
4
6
  # Retrieves all edge collections from the database.
5
7
  # @param exclude_system [Boolean] Optional, default true, exclude system collections.
@@ -1,5 +1,8 @@
1
1
  module Arango
2
+ # Arango Database
2
3
  class Database
4
+ # Arango Database FoxxServices
5
+ # - not implemented -
3
6
  module FoxxServices
4
7
  # === FOXX ===
5
8
  def install_service
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Database
2
3
  class Database
4
+ # Arango Database Graphs
3
5
  module Graphs
4
6
  def all_graphs
5
7
  Arango::Graph::Base.all(database: self)
@@ -1,9 +1,12 @@
1
1
  module Arango
2
+ # Arango Database
2
3
  class Database
4
+ # Arango Database HTTPRoute
5
+ # - not implemented -
3
6
  module HTTPRoute
4
7
  def route
5
8
  # TODO
6
9
  end
7
10
  end
8
11
  end
9
- end
12
+ end
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Database
2
3
  class Database
4
+ # Arango Database Replication
3
5
  module Replication
4
6
  # === REPLICATION ===
5
7
 
@@ -93,4 +95,4 @@ module Arango
93
95
 
94
96
  end
95
97
  end
96
- end
98
+ end
@@ -1,5 +1,8 @@
1
1
  module Arango
2
+ # Arango Database
2
3
  class Database
4
+ # Arango Database StreamTransactions
5
+ # - not implemented -
3
6
  module StreamTransactions
4
7
  def begin_stream_transaction
5
8
 
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Database
2
3
  class Database
4
+ # Arango Database SystemCollections
3
5
  module SystemCollections
4
6
  # Retrieves all collections from the database.
5
7
  # @param exclude_system [Boolean] Optional, default true, exclude system collections.
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Database
2
3
  class Database
4
+ # Arango Database Tasks
3
5
  module Tasks
4
6
  # Get all tasks.
5
7
  # @return [Array<Arango::Task>]
@@ -1,5 +1,8 @@
1
1
  module Arango
2
+ # Arango Database
2
3
  class Database
4
+ # Arango Database Transactions
5
+ # - not implemented -
3
6
  module Transactions
4
7
  # === TRANSACTION ===
5
8
 
@@ -12,4 +15,4 @@ module Arango
12
15
  end
13
16
  end
14
17
  end
15
- end
18
+ end
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Database
2
3
  class Database
4
+ # Arango Database User
3
5
  module User
4
6
  def check_user(user)
5
7
  user = Arango::User.new(user: user) if user.is_a?(String)
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Database
2
3
  class Database
4
+ # Arango Database ViewAccess
3
5
  module ViewAccess
4
6
  def create_search_view
5
7
  # TODO
@@ -1,6 +1,7 @@
1
- # === DATABASE ===
2
-
3
1
  module Arango
2
+ #
3
+ # Arango Database
4
+ #
4
5
  class Database
5
6
  include Arango::Helper::Satisfaction
6
7
 
@@ -34,6 +35,7 @@ module Arango
34
35
  list_user_databases(server: server).map{ |db| Arango::Database.new(name: db, server: server).reload }
35
36
  end
36
37
 
38
+ # Create a new instance of self
37
39
  def create()
38
40
  self.new.create
39
41
  end
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Document
2
3
  module Document
4
+ # Arango Document Base
3
5
  class Base
4
6
  include Arango::Document::Mixin
5
7
  end
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Document
2
3
  module Document
4
+ # Arango Document ClassMethods
3
5
  module ClassMethods
4
6
  #@!visibility private
5
7
  def self.extended(base)
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Document
2
3
  module Document
4
+ # Arango Document InstanceMethods
3
5
  module InstanceMethods
4
6
 
5
7
  attr_accessor :ignore_revs, :wait_for_sync
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Document
2
3
  module Document
4
+ # Arango Document Mixin
3
5
  module Mixin
4
6
  #@!visibility private
5
7
  def self.included(base)
@@ -1,4 +1,7 @@
1
1
  module Arango
2
+ #
3
+ # Arango Document
4
+ #
2
5
  module Document
3
6
  include Arango::Document::Mixin
4
7
  end
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango DocumentCollection
2
3
  module DocumentCollection
4
+ # Arango DocumentCollection Base
3
5
  class Base
4
6
  include Arango::DocumentCollection::Mixin
5
7
  end
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango DocumentCollection
2
3
  module DocumentCollection
4
+ # Arango DocumentCollection ClassMethods
3
5
  module ClassMethods
4
6
  def new(database: Arango.current_database, graph: nil,
5
7
  name:, id: nil, globally_unique_id: nil, is_system: false, status: nil, type: :document,
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango DocumentCollection
2
3
  module DocumentCollection
4
+ # Arango DocumentCollection Documents
3
5
  module Documents
4
6
  def new_document(key: nil, attributes: {}, wait_for_sync: nil)
5
7
  Arango::Document::Base.new(key: key, attributes: attributes, collection: self, wait_for_sync: wait_for_sync)
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango DocumentCollection
2
3
  module DocumentCollection
4
+ # Arango DocumentCollection Importing
3
5
  module Importing
4
6
  # === IMPORT ===
5
7
 
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango DocumentCollection
2
3
  module DocumentCollection
4
+ # Arango DocumentCollection Indexes
3
5
  module Indexes
4
6
  # === INDEXES ===
5
7
  def create_index(type: "hash", fields:, unique: nil, sparse: nil,
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango DocumentCollection
2
3
  module DocumentCollection
4
+ # Arango DocumentCollection InstanceMethods
3
5
  module InstanceMethods
4
6
 
5
7
  # Instantiate a new collection.
@@ -1,8 +1,10 @@
1
1
  module Arango
2
+ # Arango DocumentCollection
2
3
  module DocumentCollection
3
4
  STATES = %i[unknown new_born unloaded loaded being_unloaded deleted loading] # do not sort, index is used
4
5
  TYPES = %i[unknown unknown document edge] # do not sort, index is used
5
6
 
7
+ # Arango DocumentCollection Mixin
6
8
  module Mixin
7
9
  #@!visibility private
8
10
  def self.included(base)
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango DocumentCollection
2
3
  module DocumentCollection
4
+ # Arango DocumentCollection Replication
3
5
  module Replication
4
6
  # === REPLICATION ===
5
7
 
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango DocumentCollection
2
3
  module DocumentCollection
4
+ # Arango DocumentCollection User
3
5
  module User
4
6
  # === USER ACCESS ===
5
7
 
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Driver
2
3
  module Driver
4
+ # Arango Driver Typhoeus
3
5
  class Typhoeus
4
6
  def initialize(base_uri:, options:)
5
7
  @base_uri = base_uri
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Edge
2
3
  module Edge
4
+ # Arango Edge Base
3
5
  class Base
4
6
  include Arango::Edge::Mixin
5
7
  end
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Edge
2
3
  module Edge
4
+ # Arango Edge ClassMethods
3
5
  module ClassMethods
4
6
  #@!visibility private
5
7
  def self.extended(base)
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Edge
2
3
  module Edge
4
+ # Arango Edge InstanceMethods
3
5
  module InstanceMethods
4
6
 
5
7
  def initialize(key: nil, attributes: {}, from: nil, to: nil, edge_collection:, ignore_revs: false, wait_for_sync: false)
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango Edge
2
3
  module Edge
4
+ # Arango Edge Mixin
3
5
  module Mixin
4
6
  #@!visibility private
5
7
  def self.included(base)
@@ -1,5 +1,7 @@
1
1
  module Arango
2
+ # Arango EdgeCollection
2
3
  module EdgeCollection
4
+ # Arango EdgeCollection Base
3
5
  class Base
4
6
  include Arango::EdgeCollection::Mixin
5
7
  end