@olane/o-node 0.7.12-alpha.42 → 0.7.12-alpha.44

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 (396) hide show
  1. package/dist/src/connection/o-node-connection.manager.d.ts.map +1 -1
  2. package/dist/src/connection/o-node-connection.manager.js +1 -3
  3. package/package.json +6 -6
  4. package/dist/o-core/src/connection/index.d.ts +0 -8
  5. package/dist/o-core/src/connection/index.d.ts.map +0 -1
  6. package/dist/o-core/src/connection/index.js +0 -7
  7. package/dist/o-core/src/connection/interfaces/connection-manager.config.d.ts +0 -15
  8. package/dist/o-core/src/connection/interfaces/connection-manager.config.d.ts.map +0 -1
  9. package/dist/o-core/src/connection/interfaces/connection-manager.config.js +0 -1
  10. package/dist/o-core/src/connection/interfaces/connection-send-params.interface.d.ts +0 -9
  11. package/dist/o-core/src/connection/interfaces/connection-send-params.interface.d.ts.map +0 -1
  12. package/dist/o-core/src/connection/interfaces/connection-send-params.interface.js +0 -1
  13. package/dist/o-core/src/connection/interfaces/connection.config.d.ts +0 -20
  14. package/dist/o-core/src/connection/interfaces/connection.config.d.ts.map +0 -1
  15. package/dist/o-core/src/connection/interfaces/connection.config.js +0 -1
  16. package/dist/o-core/src/connection/interfaces/index.d.ts +0 -5
  17. package/dist/o-core/src/connection/interfaces/index.d.ts.map +0 -1
  18. package/dist/o-core/src/connection/interfaces/index.js +0 -4
  19. package/dist/o-core/src/connection/interfaces/request-state.enum.d.ts +0 -7
  20. package/dist/o-core/src/connection/interfaces/request-state.enum.d.ts.map +0 -1
  21. package/dist/o-core/src/connection/interfaces/request-state.enum.js +0 -7
  22. package/dist/o-core/src/connection/o-connection-manager.d.ts +0 -19
  23. package/dist/o-core/src/connection/o-connection-manager.d.ts.map +0 -1
  24. package/dist/o-core/src/connection/o-connection-manager.js +0 -27
  25. package/dist/o-core/src/connection/o-connection.d.ts +0 -26
  26. package/dist/o-core/src/connection/o-connection.d.ts.map +0 -1
  27. package/dist/o-core/src/connection/o-connection.js +0 -54
  28. package/dist/o-core/src/connection/o-request.d.ts +0 -23
  29. package/dist/o-core/src/connection/o-request.d.ts.map +0 -1
  30. package/dist/o-core/src/connection/o-request.js +0 -42
  31. package/dist/o-core/src/connection/o-response.d.ts +0 -13
  32. package/dist/o-core/src/connection/o-response.d.ts.map +0 -1
  33. package/dist/o-core/src/connection/o-response.js +0 -25
  34. package/dist/o-core/src/core/defaults/config.d.ts +0 -4
  35. package/dist/o-core/src/core/defaults/config.d.ts.map +0 -1
  36. package/dist/o-core/src/core/defaults/config.js +0 -5
  37. package/dist/o-core/src/core/defaults/index.d.ts +0 -2
  38. package/dist/o-core/src/core/defaults/index.d.ts.map +0 -1
  39. package/dist/o-core/src/core/defaults/index.js +0 -1
  40. package/dist/o-core/src/core/graceful-shutdown.d.ts +0 -25
  41. package/dist/o-core/src/core/graceful-shutdown.d.ts.map +0 -1
  42. package/dist/o-core/src/core/graceful-shutdown.js +0 -84
  43. package/dist/o-core/src/core/index.d.ts +0 -9
  44. package/dist/o-core/src/core/index.d.ts.map +0 -1
  45. package/dist/o-core/src/core/index.js +0 -8
  46. package/dist/o-core/src/core/interfaces/index.d.ts +0 -7
  47. package/dist/o-core/src/core/interfaces/index.d.ts.map +0 -1
  48. package/dist/o-core/src/core/interfaces/index.js +0 -6
  49. package/dist/o-core/src/core/interfaces/node-type.enum.d.ts +0 -10
  50. package/dist/o-core/src/core/interfaces/node-type.enum.d.ts.map +0 -1
  51. package/dist/o-core/src/core/interfaces/node-type.enum.js +0 -10
  52. package/dist/o-core/src/core/interfaces/o-core.config.d.ts +0 -23
  53. package/dist/o-core/src/core/interfaces/o-core.config.d.ts.map +0 -1
  54. package/dist/o-core/src/core/interfaces/o-core.config.js +0 -1
  55. package/dist/o-core/src/core/interfaces/o-core.interface.d.ts +0 -18
  56. package/dist/o-core/src/core/interfaces/o-core.interface.d.ts.map +0 -1
  57. package/dist/o-core/src/core/interfaces/o-core.interface.js +0 -1
  58. package/dist/o-core/src/core/interfaces/state.enum.d.ts +0 -8
  59. package/dist/o-core/src/core/interfaces/state.enum.d.ts.map +0 -1
  60. package/dist/o-core/src/core/interfaces/state.enum.js +0 -8
  61. package/dist/o-core/src/core/interfaces/use-options.interface.d.ts +0 -11
  62. package/dist/o-core/src/core/interfaces/use-options.interface.d.ts.map +0 -1
  63. package/dist/o-core/src/core/interfaces/use-options.interface.js +0 -1
  64. package/dist/o-core/src/core/interfaces/use-stream-options.interface.d.ts +0 -4
  65. package/dist/o-core/src/core/interfaces/use-stream-options.interface.d.ts.map +0 -1
  66. package/dist/o-core/src/core/interfaces/use-stream-options.interface.js +0 -1
  67. package/dist/o-core/src/core/lib/events/connection-events.d.ts +0 -31
  68. package/dist/o-core/src/core/lib/events/connection-events.d.ts.map +0 -1
  69. package/dist/o-core/src/core/lib/events/connection-events.js +0 -46
  70. package/dist/o-core/src/core/lib/events/hierarchy-events.d.ts +0 -69
  71. package/dist/o-core/src/core/lib/events/hierarchy-events.d.ts.map +0 -1
  72. package/dist/o-core/src/core/lib/events/hierarchy-events.js +0 -100
  73. package/dist/o-core/src/core/lib/events/index.d.ts +0 -6
  74. package/dist/o-core/src/core/lib/events/index.d.ts.map +0 -1
  75. package/dist/o-core/src/core/lib/events/index.js +0 -5
  76. package/dist/o-core/src/core/lib/events/node-events.d.ts +0 -40
  77. package/dist/o-core/src/core/lib/events/node-events.d.ts.map +0 -1
  78. package/dist/o-core/src/core/lib/events/node-events.js +0 -58
  79. package/dist/o-core/src/core/lib/events/o-notification-event.d.ts +0 -26
  80. package/dist/o-core/src/core/lib/events/o-notification-event.d.ts.map +0 -1
  81. package/dist/o-core/src/core/lib/events/o-notification-event.js +0 -30
  82. package/dist/o-core/src/core/lib/index.d.ts +0 -8
  83. package/dist/o-core/src/core/lib/index.d.ts.map +0 -1
  84. package/dist/o-core/src/core/lib/index.js +0 -7
  85. package/dist/o-core/src/core/lib/interfaces/notification-types.d.ts +0 -49
  86. package/dist/o-core/src/core/lib/interfaces/notification-types.d.ts.map +0 -1
  87. package/dist/o-core/src/core/lib/interfaces/notification-types.js +0 -1
  88. package/dist/o-core/src/core/lib/o-hierarchy.manager.d.ts +0 -24
  89. package/dist/o-core/src/core/lib/o-hierarchy.manager.d.ts.map +0 -1
  90. package/dist/o-core/src/core/lib/o-hierarchy.manager.js +0 -58
  91. package/dist/o-core/src/core/lib/o-metrics.d.ts +0 -5
  92. package/dist/o-core/src/core/lib/o-metrics.d.ts.map +0 -1
  93. package/dist/o-core/src/core/lib/o-metrics.js +0 -6
  94. package/dist/o-core/src/core/lib/o-notification.manager.d.ts +0 -58
  95. package/dist/o-core/src/core/lib/o-notification.manager.d.ts.map +0 -1
  96. package/dist/o-core/src/core/lib/o-notification.manager.js +0 -159
  97. package/dist/o-core/src/core/lib/o-request.manager.d.ts +0 -10
  98. package/dist/o-core/src/core/lib/o-request.manager.d.ts.map +0 -1
  99. package/dist/o-core/src/core/lib/o-request.manager.js +0 -18
  100. package/dist/o-core/src/core/lib/utils/event-filters.d.ts +0 -38
  101. package/dist/o-core/src/core/lib/utils/event-filters.d.ts.map +0 -1
  102. package/dist/o-core/src/core/lib/utils/event-filters.js +0 -159
  103. package/dist/o-core/src/core/o-core.d.ts +0 -240
  104. package/dist/o-core/src/core/o-core.d.ts.map +0 -1
  105. package/dist/o-core/src/core/o-core.js +0 -463
  106. package/dist/o-core/src/core/o-dependency.d.ts +0 -9
  107. package/dist/o-core/src/core/o-dependency.d.ts.map +0 -1
  108. package/dist/o-core/src/core/o-dependency.js +0 -15
  109. package/dist/o-core/src/core/o-object.d.ts +0 -7
  110. package/dist/o-core/src/core/o-object.d.ts.map +0 -1
  111. package/dist/o-core/src/core/o-object.js +0 -10
  112. package/dist/o-core/src/core/o-parameter.d.ts +0 -12
  113. package/dist/o-core/src/core/o-parameter.d.ts.map +0 -1
  114. package/dist/o-core/src/core/o-parameter.js +0 -21
  115. package/dist/o-core/src/error/enums/codes.error.d.ts +0 -20
  116. package/dist/o-core/src/error/enums/codes.error.d.ts.map +0 -1
  117. package/dist/o-core/src/error/enums/codes.error.js +0 -20
  118. package/dist/o-core/src/error/index.d.ts +0 -3
  119. package/dist/o-core/src/error/index.d.ts.map +0 -1
  120. package/dist/o-core/src/error/index.js +0 -2
  121. package/dist/o-core/src/error/interfaces/o-error.interface.d.ts +0 -6
  122. package/dist/o-core/src/error/interfaces/o-error.interface.d.ts.map +0 -1
  123. package/dist/o-core/src/error/interfaces/o-error.interface.js +0 -1
  124. package/dist/o-core/src/error/o-error.d.ts +0 -15
  125. package/dist/o-core/src/error/o-error.d.ts.map +0 -1
  126. package/dist/o-core/src/error/o-error.js +0 -27
  127. package/dist/o-core/src/index.d.ts +0 -8
  128. package/dist/o-core/src/index.d.ts.map +0 -1
  129. package/dist/o-core/src/index.js +0 -7
  130. package/dist/o-core/src/response/index.d.ts +0 -2
  131. package/dist/o-core/src/response/index.d.ts.map +0 -1
  132. package/dist/o-core/src/response/index.js +0 -1
  133. package/dist/o-core/src/response/response-builder.d.ts +0 -140
  134. package/dist/o-core/src/response/response-builder.d.ts.map +0 -1
  135. package/dist/o-core/src/response/response-builder.js +0 -190
  136. package/dist/o-core/src/router/enums/restricted-addresses.enum.d.ts +0 -8
  137. package/dist/o-core/src/router/enums/restricted-addresses.enum.d.ts.map +0 -1
  138. package/dist/o-core/src/router/enums/restricted-addresses.enum.js +0 -13
  139. package/dist/o-core/src/router/index.d.ts +0 -11
  140. package/dist/o-core/src/router/index.d.ts.map +0 -1
  141. package/dist/o-core/src/router/index.js +0 -10
  142. package/dist/o-core/src/router/interfaces/resolve.request.d.ts +0 -10
  143. package/dist/o-core/src/router/interfaces/resolve.request.d.ts.map +0 -1
  144. package/dist/o-core/src/router/interfaces/resolve.request.js +0 -1
  145. package/dist/o-core/src/router/interfaces/route.response.d.ts +0 -8
  146. package/dist/o-core/src/router/interfaces/route.response.d.ts.map +0 -1
  147. package/dist/o-core/src/router/interfaces/route.response.js +0 -1
  148. package/dist/o-core/src/router/o-address-resolver.d.ts +0 -14
  149. package/dist/o-core/src/router/o-address-resolver.d.ts.map +0 -1
  150. package/dist/o-core/src/router/o-address-resolver.js +0 -19
  151. package/dist/o-core/src/router/o-address.d.ts +0 -33
  152. package/dist/o-core/src/router/o-address.d.ts.map +0 -1
  153. package/dist/o-core/src/router/o-address.js +0 -114
  154. package/dist/o-core/src/router/o-request-preparation.d.ts +0 -37
  155. package/dist/o-core/src/router/o-request-preparation.d.ts.map +0 -1
  156. package/dist/o-core/src/router/o-request-preparation.js +0 -75
  157. package/dist/o-core/src/router/o-request.router.d.ts +0 -18
  158. package/dist/o-core/src/router/o-request.router.d.ts.map +0 -1
  159. package/dist/o-core/src/router/o-request.router.js +0 -12
  160. package/dist/o-core/src/router/o-resolver-chain.d.ts +0 -32
  161. package/dist/o-core/src/router/o-resolver-chain.d.ts.map +0 -1
  162. package/dist/o-core/src/router/o-resolver-chain.js +0 -62
  163. package/dist/o-core/src/router/o-router.d.ts +0 -19
  164. package/dist/o-core/src/router/o-router.d.ts.map +0 -1
  165. package/dist/o-core/src/router/o-router.js +0 -14
  166. package/dist/o-core/src/router/o-routing-policy.d.ts +0 -36
  167. package/dist/o-core/src/router/o-routing-policy.d.ts.map +0 -1
  168. package/dist/o-core/src/router/o-routing-policy.js +0 -19
  169. package/dist/o-core/src/streaming/index.d.ts +0 -11
  170. package/dist/o-core/src/streaming/index.d.ts.map +0 -1
  171. package/dist/o-core/src/streaming/index.js +0 -14
  172. package/dist/o-core/src/streaming/protocol-builder.d.ts +0 -62
  173. package/dist/o-core/src/streaming/protocol-builder.d.ts.map +0 -1
  174. package/dist/o-core/src/streaming/protocol-builder.js +0 -93
  175. package/dist/o-core/src/streaming/stream-config.d.ts +0 -36
  176. package/dist/o-core/src/streaming/stream-config.d.ts.map +0 -1
  177. package/dist/o-core/src/streaming/stream-config.js +0 -19
  178. package/dist/o-core/src/streaming/stream-handler.base.d.ts +0 -85
  179. package/dist/o-core/src/streaming/stream-handler.base.d.ts.map +0 -1
  180. package/dist/o-core/src/streaming/stream-handler.base.js +0 -112
  181. package/dist/o-core/src/streaming/stream-transport.interface.d.ts +0 -61
  182. package/dist/o-core/src/streaming/stream-transport.interface.d.ts.map +0 -1
  183. package/dist/o-core/src/streaming/stream-transport.interface.js +0 -10
  184. package/dist/o-core/src/transports/custom.transport.d.ts +0 -6
  185. package/dist/o-core/src/transports/custom.transport.d.ts.map +0 -1
  186. package/dist/o-core/src/transports/custom.transport.js +0 -10
  187. package/dist/o-core/src/transports/index.d.ts +0 -4
  188. package/dist/o-core/src/transports/index.d.ts.map +0 -1
  189. package/dist/o-core/src/transports/index.js +0 -3
  190. package/dist/o-core/src/transports/interfaces/transport-type.enum.d.ts +0 -5
  191. package/dist/o-core/src/transports/interfaces/transport-type.enum.d.ts.map +0 -1
  192. package/dist/o-core/src/transports/interfaces/transport-type.enum.js +0 -5
  193. package/dist/o-core/src/transports/o-transport.d.ts +0 -10
  194. package/dist/o-core/src/transports/o-transport.d.ts.map +0 -1
  195. package/dist/o-core/src/transports/o-transport.js +0 -16
  196. package/dist/o-core/src/utils/core.utils.d.ts +0 -34
  197. package/dist/o-core/src/utils/core.utils.d.ts.map +0 -1
  198. package/dist/o-core/src/utils/core.utils.js +0 -123
  199. package/dist/o-core/src/utils/index.d.ts +0 -6
  200. package/dist/o-core/src/utils/index.d.ts.map +0 -1
  201. package/dist/o-core/src/utils/index.js +0 -5
  202. package/dist/o-core/src/utils/logger.d.ts +0 -14
  203. package/dist/o-core/src/utils/logger.d.ts.map +0 -1
  204. package/dist/o-core/src/utils/logger.js +0 -31
  205. package/dist/o-core/src/utils/object.utils.d.ts +0 -5
  206. package/dist/o-core/src/utils/object.utils.d.ts.map +0 -1
  207. package/dist/o-core/src/utils/object.utils.js +0 -23
  208. package/dist/o-core/src/utils/regex.utils.d.ts +0 -4
  209. package/dist/o-core/src/utils/regex.utils.d.ts.map +0 -1
  210. package/dist/o-core/src/utils/regex.utils.js +0 -13
  211. package/dist/o-core/src/utils/remote.utils.d.ts +0 -4
  212. package/dist/o-core/src/utils/remote.utils.d.ts.map +0 -1
  213. package/dist/o-core/src/utils/remote.utils.js +0 -5
  214. package/dist/o-core/src/utils/streaming.utils.d.ts +0 -22
  215. package/dist/o-core/src/utils/streaming.utils.d.ts.map +0 -1
  216. package/dist/o-core/src/utils/streaming.utils.js +0 -45
  217. package/dist/o-node/src/connection/index.d.ts +0 -5
  218. package/dist/o-node/src/connection/index.d.ts.map +0 -1
  219. package/dist/o-node/src/connection/index.js +0 -4
  220. package/dist/o-node/src/connection/interfaces/o-node-connection-manager.config.d.ts +0 -6
  221. package/dist/o-node/src/connection/interfaces/o-node-connection-manager.config.d.ts.map +0 -1
  222. package/dist/o-node/src/connection/interfaces/o-node-connection-manager.config.js +0 -1
  223. package/dist/o-node/src/connection/interfaces/o-node-connection.config.d.ts +0 -6
  224. package/dist/o-node/src/connection/interfaces/o-node-connection.config.d.ts.map +0 -1
  225. package/dist/o-node/src/connection/interfaces/o-node-connection.config.js +0 -1
  226. package/dist/o-node/src/connection/o-node-connection.d.ts +0 -13
  227. package/dist/o-node/src/connection/o-node-connection.d.ts.map +0 -1
  228. package/dist/o-node/src/connection/o-node-connection.js +0 -93
  229. package/dist/o-node/src/connection/o-node-connection.manager.d.ts +0 -19
  230. package/dist/o-node/src/connection/o-node-connection.manager.d.ts.map +0 -1
  231. package/dist/o-node/src/connection/o-node-connection.manager.js +0 -65
  232. package/dist/o-node/src/connection/o-stream.request.d.ts +0 -11
  233. package/dist/o-node/src/connection/o-stream.request.d.ts.map +0 -1
  234. package/dist/o-node/src/connection/o-stream.request.js +0 -7
  235. package/dist/o-node/src/index.d.ts +0 -12
  236. package/dist/o-node/src/index.d.ts.map +0 -1
  237. package/dist/o-node/src/index.js +0 -11
  238. package/dist/o-node/src/interfaces/i-heartbeatable-node.d.ts +0 -49
  239. package/dist/o-node/src/interfaces/i-heartbeatable-node.d.ts.map +0 -1
  240. package/dist/o-node/src/interfaces/i-heartbeatable-node.js +0 -1
  241. package/dist/o-node/src/interfaces/i-reconnectable-node.d.ts +0 -46
  242. package/dist/o-node/src/interfaces/i-reconnectable-node.d.ts.map +0 -1
  243. package/dist/o-node/src/interfaces/i-reconnectable-node.js +0 -1
  244. package/dist/o-node/src/interfaces/o-node.config.d.ts +0 -49
  245. package/dist/o-node/src/interfaces/o-node.config.d.ts.map +0 -1
  246. package/dist/o-node/src/interfaces/o-node.config.js +0 -1
  247. package/dist/o-node/src/interfaces/o-node.tool-config.d.ts +0 -4
  248. package/dist/o-node/src/interfaces/o-node.tool-config.d.ts.map +0 -1
  249. package/dist/o-node/src/interfaces/o-node.tool-config.js +0 -1
  250. package/dist/o-node/src/lib/network-activity.lib.d.ts +0 -1
  251. package/dist/o-node/src/lib/network-activity.lib.d.ts.map +0 -1
  252. package/dist/o-node/src/lib/network-activity.lib.js +0 -34
  253. package/dist/o-node/src/managers/o-connection-heartbeat.manager.d.ts +0 -63
  254. package/dist/o-node/src/managers/o-connection-heartbeat.manager.d.ts.map +0 -1
  255. package/dist/o-node/src/managers/o-connection-heartbeat.manager.js +0 -227
  256. package/dist/o-node/src/managers/o-reconnection.manager.d.ts +0 -51
  257. package/dist/o-node/src/managers/o-reconnection.manager.d.ts.map +0 -1
  258. package/dist/o-node/src/managers/o-reconnection.manager.js +0 -266
  259. package/dist/o-node/src/nodes/client.node.d.ts +0 -7
  260. package/dist/o-node/src/nodes/client.node.d.ts.map +0 -1
  261. package/dist/o-node/src/nodes/client.node.js +0 -16
  262. package/dist/o-node/src/nodes/index.d.ts +0 -4
  263. package/dist/o-node/src/nodes/index.d.ts.map +0 -1
  264. package/dist/o-node/src/nodes/index.js +0 -3
  265. package/dist/o-node/src/nodes/server.node.d.ts +0 -7
  266. package/dist/o-node/src/nodes/server.node.d.ts.map +0 -1
  267. package/dist/o-node/src/nodes/server.node.js +0 -20
  268. package/dist/o-node/src/nodes/websocket.node.d.ts +0 -7
  269. package/dist/o-node/src/nodes/websocket.node.d.ts.map +0 -1
  270. package/dist/o-node/src/nodes/websocket.node.js +0 -18
  271. package/dist/o-node/src/o-node.d.ts +0 -72
  272. package/dist/o-node/src/o-node.d.ts.map +0 -1
  273. package/dist/o-node/src/o-node.hierarchy-manager.d.ts +0 -15
  274. package/dist/o-node/src/o-node.hierarchy-manager.d.ts.map +0 -1
  275. package/dist/o-node/src/o-node.hierarchy-manager.js +0 -15
  276. package/dist/o-node/src/o-node.js +0 -493
  277. package/dist/o-node/src/o-node.notification-manager.d.ts +0 -52
  278. package/dist/o-node/src/o-node.notification-manager.d.ts.map +0 -1
  279. package/dist/o-node/src/o-node.notification-manager.js +0 -188
  280. package/dist/o-node/src/o-node.tool.d.ts +0 -18
  281. package/dist/o-node/src/o-node.tool.d.ts.map +0 -1
  282. package/dist/o-node/src/o-node.tool.js +0 -83
  283. package/dist/o-node/src/router/index.d.ts +0 -6
  284. package/dist/o-node/src/router/index.d.ts.map +0 -1
  285. package/dist/o-node/src/router/index.js +0 -5
  286. package/dist/o-node/src/router/interfaces/o-node-router.config.d.ts +0 -3
  287. package/dist/o-node/src/router/interfaces/o-node-router.config.d.ts.map +0 -1
  288. package/dist/o-node/src/router/interfaces/o-node-router.config.js +0 -1
  289. package/dist/o-node/src/router/interfaces/o-node-router.response.d.ts +0 -8
  290. package/dist/o-node/src/router/interfaces/o-node-router.response.d.ts.map +0 -1
  291. package/dist/o-node/src/router/interfaces/o-node-router.response.js +0 -1
  292. package/dist/o-node/src/router/o-node.address.d.ts +0 -18
  293. package/dist/o-node/src/router/o-node.address.d.ts.map +0 -1
  294. package/dist/o-node/src/router/o-node.address.js +0 -29
  295. package/dist/o-node/src/router/o-node.router.d.ts +0 -46
  296. package/dist/o-node/src/router/o-node.router.d.ts.map +0 -1
  297. package/dist/o-node/src/router/o-node.router.js +0 -181
  298. package/dist/o-node/src/router/o-node.routing-policy.d.ts +0 -30
  299. package/dist/o-node/src/router/o-node.routing-policy.d.ts.map +0 -1
  300. package/dist/o-node/src/router/o-node.routing-policy.js +0 -57
  301. package/dist/o-node/src/router/o-node.transport.d.ts +0 -11
  302. package/dist/o-node/src/router/o-node.transport.d.ts.map +0 -1
  303. package/dist/o-node/src/router/o-node.transport.js +0 -18
  304. package/dist/o-node/src/router/resolvers/index.d.ts +0 -4
  305. package/dist/o-node/src/router/resolvers/index.d.ts.map +0 -1
  306. package/dist/o-node/src/router/resolvers/index.js +0 -3
  307. package/dist/o-node/src/router/resolvers/o-node.leader-resolver-fallback.d.ts +0 -8
  308. package/dist/o-node/src/router/resolvers/o-node.leader-resolver-fallback.d.ts.map +0 -1
  309. package/dist/o-node/src/router/resolvers/o-node.leader-resolver-fallback.js +0 -35
  310. package/dist/o-node/src/router/resolvers/o-node.resolver.d.ts +0 -11
  311. package/dist/o-node/src/router/resolvers/o-node.resolver.d.ts.map +0 -1
  312. package/dist/o-node/src/router/resolvers/o-node.resolver.js +0 -45
  313. package/dist/o-node/src/router/resolvers/o-node.search-resolver.d.ts +0 -170
  314. package/dist/o-node/src/router/resolvers/o-node.search-resolver.d.ts.map +0 -1
  315. package/dist/o-node/src/router/resolvers/o-node.search-resolver.js +0 -285
  316. package/dist/o-node/src/router/route.request.d.ts +0 -14
  317. package/dist/o-node/src/router/route.request.d.ts.map +0 -1
  318. package/dist/o-node/src/router/route.request.js +0 -1
  319. package/dist/o-node/src/streaming/index.d.ts +0 -10
  320. package/dist/o-node/src/streaming/index.d.ts.map +0 -1
  321. package/dist/o-node/src/streaming/index.js +0 -12
  322. package/dist/o-node/src/streaming/libp2p-stream-transport.d.ts +0 -50
  323. package/dist/o-node/src/streaming/libp2p-stream-transport.d.ts.map +0 -1
  324. package/dist/o-node/src/streaming/libp2p-stream-transport.js +0 -137
  325. package/dist/o-node/src/streaming/node-stream-handler.d.ts +0 -65
  326. package/dist/o-node/src/streaming/node-stream-handler.d.ts.map +0 -1
  327. package/dist/o-node/src/streaming/node-stream-handler.js +0 -101
  328. package/dist/o-node/src/ui/index.d.ts +0 -3
  329. package/dist/o-node/src/ui/index.d.ts.map +0 -1
  330. package/dist/o-node/src/ui/index.js +0 -2
  331. package/dist/o-node/src/ui/types.d.ts +0 -110
  332. package/dist/o-node/src/ui/types.d.ts.map +0 -1
  333. package/dist/o-node/src/ui/types.js +0 -17
  334. package/dist/o-node/src/ui/ui-graph.manager.d.ts +0 -70
  335. package/dist/o-node/src/ui/ui-graph.manager.d.ts.map +0 -1
  336. package/dist/o-node/src/ui/ui-graph.manager.js +0 -274
  337. package/dist/o-node/src/utils/circuit-breaker.d.ts +0 -107
  338. package/dist/o-node/src/utils/circuit-breaker.d.ts.map +0 -1
  339. package/dist/o-node/src/utils/circuit-breaker.js +0 -175
  340. package/dist/o-node/src/utils/index.d.ts +0 -3
  341. package/dist/o-node/src/utils/index.d.ts.map +0 -1
  342. package/dist/o-node/src/utils/index.js +0 -2
  343. package/dist/o-node/src/utils/leader-request-wrapper.d.ts +0 -66
  344. package/dist/o-node/src/utils/leader-request-wrapper.d.ts.map +0 -1
  345. package/dist/o-node/src/utils/leader-request-wrapper.js +0 -160
  346. package/dist/o-node/src/utils/network.utils.d.ts +0 -20
  347. package/dist/o-node/src/utils/network.utils.d.ts.map +0 -1
  348. package/dist/o-node/src/utils/network.utils.js +0 -74
  349. package/dist/o-node/src/utils/stream.utils.d.ts +0 -6
  350. package/dist/o-node/src/utils/stream.utils.d.ts.map +0 -1
  351. package/dist/o-node/src/utils/stream.utils.js +0 -31
  352. package/dist/o-node/test/circuit-breaker.test.d.ts +0 -2
  353. package/dist/o-node/test/circuit-breaker.test.d.ts.map +0 -1
  354. package/dist/o-node/test/circuit-breaker.test.js +0 -262
  355. package/dist/o-node/test/helpers/test-node.tool.d.ts +0 -15
  356. package/dist/o-node/test/helpers/test-node.tool.d.ts.map +0 -1
  357. package/dist/o-node/test/helpers/test-node.tool.js +0 -27
  358. package/dist/o-node/test/leader-request-wrapper.test.d.ts +0 -1
  359. package/dist/o-node/test/leader-request-wrapper.test.d.ts.map +0 -1
  360. package/dist/o-node/test/leader-request-wrapper.test.js +0 -246
  361. package/dist/o-node/test/o-node.spec.d.ts +0 -2
  362. package/dist/o-node/test/o-node.spec.d.ts.map +0 -1
  363. package/dist/o-node/test/o-node.spec.js +0 -20
  364. package/dist/o-node/test/search-resolver.spec.d.ts +0 -2
  365. package/dist/o-node/test/search-resolver.spec.d.ts.map +0 -1
  366. package/dist/o-node/test/search-resolver.spec.js +0 -693
  367. package/dist/src/streaming/index.d.ts +0 -10
  368. package/dist/src/streaming/index.d.ts.map +0 -1
  369. package/dist/src/streaming/index.js +0 -12
  370. package/dist/src/streaming/libp2p-stream-transport.d.ts +0 -50
  371. package/dist/src/streaming/libp2p-stream-transport.d.ts.map +0 -1
  372. package/dist/src/streaming/libp2p-stream-transport.js +0 -137
  373. package/dist/src/streaming/node-stream-handler.d.ts +0 -65
  374. package/dist/src/streaming/node-stream-handler.d.ts.map +0 -1
  375. package/dist/src/streaming/node-stream-handler.js +0 -101
  376. package/dist/src/streaming/o-node-streaming-client.d.ts +0 -33
  377. package/dist/src/streaming/o-node-streaming-client.d.ts.map +0 -1
  378. package/dist/src/streaming/o-node-streaming-client.js +0 -130
  379. package/dist/src/utils/circuit-breaker.d.ts +0 -107
  380. package/dist/src/utils/circuit-breaker.d.ts.map +0 -1
  381. package/dist/src/utils/circuit-breaker.js +0 -175
  382. package/dist/src/utils/circuit-breaker.test.d.ts +0 -2
  383. package/dist/src/utils/circuit-breaker.test.d.ts.map +0 -1
  384. package/dist/src/utils/circuit-breaker.test.js +0 -262
  385. package/dist/src/utils/leader-request-wrapper.d.ts +0 -66
  386. package/dist/src/utils/leader-request-wrapper.d.ts.map +0 -1
  387. package/dist/src/utils/leader-request-wrapper.js +0 -160
  388. package/dist/src/utils/leader-request-wrapper.test.d.ts +0 -1
  389. package/dist/src/utils/leader-request-wrapper.test.d.ts.map +0 -1
  390. package/dist/src/utils/leader-request-wrapper.test.js +0 -246
  391. package/dist/test/circuit-breaker.test.d.ts +0 -2
  392. package/dist/test/circuit-breaker.test.d.ts.map +0 -1
  393. package/dist/test/circuit-breaker.test.js +0 -262
  394. package/dist/test/leader-request-wrapper.test.d.ts +0 -1
  395. package/dist/test/leader-request-wrapper.test.d.ts.map +0 -1
  396. package/dist/test/leader-request-wrapper.test.js +0 -246
@@ -1,188 +0,0 @@
1
- import { oNotificationManager, NodeConnectedEvent, NodeDisconnectedEvent, NodeDiscoveredEvent, ChildJoinedEvent, ChildLeftEvent, ParentConnectedEvent, ParentDisconnectedEvent, } from '@olane/o-core';
2
- /**
3
- * libp2p-specific implementation of oNotificationManager
4
- * Wraps libp2p events and enriches them with Olane context
5
- */
6
- export class oNodeNotificationManager extends oNotificationManager {
7
- constructor(p2pNode, hierarchyManager, address) {
8
- super();
9
- this.p2pNode = p2pNode;
10
- this.hierarchyManager = hierarchyManager;
11
- this.address = address;
12
- }
13
- /**
14
- * Wire up libp2p event listeners
15
- */
16
- setupListeners() {
17
- this.logger.debug('Setting up libp2p event listeners...');
18
- // Peer connection events
19
- this.p2pNode.addEventListener('peer:connect', this.handlePeerConnect.bind(this));
20
- // this.p2pNode.addEventListener(
21
- // 'peer:disconnect',
22
- // this.handlePeerDisconnect.bind(this),
23
- // );
24
- // Peer discovery events
25
- this.p2pNode.addEventListener('peer:discovery', this.handlePeerDiscovery.bind(this));
26
- // Connection events
27
- this.p2pNode.addEventListener('connection:open', this.handleConnectionOpen.bind(this));
28
- this.p2pNode.addEventListener('connection:close', this.handleConnectionClose.bind(this));
29
- this.logger.debug('libp2p event listeners configured');
30
- }
31
- /**
32
- * Handle peer connect event from libp2p
33
- */
34
- handlePeerConnect(evt) {
35
- const peerId = evt.detail;
36
- // this.logger.debug(`Peer connected: ${peerId.toString()}`);
37
- // Try to resolve peer ID to Olane address
38
- const nodeAddress = this.peerIdToAddress(peerId.toString());
39
- if (!nodeAddress) {
40
- // this.logger.debug(
41
- // `Could not resolve peer ID ${peerId.toString()} to address`,
42
- // );
43
- return;
44
- }
45
- // Emit generic node connected event
46
- this.emit(new NodeConnectedEvent({
47
- source: this.address,
48
- nodeAddress,
49
- connectionMetadata: {
50
- peerId: peerId.toString(),
51
- transport: 'libp2p',
52
- },
53
- }));
54
- // Check if this is a child node
55
- if (this.isChild(nodeAddress)) {
56
- // this.logger.debug(`Child node connected: ${nodeAddress.toString()}`);
57
- this.emit(new ChildJoinedEvent({
58
- source: this.address,
59
- childAddress: nodeAddress,
60
- parentAddress: this.address,
61
- }));
62
- }
63
- // Check if this is a parent node
64
- if (this.isParent(nodeAddress)) {
65
- // this.logger.debug(`Parent node connected: ${nodeAddress.toString()}`);
66
- this.emit(new ParentConnectedEvent({
67
- source: this.address,
68
- parentAddress: nodeAddress,
69
- }));
70
- }
71
- }
72
- /**
73
- * Handle peer disconnect event from libp2p
74
- */
75
- handlePeerDisconnect(evt) {
76
- const peerId = evt.detail;
77
- // this.logger.debug(`Peer disconnected: ${peerId.toString()}`);
78
- // Try to resolve peer ID to Olane address
79
- const nodeAddress = this.peerIdToAddress(peerId.toString());
80
- if (!nodeAddress) {
81
- // this.logger.debug(
82
- // `Could not resolve peer ID ${peerId.toString()} to address`,
83
- // );
84
- return;
85
- }
86
- // Emit generic node disconnected event
87
- this.emit(new NodeDisconnectedEvent({
88
- source: this.address,
89
- nodeAddress,
90
- reason: 'peer_disconnected',
91
- }));
92
- // Check if this is a child node
93
- if (this.isChild(nodeAddress)) {
94
- this.logger.debug(`Child node disconnected: ${nodeAddress.toString()}`);
95
- this.emit(new ChildLeftEvent({
96
- source: this.address,
97
- childAddress: nodeAddress,
98
- parentAddress: this.address,
99
- reason: 'peer_disconnected',
100
- }));
101
- // Optionally remove from hierarchy (auto-cleanup)
102
- // this.hierarchyManager.removeChild(nodeAddress);
103
- }
104
- // Check if this is a parent node
105
- if (this.isParent(nodeAddress)) {
106
- this.logger.debug(`Parent node disconnected: ${nodeAddress.toString()}`);
107
- this.emit(new ParentDisconnectedEvent({
108
- source: this.address,
109
- parentAddress: nodeAddress,
110
- reason: 'peer_disconnected',
111
- }));
112
- }
113
- }
114
- /**
115
- * Handle peer discovery event from libp2p
116
- */
117
- handlePeerDiscovery(evt) {
118
- const peerInfo = evt.detail;
119
- // this.logger.debug(`Peer discovered: ${peerInfo.id.toString()}`);
120
- // Try to resolve peer ID to Olane address
121
- const nodeAddress = this.peerIdToAddress(peerInfo.id.toString());
122
- if (!nodeAddress) {
123
- return;
124
- }
125
- this.emit(new NodeDiscoveredEvent({
126
- source: this.address,
127
- nodeAddress,
128
- }));
129
- }
130
- /**
131
- * Handle connection open event from libp2p
132
- */
133
- handleConnectionOpen(evt) {
134
- // do nothing for now
135
- }
136
- /**
137
- * Handle connection close event from libp2p
138
- */
139
- handleConnectionClose(evt) {
140
- // do nothing for now
141
- }
142
- /**
143
- * Try to resolve a libp2p peer ID to an Olane address
144
- * Checks hierarchy manager for known peers
145
- */
146
- peerIdToAddress(peerId) {
147
- // Check children
148
- for (const child of this.hierarchyManager.children) {
149
- const childTransports = child.transports;
150
- for (const transport of childTransports) {
151
- if (transport.toString().includes(peerId)) {
152
- return child;
153
- }
154
- }
155
- }
156
- // Check parents
157
- for (const parent of this.hierarchyManager.parents) {
158
- const parentTransports = parent.transports;
159
- for (const transport of parentTransports) {
160
- if (transport.toString().includes(peerId)) {
161
- return parent;
162
- }
163
- }
164
- }
165
- // Check leaders
166
- for (const leader of this.hierarchyManager.leaders) {
167
- const leaderTransports = leader.transports;
168
- for (const transport of leaderTransports) {
169
- if (transport.toString().includes(peerId)) {
170
- return leader;
171
- }
172
- }
173
- }
174
- return null;
175
- }
176
- /**
177
- * Check if an address is a direct child
178
- */
179
- isChild(address) {
180
- return this.hierarchyManager.children.some((child) => child.toString() === address.toString());
181
- }
182
- /**
183
- * Check if an address is a parent
184
- */
185
- isParent(address) {
186
- return this.hierarchyManager.parents.some((parent) => parent.toString() === address.toString());
187
- }
188
- }
@@ -1,18 +0,0 @@
1
- import { oAddress, oRequest } from '@olane/o-core';
2
- import { oServerNode } from './nodes/server.node.js';
3
- import { Connection, Stream } from '@olane/o-config';
4
- declare const oNodeTool_base: typeof oServerNode;
5
- /**
6
- * oTool is a mixin that extends the base class and implements the oTool interface
7
- * @param Base - The base class to extend
8
- * @returns A new class that extends the base class and implements the oTool interface
9
- */
10
- export declare class oNodeTool extends oNodeTool_base {
11
- handleProtocol(address: oAddress): Promise<void>;
12
- initialize(): Promise<void>;
13
- handleStream(stream: Stream, connection: Connection): Promise<void>;
14
- _tool_identify(): Promise<any>;
15
- _tool_child_register(request: oRequest): Promise<any>;
16
- }
17
- export {};
18
- //# sourceMappingURL=o-node.tool.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"o-node.tool.d.ts","sourceRoot":"","sources":["../../../src/o-node.tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EAGR,QAAQ,EAIT,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;;AAIrD;;;;GAIG;AACH,qBAAa,SAAU,SAAQ,cAAkB;IACzC,cAAc,CAAC,OAAO,EAAE,QAAQ;IAUhC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAW3B,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAuCnE,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC;IAQ9B,oBAAoB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;CA2B5D"}
@@ -1,83 +0,0 @@
1
- import { CoreUtils, oRequest, ResponseBuilder, ChildJoinedEvent, } from '@olane/o-core';
2
- import { oTool } from '@olane/o-tool';
3
- import { oServerNode } from './nodes/server.node.js';
4
- import { oNodeTransport } from './router/o-node.transport.js';
5
- import { oNodeAddress } from './router/o-node.address.js';
6
- /**
7
- * oTool is a mixin that extends the base class and implements the oTool interface
8
- * @param Base - The base class to extend
9
- * @returns A new class that extends the base class and implements the oTool interface
10
- */
11
- export class oNodeTool extends oTool(oServerNode) {
12
- async handleProtocol(address) {
13
- this.logger.debug('Handling protocol: ' + address.protocol);
14
- await this.p2pNode.handle(address.protocol, this.handleStream.bind(this), {
15
- maxInboundStreams: 10000,
16
- maxOutboundStreams: process.env.MAX_OUTBOUND_STREAMS
17
- ? parseInt(process.env.MAX_OUTBOUND_STREAMS)
18
- : 1000,
19
- });
20
- }
21
- async initialize() {
22
- await super.initialize();
23
- await this.handleProtocol(this.address);
24
- if (this.staticAddress &&
25
- this.staticAddress?.toString() !== this.address.toString()) {
26
- await this.handleProtocol(this.staticAddress);
27
- }
28
- }
29
- async handleStream(stream, connection) {
30
- // CRITICAL: Attach message listener immediately to prevent buffer overflow (libp2p v3)
31
- // Per libp2p migration guide: "If no message event handler is added, streams will
32
- // buffer incoming data until a pre-configured limit is reached, after which the stream will be reset."
33
- const messageHandler = async (event) => {
34
- if (!event.data) {
35
- this.logger.warn('Malformed event data');
36
- return;
37
- }
38
- const requestConfig = await CoreUtils.processStream(event);
39
- const request = new oRequest(requestConfig);
40
- // Use ResponseBuilder with automatic error handling and metrics tracking
41
- const responseBuilder = ResponseBuilder.create().withMetrics(this.metrics);
42
- let response;
43
- try {
44
- const result = await this.execute(request, stream);
45
- response = await responseBuilder.build(request, result, null);
46
- }
47
- catch (error) {
48
- this.logger.error('Error executing tool: ', request.toString(), error, typeof error);
49
- response = await responseBuilder.buildError(request, error);
50
- }
51
- // Send the response
52
- await CoreUtils.sendResponse(response, stream);
53
- };
54
- // Attach listener synchronously before any async operations
55
- stream.addEventListener('message', messageHandler);
56
- }
57
- async _tool_identify() {
58
- return {
59
- address: this.address.toString(),
60
- staticAddress: this.staticAddress?.toString(),
61
- transports: this.transports.map((t) => t.toMultiaddr().toString()),
62
- };
63
- }
64
- async _tool_child_register(request) {
65
- this.logger.debug('Child register: ', request.params);
66
- const { address, transports } = request.params;
67
- const childAddress = new oNodeAddress(address, transports.map((t) => new oNodeTransport(t)));
68
- // Add child to hierarchy
69
- this.hierarchyManager.addChild(childAddress);
70
- // Emit child joined event
71
- if (this.notificationManager) {
72
- this.notificationManager.emit(new ChildJoinedEvent({
73
- source: this.address,
74
- childAddress,
75
- parentAddress: this.address,
76
- }));
77
- }
78
- return {
79
- message: `Child node registered with parent! ${childAddress.toString()}`,
80
- parentTransports: this.parentTransports.map((t) => t.toString()),
81
- };
82
- }
83
- }
@@ -1,6 +0,0 @@
1
- export * from './o-node.address.js';
2
- export * from './o-node.router.js';
3
- export * from './o-node.transport.js';
4
- export * from './resolvers/index.js';
5
- export * from './route.request.js';
6
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/router/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC"}
@@ -1,5 +0,0 @@
1
- export * from './o-node.address.js';
2
- export * from './o-node.router.js';
3
- export * from './o-node.transport.js';
4
- export * from './resolvers/index.js';
5
- export * from './route.request.js';
@@ -1,3 +0,0 @@
1
- export interface oNodeRouterConfig {
2
- }
3
- //# sourceMappingURL=o-node-router.config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"o-node-router.config.d.ts","sourceRoot":"","sources":["../../../../../src/router/interfaces/o-node-router.config.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;CAAG"}
@@ -1,8 +0,0 @@
1
- import { oNodeAddress } from '../o-node.address';
2
- import { oRouterRequest, RouteResponse } from '@olane/o-core';
3
- export interface oNodeRouterResponse extends RouteResponse {
4
- nextHopAddress: oNodeAddress;
5
- targetAddress: oNodeAddress;
6
- requestOverride?: oRouterRequest;
7
- }
8
- //# sourceMappingURL=o-node-router.response.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"o-node-router.response.d.ts","sourceRoot":"","sources":["../../../../../src/router/interfaces/o-node-router.response.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9D,MAAM,WAAW,mBAAoB,SAAQ,aAAa;IACxD,cAAc,EAAE,YAAY,CAAC;IAC7B,aAAa,EAAE,YAAY,CAAC;IAC5B,eAAe,CAAC,EAAE,cAAc,CAAC;CAClC"}
@@ -1,18 +0,0 @@
1
- import { Multiaddr } from '@olane/o-config';
2
- import { oNodeTransport } from './o-node.transport.js';
3
- import { oAddress } from '@olane/o-core';
4
- export declare class oNodeAddress extends oAddress {
5
- readonly value: string;
6
- transports: oNodeTransport[];
7
- constructor(value: string, transports?: oNodeTransport[]);
8
- static fromJSON(json: {
9
- value: string;
10
- transports: string[] | Multiaddr[];
11
- }): oNodeAddress;
12
- get libp2pTransports(): oNodeTransport[];
13
- get customTransports(): oNodeTransport[];
14
- toString(): string;
15
- toMultiaddr(): Multiaddr;
16
- static fromMultiaddr(ma: Multiaddr): oAddress;
17
- }
18
- //# sourceMappingURL=o-node.address.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"o-node.address.d.ts","sourceRoot":"","sources":["../../../../src/router/o-node.address.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAa,MAAM,iBAAiB,CAAC;AAEvD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAqB,QAAQ,EAAiB,MAAM,eAAe,CAAC;AAE3E,qBAAa,YAAa,SAAQ,QAAQ;aAItB,KAAK,EAAE,MAAM;IAHxB,UAAU,EAAE,cAAc,EAAE,CAAM;gBAGvB,KAAK,EAAE,MAAM,EAC7B,UAAU,GAAE,cAAc,EAAO;IAMnC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE;QACpB,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,CAAC;KACpC,GAAG,YAAY;IAShB,IAAI,gBAAgB,IAAI,cAAc,EAAE,CAEvC;IAED,IAAI,gBAAgB,IAAI,cAAc,EAAE,CAEvC;IAED,QAAQ,IAAI,MAAM;IAIlB,WAAW,IAAI,SAAS;IAIxB,MAAM,CAAC,aAAa,CAAC,EAAE,EAAE,SAAS,GAAG,QAAQ;CAG9C"}
@@ -1,29 +0,0 @@
1
- import { multiaddr } from '@olane/o-config';
2
- import { oNodeTransport } from './o-node.transport.js';
3
- import { oAddress, TransportType } from '@olane/o-core';
4
- export class oNodeAddress extends oAddress {
5
- constructor(value, transports = []) {
6
- super(value);
7
- this.value = value;
8
- this.transports = [];
9
- this.transports = transports;
10
- }
11
- static fromJSON(json) {
12
- return new oNodeAddress(json.value, json.transports.map((t) => new oNodeTransport(t)));
13
- }
14
- get libp2pTransports() {
15
- return this.transports.filter((t) => t.type === TransportType.LIBP2P) || [];
16
- }
17
- get customTransports() {
18
- return this.transports.filter((t) => t.type === TransportType.CUSTOM) || [];
19
- }
20
- toString() {
21
- return this.value;
22
- }
23
- toMultiaddr() {
24
- return multiaddr(this.protocol);
25
- }
26
- static fromMultiaddr(ma) {
27
- return new oAddress(ma.toString().replace('/o/', 'o://'));
28
- }
29
- }
@@ -1,46 +0,0 @@
1
- import { oNodeAddress } from './o-node.address.js';
2
- import { oRouterRequest, RouteResponse } from '@olane/o-core';
3
- import type { oNode } from '../o-node.js';
4
- import { oToolRouter } from '@olane/o-tool';
5
- export declare class oNodeRouter extends oToolRouter {
6
- private routingPolicy;
7
- constructor();
8
- /**
9
- * Forwards a request to the specified address via libp2p transport.
10
- * Handles self-routing (local execution) and destination detection.
11
- *
12
- * @param address The next hop address to forward to
13
- * @param request The router request to forward
14
- * @param node The current node context
15
- * @returns The response from the forwarded request
16
- */
17
- protected forward(address: oNodeAddress, request: oRouterRequest, node: oNode): Promise<any>;
18
- /**
19
- * Executes a request locally when routing to self.
20
- * Now uses ResponseBuilder for consistency with useSelf() behavior.
21
- */
22
- private executeSelfRouting;
23
- /**
24
- * Checks if the next hop is the final destination address.
25
- */
26
- private isDestinationAddress;
27
- /**
28
- * Unwraps the routing envelope when we've reached the destination.
29
- */
30
- private unwrapDestinationRequest;
31
- /**
32
- * Dials a remote node and transmits the request via libp2p.
33
- */
34
- private dialAndTransmit;
35
- /**
36
- * Translates an address to determine the next hop and target addresses.
37
- * First checks routing policy for external routing, then applies resolver chain.
38
- */
39
- translate(address: oNodeAddress, node: oNode): Promise<RouteResponse>;
40
- /**
41
- * Determines if an address is internal to this node's hierarchy.
42
- * Delegates to the routing policy for the decision.
43
- */
44
- isInternal(addressWithTransports: oNodeAddress, node: oNode): boolean;
45
- }
46
- //# sourceMappingURL=o-node.router.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"o-node.router.d.ts","sourceRoot":"","sources":["../../../../src/router/o-node.router.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAML,cAAc,EAGd,aAAa,EACd,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAO5C,qBAAa,WAAY,SAAQ,WAAW;IAC1C,OAAO,CAAC,aAAa,CAAqB;;IAO1C;;;;;;;;OAQG;cACa,OAAO,CACrB,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,KAAK,GACV,OAAO,CAAC,GAAG,CAAC;IA6Bf;;;OAGG;YACW,kBAAkB;IA8DhC;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAS5B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAWhC;;OAEG;YACW,eAAe;IA2C7B;;;OAGG;IACG,SAAS,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,aAAa,CAAC;IAyB3E;;;OAGG;IACH,UAAU,CAAC,qBAAqB,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,GAAG,OAAO;CAGtE"}
@@ -1,181 +0,0 @@
1
- import { CoreUtils, oAddress, oError, oErrorCodes, oRequest, ResponseBuilder, } from '@olane/o-core';
2
- import { oToolRouter } from '@olane/o-tool';
3
- import { oNodeConnection } from '../connection/o-node-connection.js';
4
- import { oNodeRoutingPolicy } from './o-node.routing-policy.js';
5
- import { oStreamRequest } from '../connection/o-stream.request.js';
6
- export class oNodeRouter extends oToolRouter {
7
- constructor() {
8
- super();
9
- this.routingPolicy = new oNodeRoutingPolicy();
10
- }
11
- /**
12
- * Forwards a request to the specified address via libp2p transport.
13
- * Handles self-routing (local execution) and destination detection.
14
- *
15
- * @param address The next hop address to forward to
16
- * @param request The router request to forward
17
- * @param node The current node context
18
- * @returns The response from the forwarded request
19
- */
20
- async forward(address, request, node) {
21
- if (!request.stream) {
22
- throw new oError(oErrorCodes.INVALID_REQUEST, 'Stream is required');
23
- }
24
- let nextHopRequest = new oRequest({
25
- method: request.method,
26
- params: request.params,
27
- id: request.id,
28
- });
29
- if (request.stream) {
30
- nextHopRequest.stream = request.stream;
31
- }
32
- // Handle self-routing: execute locally instead of dialing
33
- if (this.routingPolicy.isSelfAddress(address, node)) {
34
- return this.executeSelfRouting(request, node);
35
- }
36
- // Check if we've reached the final destination
37
- const isDestination = this.isDestinationAddress(address, request);
38
- if (isDestination) {
39
- nextHopRequest = this.unwrapDestinationRequest(request);
40
- }
41
- // Dial and transmit to remote node
42
- return this.dialAndTransmit(address, nextHopRequest, node);
43
- }
44
- /**
45
- * Executes a request locally when routing to self.
46
- * Now uses ResponseBuilder for consistency with useSelf() behavior.
47
- */
48
- async executeSelfRouting(request, node) {
49
- const { payload } = request.params;
50
- const params = payload.params;
51
- const localRequest = new oRequest({
52
- method: payload.method,
53
- params: {
54
- ...params,
55
- _connectionId: request.params._connectionId,
56
- _requestMethod: payload.method,
57
- },
58
- id: request.id,
59
- });
60
- // Create ResponseBuilder with metrics tracking
61
- const responseBuilder = ResponseBuilder.create().withMetrics(node.metrics);
62
- // Handle streaming requests
63
- const isStream = request.params._isStreaming;
64
- if (isStream && request.stream) {
65
- // For streaming, we need to handle the stream chunks
66
- try {
67
- const result = await node.execute(localRequest, request.stream);
68
- const response = await responseBuilder.build(localRequest, result, null, {
69
- isStream: true,
70
- });
71
- // Return unwrapped data for consistency with dialAndTransmit
72
- return response.result.data;
73
- }
74
- catch (error) {
75
- const errorResponse = await responseBuilder.buildError(localRequest, error, {
76
- isStream: true,
77
- });
78
- // For errors, throw to match remote behavior
79
- throw responseBuilder.normalizeError(error);
80
- }
81
- }
82
- // Handle non-streaming requests with error handling
83
- try {
84
- const result = await node.execute(localRequest);
85
- const response = await responseBuilder.build(localRequest, result, null);
86
- // Return unwrapped data to match dialAndTransmit behavior
87
- return response.result.data;
88
- }
89
- catch (error) {
90
- // Build error response for metrics tracking
91
- await responseBuilder.buildError(localRequest, error);
92
- // Then throw the normalized error
93
- throw responseBuilder.normalizeError(error);
94
- }
95
- }
96
- /**
97
- * Checks if the next hop is the final destination address.
98
- */
99
- isDestinationAddress(address, request) {
100
- return address
101
- ?.toStaticAddress()
102
- .equals(new oAddress(request?.params?.address).toStaticAddress());
103
- }
104
- /**
105
- * Unwraps the routing envelope when we've reached the destination.
106
- */
107
- unwrapDestinationRequest(request) {
108
- const { payload } = request.params;
109
- const params = payload.params;
110
- return new oStreamRequest({
111
- method: payload.method,
112
- params: { ...params },
113
- id: request.id,
114
- stream: request.stream,
115
- });
116
- }
117
- /**
118
- * Dials a remote node and transmits the request via libp2p.
119
- */
120
- async dialAndTransmit(address, request, node) {
121
- try {
122
- const isStream = request.params._isStreaming ||
123
- request.params.payload?.params?._isStreaming;
124
- const connection = await node.p2pNode.dial(address.libp2pTransports.map((t) => t.toMultiaddr()));
125
- const nodeConnection = new oNodeConnection({
126
- p2pConnection: connection,
127
- nextHopAddress: address,
128
- address: node.address,
129
- callerAddress: node.address,
130
- isStream: isStream,
131
- });
132
- if (isStream) {
133
- const routeRequest = request;
134
- if (!routeRequest.stream) {
135
- throw new oError(oErrorCodes.INVALID_REQUEST, 'Stream is required');
136
- }
137
- nodeConnection.onChunk(async (response) => {
138
- CoreUtils.sendStreamResponse(response, routeRequest.stream);
139
- });
140
- // allow this to continue as we will tell the transmitter to stream the response and we will intercept via the above listener
141
- }
142
- const response = await nodeConnection.transmit(request);
143
- return response.result.data;
144
- }
145
- catch (error) {
146
- if (error?.name === 'UnsupportedProtocolError') {
147
- throw new oError(oErrorCodes.NOT_FOUND, 'Address not found');
148
- }
149
- throw error;
150
- }
151
- }
152
- /**
153
- * Translates an address to determine the next hop and target addresses.
154
- * First checks routing policy for external routing, then applies resolver chain.
155
- */
156
- async translate(address, node) {
157
- // Check if external routing is needed
158
- const externalRoute = this.routingPolicy.getExternalRoutingStrategy(address, node);
159
- if (externalRoute) {
160
- return externalRoute;
161
- }
162
- // Apply resolver chain for internal routing
163
- const { nextHopAddress, targetAddress, requestOverride } = await this.addressResolution.resolve({
164
- address,
165
- node,
166
- targetAddress: address,
167
- });
168
- return {
169
- nextHopAddress,
170
- targetAddress: targetAddress,
171
- requestOverride,
172
- };
173
- }
174
- /**
175
- * Determines if an address is internal to this node's hierarchy.
176
- * Delegates to the routing policy for the decision.
177
- */
178
- isInternal(addressWithTransports, node) {
179
- return this.routingPolicy.isInternalAddress(addressWithTransports, node);
180
- }
181
- }
@@ -1,30 +0,0 @@
1
- import { oAddress, oRoutingPolicy, RouteResponse } from '@olane/o-core';
2
- import type { oNode } from '../o-node.js';
3
- /**
4
- * Routing policy implementation for oNode that handles internal/external routing decisions
5
- * and leader-based routing strategies.
6
- */
7
- export declare class oNodeRoutingPolicy extends oRoutingPolicy {
8
- /**
9
- * Determines if an address is internal to the current node's hierarchy.
10
- * An address is considered internal if:
11
- * 1. It doesn't have leader references, OR
12
- * 2. Its leader references match our known leaders
13
- *
14
- * @param address The address to check
15
- * @param node The current node context
16
- * @returns True if the address is internal to this hierarchy
17
- */
18
- isInternalAddress(address: oAddress, node: oNode): boolean;
19
- /**
20
- * Determines the routing strategy for external addresses.
21
- * External addresses are routed to the leader of the external OS using
22
- * the address's libp2p transports.
23
- *
24
- * @param address The address to evaluate
25
- * @param node The current node context
26
- * @returns RouteResponse if external routing is needed, null if internal
27
- */
28
- getExternalRoutingStrategy(address: oAddress, node: oNode): RouteResponse | null;
29
- }
30
- //# sourceMappingURL=o-node.routing-policy.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"o-node.routing-policy.d.ts","sourceRoot":"","sources":["../../../../src/router/o-node.routing-policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAG1C;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,cAAc;IACpD;;;;;;;;;OASG;IACH,iBAAiB,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,GAAG,OAAO;IAuB1D;;;;;;;;OAQG;IACH,0BAA0B,CACxB,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,KAAK,GACV,aAAa,GAAG,IAAI;CAmBxB"}