@bitblit/ratchet-epsilon-common 4.0.116-alpha → 4.0.119-alpha

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 (323) hide show
  1. package/lib/background/background-handler.d.ts +1 -1
  2. package/lib/background/background-http-adapter-handler.d.ts +1 -1
  3. package/lib/background/background-validator.d.ts +1 -1
  4. package/lib/build/ratchet-epsilon-common-info.d.ts +1 -1
  5. package/lib/built-in/http/built-in-auth-filters.d.ts +1 -1
  6. package/lib/cli/ratchet-cli-handler.d.ts +2 -2
  7. package/lib/config/epsilon-logger-config.d.ts +2 -2
  8. package/lib/config/http/filter-chain-context.d.ts +1 -1
  9. package/lib/config/http/http-config.d.ts +1 -1
  10. package/lib/epsilon-global-handler.d.ts +1 -1
  11. package/lib/epsilon-instance.d.ts +1 -1
  12. package/lib/epsilon-logging-extension-processor.d.ts +2 -2
  13. package/lib/http/auth/auth0-web-token-manipulator.d.ts +1 -1
  14. package/lib/http/auth/google-web-token-manipulator.d.ts +1 -1
  15. package/lib/http/auth/jwt-ratchet-local-web-token-manipulator.d.ts +2 -2
  16. package/lib/http/auth/local-web-token-manipulator.d.ts +3 -3
  17. package/lib/http/auth/web-token-manipulator.d.ts +1 -1
  18. package/lib/http/event-util.d.ts +1 -1
  19. package/lib/http/response-util.d.ts +1 -1
  20. package/lib/http/route/epsilon-router.d.ts +1 -1
  21. package/lib/http/route/router-util.d.ts +2 -2
  22. package/lib/index.d.ts +132 -1
  23. package/lib/index.mjs +344 -0
  24. package/lib/index.mjs.map +1 -0
  25. package/lib/local-container-server.d.ts +1 -1
  26. package/lib/local-server.d.ts +1 -1
  27. package/lib/sample/test-error-server.d.ts +1 -1
  28. package/lib/util/epsilon-config-parser.d.ts +1 -1
  29. package/package.json +18 -19
  30. package/lib/background/background-dynamo-log-table-handler.js +0 -38
  31. package/lib/background/background-dynamo-log-table-handler.js.map +0 -1
  32. package/lib/background/background-entry.js +0 -2
  33. package/lib/background/background-entry.js.map +0 -1
  34. package/lib/background/background-execution-event-type.js +0 -9
  35. package/lib/background/background-execution-event-type.js.map +0 -1
  36. package/lib/background/background-execution-event.js +0 -2
  37. package/lib/background/background-execution-event.js.map +0 -1
  38. package/lib/background/background-execution-listener.js +0 -2
  39. package/lib/background/background-execution-listener.js.map +0 -1
  40. package/lib/background/background-handler.js +0 -274
  41. package/lib/background/background-handler.js.map +0 -1
  42. package/lib/background/background-http-adapter-handler.js +0 -129
  43. package/lib/background/background-http-adapter-handler.js.map +0 -1
  44. package/lib/background/background-meta-response-internal.js +0 -2
  45. package/lib/background/background-meta-response-internal.js.map +0 -1
  46. package/lib/background/background-process-handling.js +0 -6
  47. package/lib/background/background-process-handling.js.map +0 -1
  48. package/lib/background/background-process-log-table-entry.js +0 -2
  49. package/lib/background/background-process-log-table-entry.js.map +0 -1
  50. package/lib/background/background-queue-response-internal.js +0 -2
  51. package/lib/background/background-queue-response-internal.js.map +0 -1
  52. package/lib/background/background-validator.js +0 -87
  53. package/lib/background/background-validator.js.map +0 -1
  54. package/lib/background/epsilon-background-process-error.js +0 -95
  55. package/lib/background/epsilon-background-process-error.js.map +0 -1
  56. package/lib/background/internal-background-entry.js +0 -2
  57. package/lib/background/internal-background-entry.js.map +0 -1
  58. package/lib/background/manager/abstract-background-manager.js +0 -90
  59. package/lib/background/manager/abstract-background-manager.js.map +0 -1
  60. package/lib/background/manager/aws-sqs-sns-background-manager.js +0 -154
  61. package/lib/background/manager/aws-sqs-sns-background-manager.js.map +0 -1
  62. package/lib/background/manager/background-manager-like.js +0 -2
  63. package/lib/background/manager/background-manager-like.js.map +0 -1
  64. package/lib/background/manager/background-manager.spec.js +0 -74
  65. package/lib/background/manager/background-manager.spec.js.map +0 -1
  66. package/lib/background/manager/single-thread-local-background-manager.js +0 -46
  67. package/lib/background/manager/single-thread-local-background-manager.js.map +0 -1
  68. package/lib/background/s3-background-transaction-logger.js +0 -53
  69. package/lib/background/s3-background-transaction-logger.js.map +0 -1
  70. package/lib/build/ratchet-epsilon-common-info.js +0 -15
  71. package/lib/build/ratchet-epsilon-common-info.js.map +0 -1
  72. package/lib/built-in/background/echo-processor.js +0 -17
  73. package/lib/built-in/background/echo-processor.js.map +0 -1
  74. package/lib/built-in/background/log-and-enqueue-echo-processor.js +0 -13
  75. package/lib/built-in/background/log-and-enqueue-echo-processor.js.map +0 -1
  76. package/lib/built-in/background/log-message-background-error-processor.js +0 -7
  77. package/lib/built-in/background/log-message-background-error-processor.js.map +0 -1
  78. package/lib/built-in/background/no-op-processor.js +0 -10
  79. package/lib/built-in/background/no-op-processor.js.map +0 -1
  80. package/lib/built-in/background/retry-processor.js +0 -42
  81. package/lib/built-in/background/retry-processor.js.map +0 -1
  82. package/lib/built-in/background/sample-delay-processor.js +0 -14
  83. package/lib/built-in/background/sample-delay-processor.js.map +0 -1
  84. package/lib/built-in/background/sample-input-validated-processor-data.js +0 -2
  85. package/lib/built-in/background/sample-input-validated-processor-data.js.map +0 -1
  86. package/lib/built-in/background/sample-input-validated-processor.js +0 -13
  87. package/lib/built-in/background/sample-input-validated-processor.js.map +0 -1
  88. package/lib/built-in/built-in-trace-id-generators.js +0 -22
  89. package/lib/built-in/built-in-trace-id-generators.js.map +0 -1
  90. package/lib/built-in/daemon/daemon-authorizer-function.js +0 -2
  91. package/lib/built-in/daemon/daemon-authorizer-function.js.map +0 -1
  92. package/lib/built-in/daemon/daemon-config.js +0 -2
  93. package/lib/built-in/daemon/daemon-config.js.map +0 -1
  94. package/lib/built-in/daemon/daemon-group-selection-function.js +0 -2
  95. package/lib/built-in/daemon/daemon-group-selection-function.js.map +0 -1
  96. package/lib/built-in/daemon/daemon-handler.js +0 -61
  97. package/lib/built-in/daemon/daemon-handler.js.map +0 -1
  98. package/lib/built-in/daemon/daemon-process-state-list.js +0 -2
  99. package/lib/built-in/daemon/daemon-process-state-list.js.map +0 -1
  100. package/lib/built-in/http/apollo-filter.js +0 -60
  101. package/lib/built-in/http/apollo-filter.js.map +0 -1
  102. package/lib/built-in/http/built-in-auth-filters.js +0 -108
  103. package/lib/built-in/http/built-in-auth-filters.js.map +0 -1
  104. package/lib/built-in/http/built-in-authorizers.js +0 -40
  105. package/lib/built-in/http/built-in-authorizers.js.map +0 -1
  106. package/lib/built-in/http/built-in-filters.js +0 -210
  107. package/lib/built-in/http/built-in-filters.js.map +0 -1
  108. package/lib/built-in/http/built-in-handlers.js +0 -70
  109. package/lib/built-in/http/built-in-handlers.js.map +0 -1
  110. package/lib/built-in/http/log-level-manipulation-filter.js +0 -18
  111. package/lib/built-in/http/log-level-manipulation-filter.js.map +0 -1
  112. package/lib/built-in/http/run-handler-as-filter.js +0 -61
  113. package/lib/built-in/http/run-handler-as-filter.js.map +0 -1
  114. package/lib/built-in/http/run-handler-as-filter.spec.js +0 -41
  115. package/lib/built-in/http/run-handler-as-filter.spec.js.map +0 -1
  116. package/lib/cli/ratchet-cli-handler.js +0 -21
  117. package/lib/cli/ratchet-cli-handler.js.map +0 -1
  118. package/lib/cli/run-background-process-from-command-line.js +0 -23
  119. package/lib/cli/run-background-process-from-command-line.js.map +0 -1
  120. package/lib/config/background/background-aws-config.js +0 -2
  121. package/lib/config/background/background-aws-config.js.map +0 -1
  122. package/lib/config/background/background-config.js +0 -2
  123. package/lib/config/background/background-config.js.map +0 -1
  124. package/lib/config/background/background-error-processor.js +0 -2
  125. package/lib/config/background/background-error-processor.js.map +0 -1
  126. package/lib/config/background/background-processor.js +0 -2
  127. package/lib/config/background/background-processor.js.map +0 -1
  128. package/lib/config/background/background-transaction-log.js +0 -2
  129. package/lib/config/background/background-transaction-log.js.map +0 -1
  130. package/lib/config/background/background-transaction-logger.js +0 -2
  131. package/lib/config/background/background-transaction-logger.js.map +0 -1
  132. package/lib/config/cron/abstract-cron-entry.js +0 -2
  133. package/lib/config/cron/abstract-cron-entry.js.map +0 -1
  134. package/lib/config/cron/cron-background-entry.js +0 -2
  135. package/lib/config/cron/cron-background-entry.js.map +0 -1
  136. package/lib/config/cron/cron-config.js +0 -2
  137. package/lib/config/cron/cron-config.js.map +0 -1
  138. package/lib/config/dynamo-db-config.js +0 -2
  139. package/lib/config/dynamo-db-config.js.map +0 -1
  140. package/lib/config/epsilon-config.js +0 -2
  141. package/lib/config/epsilon-config.js.map +0 -1
  142. package/lib/config/epsilon-lambda-event-handler.js +0 -2
  143. package/lib/config/epsilon-lambda-event-handler.js.map +0 -1
  144. package/lib/config/epsilon-logger-config.js +0 -2
  145. package/lib/config/epsilon-logger-config.js.map +0 -1
  146. package/lib/config/generic-aws-event-handler-function.js +0 -2
  147. package/lib/config/generic-aws-event-handler-function.js.map +0 -1
  148. package/lib/config/http/authorizer-function.js +0 -2
  149. package/lib/config/http/authorizer-function.js.map +0 -1
  150. package/lib/config/http/epsilon-authorization-context.js +0 -2
  151. package/lib/config/http/epsilon-authorization-context.js.map +0 -1
  152. package/lib/config/http/extended-api-gateway-event.js +0 -2
  153. package/lib/config/http/extended-api-gateway-event.js.map +0 -1
  154. package/lib/config/http/filter-chain-context.js +0 -2
  155. package/lib/config/http/filter-chain-context.js.map +0 -1
  156. package/lib/config/http/filter-function.js +0 -2
  157. package/lib/config/http/filter-function.js.map +0 -1
  158. package/lib/config/http/handler-function.js +0 -2
  159. package/lib/config/http/handler-function.js.map +0 -1
  160. package/lib/config/http/http-config.js +0 -2
  161. package/lib/config/http/http-config.js.map +0 -1
  162. package/lib/config/http/http-processing-config.js +0 -2
  163. package/lib/config/http/http-processing-config.js.map +0 -1
  164. package/lib/config/http/mapped-http-processing-config.js +0 -2
  165. package/lib/config/http/mapped-http-processing-config.js.map +0 -1
  166. package/lib/config/http/null-returned-object-handling.js +0 -7
  167. package/lib/config/http/null-returned-object-handling.js.map +0 -1
  168. package/lib/config/inter-api/inter-api-aws-config.js +0 -2
  169. package/lib/config/inter-api/inter-api-aws-config.js.map +0 -1
  170. package/lib/config/inter-api/inter-api-config.js +0 -2
  171. package/lib/config/inter-api/inter-api-config.js.map +0 -1
  172. package/lib/config/inter-api/inter-api-process-mapping.js +0 -2
  173. package/lib/config/inter-api/inter-api-process-mapping.js.map +0 -1
  174. package/lib/config/logging-trace-id-generator.js +0 -2
  175. package/lib/config/logging-trace-id-generator.js.map +0 -1
  176. package/lib/config/open-api/open-api-document-components.js +0 -2
  177. package/lib/config/open-api/open-api-document-components.js.map +0 -1
  178. package/lib/config/open-api/open-api-document-path.js +0 -2
  179. package/lib/config/open-api/open-api-document-path.js.map +0 -1
  180. package/lib/config/open-api/open-api-document.js +0 -2
  181. package/lib/config/open-api/open-api-document.js.map +0 -1
  182. package/lib/config/s3-config.js +0 -2
  183. package/lib/config/s3-config.js.map +0 -1
  184. package/lib/config/sns-config.js +0 -2
  185. package/lib/config/sns-config.js.map +0 -1
  186. package/lib/epsilon-build-properties.js +0 -25
  187. package/lib/epsilon-build-properties.js.map +0 -1
  188. package/lib/epsilon-constants.js +0 -48
  189. package/lib/epsilon-constants.js.map +0 -1
  190. package/lib/epsilon-global-handler.js +0 -156
  191. package/lib/epsilon-global-handler.js.map +0 -1
  192. package/lib/epsilon-instance.js +0 -2
  193. package/lib/epsilon-instance.js.map +0 -1
  194. package/lib/epsilon-logging-extension-processor.js +0 -16
  195. package/lib/epsilon-logging-extension-processor.js.map +0 -1
  196. package/lib/http/auth/api-gateway-adapter-authentication-handler.js +0 -73
  197. package/lib/http/auth/api-gateway-adapter-authentication-handler.js.map +0 -1
  198. package/lib/http/auth/auth0-web-token-manipulator.js +0 -62
  199. package/lib/http/auth/auth0-web-token-manipulator.js.map +0 -1
  200. package/lib/http/auth/basic-auth-token.js +0 -2
  201. package/lib/http/auth/basic-auth-token.js.map +0 -1
  202. package/lib/http/auth/google-web-token-manipulator.js +0 -72
  203. package/lib/http/auth/google-web-token-manipulator.js.map +0 -1
  204. package/lib/http/auth/google-web-token-manipulator.spec.js +0 -11
  205. package/lib/http/auth/google-web-token-manipulator.spec.js.map +0 -1
  206. package/lib/http/auth/jwt-ratchet-local-web-token-manipulator.js +0 -28
  207. package/lib/http/auth/jwt-ratchet-local-web-token-manipulator.js.map +0 -1
  208. package/lib/http/auth/local-web-token-manipulator.js +0 -75
  209. package/lib/http/auth/local-web-token-manipulator.js.map +0 -1
  210. package/lib/http/auth/local-web-token-manipulator.spec.js +0 -25
  211. package/lib/http/auth/local-web-token-manipulator.spec.js.map +0 -1
  212. package/lib/http/auth/web-token-manipulator.js +0 -2
  213. package/lib/http/auth/web-token-manipulator.js.map +0 -1
  214. package/lib/http/error/bad-gateway.js +0 -10
  215. package/lib/http/error/bad-gateway.js.map +0 -1
  216. package/lib/http/error/bad-request-error.js +0 -10
  217. package/lib/http/error/bad-request-error.js.map +0 -1
  218. package/lib/http/error/conflict-error.js +0 -10
  219. package/lib/http/error/conflict-error.js.map +0 -1
  220. package/lib/http/error/epsilon-http-error.js +0 -135
  221. package/lib/http/error/epsilon-http-error.js.map +0 -1
  222. package/lib/http/error/epsilon-http-error.spec.js +0 -12
  223. package/lib/http/error/epsilon-http-error.spec.js.map +0 -1
  224. package/lib/http/error/forbidden-error.js +0 -10
  225. package/lib/http/error/forbidden-error.js.map +0 -1
  226. package/lib/http/error/gateway-timeout.js +0 -10
  227. package/lib/http/error/gateway-timeout.js.map +0 -1
  228. package/lib/http/error/method-not-allowed-error.js +0 -10
  229. package/lib/http/error/method-not-allowed-error.js.map +0 -1
  230. package/lib/http/error/misconfigured-error.js +0 -10
  231. package/lib/http/error/misconfigured-error.js.map +0 -1
  232. package/lib/http/error/not-found-error.js +0 -10
  233. package/lib/http/error/not-found-error.js.map +0 -1
  234. package/lib/http/error/not-implemented.js +0 -10
  235. package/lib/http/error/not-implemented.js.map +0 -1
  236. package/lib/http/error/request-timeout-error.js +0 -10
  237. package/lib/http/error/request-timeout-error.js.map +0 -1
  238. package/lib/http/error/service-unavailable.js +0 -10
  239. package/lib/http/error/service-unavailable.js.map +0 -1
  240. package/lib/http/error/too-many-requests-error.js +0 -10
  241. package/lib/http/error/too-many-requests-error.js.map +0 -1
  242. package/lib/http/error/unauthorized-error.js +0 -10
  243. package/lib/http/error/unauthorized-error.js.map +0 -1
  244. package/lib/http/event-util.js +0 -177
  245. package/lib/http/event-util.js.map +0 -1
  246. package/lib/http/event-util.spec.js +0 -162
  247. package/lib/http/event-util.spec.js.map +0 -1
  248. package/lib/http/response-util.js +0 -142
  249. package/lib/http/response-util.js.map +0 -1
  250. package/lib/http/response-util.spec.js +0 -93
  251. package/lib/http/response-util.spec.js.map +0 -1
  252. package/lib/http/route/epsilon-router.js +0 -2
  253. package/lib/http/route/epsilon-router.js.map +0 -1
  254. package/lib/http/route/extended-auth-response-context.js +0 -2
  255. package/lib/http/route/extended-auth-response-context.js.map +0 -1
  256. package/lib/http/route/route-mapping.js +0 -2
  257. package/lib/http/route/route-mapping.js.map +0 -1
  258. package/lib/http/route/route-validator-config.js +0 -2
  259. package/lib/http/route/route-validator-config.js.map +0 -1
  260. package/lib/http/route/router-util.js +0 -234
  261. package/lib/http/route/router-util.js.map +0 -1
  262. package/lib/http/route/router-util.spec.js +0 -24
  263. package/lib/http/route/router-util.spec.js.map +0 -1
  264. package/lib/http/web-handler.js +0 -119
  265. package/lib/http/web-handler.js.map +0 -1
  266. package/lib/http/web-handler.spec.js +0 -33
  267. package/lib/http/web-handler.spec.js.map +0 -1
  268. package/lib/http/web-v2-handler.js +0 -23
  269. package/lib/http/web-v2-handler.js.map +0 -1
  270. package/lib/index.js +0 -2
  271. package/lib/index.js.map +0 -1
  272. package/lib/inter-api/inter-api-entry.js +0 -2
  273. package/lib/inter-api/inter-api-entry.js.map +0 -1
  274. package/lib/inter-api/inter-api-util.js +0 -60
  275. package/lib/inter-api/inter-api-util.js.map +0 -1
  276. package/lib/inter-api/inter-api-util.spec.js +0 -62
  277. package/lib/inter-api/inter-api-util.spec.js.map +0 -1
  278. package/lib/inter-api-manager.js +0 -66
  279. package/lib/inter-api-manager.js.map +0 -1
  280. package/lib/lambda-event-handler/cron-epsilon-lambda-event-handler.js +0 -74
  281. package/lib/lambda-event-handler/cron-epsilon-lambda-event-handler.js.map +0 -1
  282. package/lib/lambda-event-handler/cron-epsilon-lambda-event-handler.spec.js +0 -51
  283. package/lib/lambda-event-handler/cron-epsilon-lambda-event-handler.spec.js.map +0 -1
  284. package/lib/lambda-event-handler/dynamo-epsilon-lambda-event-handler.js +0 -34
  285. package/lib/lambda-event-handler/dynamo-epsilon-lambda-event-handler.js.map +0 -1
  286. package/lib/lambda-event-handler/generic-sns-epsilon-lambda-event-handler.js +0 -30
  287. package/lib/lambda-event-handler/generic-sns-epsilon-lambda-event-handler.js.map +0 -1
  288. package/lib/lambda-event-handler/inter-api-epsilon-lambda-event-handler.js +0 -24
  289. package/lib/lambda-event-handler/inter-api-epsilon-lambda-event-handler.js.map +0 -1
  290. package/lib/lambda-event-handler/s3-epsilon-lambda-event-handler.js +0 -42
  291. package/lib/lambda-event-handler/s3-epsilon-lambda-event-handler.js.map +0 -1
  292. package/lib/local-container-server.js +0 -77
  293. package/lib/local-container-server.js.map +0 -1
  294. package/lib/local-server-cert.js +0 -69
  295. package/lib/local-server-cert.js.map +0 -1
  296. package/lib/local-server.js +0 -163
  297. package/lib/local-server.js.map +0 -1
  298. package/lib/open-api-util/open-api-doc-modifications.js +0 -2
  299. package/lib/open-api-util/open-api-doc-modifications.js.map +0 -1
  300. package/lib/open-api-util/open-api-doc-modifier.js +0 -80
  301. package/lib/open-api-util/open-api-doc-modifier.js.map +0 -1
  302. package/lib/open-api-util/open-api-doc-modifier.spec.js +0 -17
  303. package/lib/open-api-util/open-api-doc-modifier.spec.js.map +0 -1
  304. package/lib/open-api-util/yaml-combiner.js +0 -28
  305. package/lib/open-api-util/yaml-combiner.js.map +0 -1
  306. package/lib/open-api-util/yaml-combiner.spec.js +0 -23
  307. package/lib/open-api-util/yaml-combiner.spec.js.map +0 -1
  308. package/lib/sample/sample-server-components.js +0 -186
  309. package/lib/sample/sample-server-components.js.map +0 -1
  310. package/lib/sample/sample-server-static-files.js +0 -595
  311. package/lib/sample/sample-server-static-files.js.map +0 -1
  312. package/lib/sample/test-error-server.js +0 -45
  313. package/lib/sample/test-error-server.js.map +0 -1
  314. package/lib/util/aws-util.js +0 -66
  315. package/lib/util/aws-util.js.map +0 -1
  316. package/lib/util/context-util.js +0 -103
  317. package/lib/util/context-util.js.map +0 -1
  318. package/lib/util/cron-util.js +0 -69
  319. package/lib/util/cron-util.js.map +0 -1
  320. package/lib/util/cron-util.spec.js +0 -125
  321. package/lib/util/cron-util.spec.js.map +0 -1
  322. package/lib/util/epsilon-config-parser.js +0 -66
  323. package/lib/util/epsilon-config-parser.js.map +0 -1
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=background-process-log-table-entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"background-process-log-table-entry.js","sourceRoot":"","sources":["../../src/background/background-process-log-table-entry.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=background-queue-response-internal.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"background-queue-response-internal.js","sourceRoot":"","sources":["../../src/background/background-queue-response-internal.ts"],"names":[],"mappings":""}
@@ -1,87 +0,0 @@
1
- import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
2
- import { ErrorRatchet } from '@bitblit/ratchet-common/lib/lang/error-ratchet.js';
3
- import { StringRatchet } from '@bitblit/ratchet-common/lib/lang/string-ratchet.js';
4
- export class BackgroundValidator {
5
- cfg;
6
- modelValidator;
7
- constructor(cfg, modelValidator) {
8
- this.cfg = cfg;
9
- this.modelValidator = modelValidator;
10
- }
11
- findProcessor(typeName) {
12
- const rval = this.cfg.processors.find((s) => s.typeName === typeName);
13
- return rval;
14
- }
15
- validType(type) {
16
- return !!this.findProcessor(type);
17
- }
18
- validateEntry(entry) {
19
- const rval = [];
20
- if (!entry) {
21
- rval.push('Entry is null');
22
- }
23
- else if (!StringRatchet.trimToNull(entry.type)) {
24
- rval.push('Entry type is null or empty');
25
- const proc = this.findProcessor(entry.type);
26
- if (!proc) {
27
- rval.push('Entry type is invalid');
28
- }
29
- }
30
- return rval;
31
- }
32
- validateEntryAndThrowException(entry) {
33
- const errors = this.validateEntry(entry);
34
- if (errors.length > 0) {
35
- Logger.warn('Invalid entry %j : errors : %j', entry, errors);
36
- ErrorRatchet.throwFormattedErr('Invalid entry %j : errors : %j', entry, errors);
37
- }
38
- }
39
- static validateAndMapProcessors(processorInput, modelValidator) {
40
- const rval = new Map();
41
- processorInput.forEach((p, idx) => {
42
- if (!p) {
43
- ErrorRatchet.throwFormattedErr('Null processor provided at index %d', idx);
44
- }
45
- if (!StringRatchet.trimToNull(p.typeName)) {
46
- ErrorRatchet.throwFormattedErr('Processor at index %d defines no name', idx);
47
- }
48
- if (rval.has(p.typeName)) {
49
- ErrorRatchet.throwFormattedErr('More than one processor defined for type %s', p.typeName);
50
- }
51
- rval.set(p.typeName, p);
52
- });
53
- return rval;
54
- }
55
- static validateAwsConfig(cfg) {
56
- const rval = [];
57
- if (!cfg) {
58
- rval.push('Null config');
59
- }
60
- else {
61
- if (!cfg.notificationArn) {
62
- rval.push('AWS config missing notificationArn');
63
- }
64
- if (!cfg.queueUrl) {
65
- rval.push('AWS config missing queueUrl');
66
- }
67
- if ((cfg.sendNotificationOnBackgroundError || cfg.sendNotificationOnBackgroundValidationFailure) &&
68
- !cfg.backgroundProcessFailureSnsArn) {
69
- rval.push('At least one send notification flag set to true but no sns arn set');
70
- }
71
- }
72
- return rval;
73
- }
74
- static validateConfig(cfg) {
75
- const rval = [];
76
- if (!cfg) {
77
- rval.push('Null config');
78
- }
79
- else {
80
- if (!cfg.processors || cfg.processors.length === 0) {
81
- rval.push('No processes specified');
82
- }
83
- }
84
- return rval;
85
- }
86
- }
87
- //# sourceMappingURL=background-validator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"background-validator.js","sourceRoot":"","sources":["../../src/background/background-validator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,8CAA8C,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,mDAAmD,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AASnF,MAAM,OAAO,mBAAmB;IACV;IAA+B;IAAnD,YAAoB,GAAqB,EAAU,cAA8B;QAA7D,QAAG,GAAH,GAAG,CAAkB;QAAU,mBAAc,GAAd,cAAc,CAAgB;IAAG,CAAC;IAE9E,aAAa,CAAC,QAAgB;QACnC,MAAM,IAAI,GAA6B,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;QAChG,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,SAAS,CAAC,IAAY;QAC3B,OAAO,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAEM,aAAa,CAAI,KAAyB;QAC/C,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,EAAE;YACV,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;SAC5B;aAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YAChD,IAAI,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;YACzC,MAAM,IAAI,GAA6B,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAEtE,IAAI,CAAC,IAAI,EAAE;gBACT,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;aACpC;SACF;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,8BAA8B,CAAI,KAAyB;QAChE,MAAM,MAAM,GAAa,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACnD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YACrB,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YAC7D,YAAY,CAAC,iBAAiB,CAAC,gCAAgC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;SACjF;IACH,CAAC;IAEM,MAAM,CAAC,wBAAwB,CACpC,cAA0C,EAC1C,cAA8B;QAE9B,MAAM,IAAI,GAA0C,IAAI,GAAG,EAAoC,CAAC;QAChG,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;YAChC,IAAI,CAAC,CAAC,EAAE;gBACN,YAAY,CAAC,iBAAiB,CAAC,qCAAqC,EAAE,GAAG,CAAC,CAAC;aAC5E;YACD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE;gBACzC,YAAY,CAAC,iBAAiB,CAAC,uCAAuC,EAAE,GAAG,CAAC,CAAC;aAC9E;YAED,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE;gBACxB,YAAY,CAAC,iBAAiB,CAAC,6CAA6C,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;aAC3F;YAED,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,iBAAiB,CAAC,GAAwB;QACtD,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,IAAI,CAAC,GAAG,EAAE;YACR,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;SAC1B;aAAM;YACL,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE;gBACxB,IAAI,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;aACjD;YACD,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE;gBACjB,IAAI,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;aAC1C;YACD,IACE,CAAC,GAAG,CAAC,iCAAiC,IAAI,GAAG,CAAC,6CAA6C,CAAC;gBAC5F,CAAC,GAAG,CAAC,8BAA8B,EACnC;gBACA,IAAI,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAC;aACjF;SACF;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,cAAc,CAAC,GAAqB;QAChD,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,IAAI,CAAC,GAAG,EAAE;YACR,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;SAC1B;aAAM;YACL,IAAI,CAAC,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;gBAClD,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;aACrC;SACF;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
@@ -1,95 +0,0 @@
1
- import util from 'util';
2
- class EpsilonBackgroundProcessError extends Error {
3
- static EPSILON_BACKGROUND_PROCESS_ERROR_FLAG_KEY = '__epsilonBackgroundProcessErrorFlag';
4
- _errors;
5
- _detailErrorCode;
6
- _details;
7
- _requestId;
8
- _wrappedError;
9
- constructor(...errors) {
10
- super(EpsilonBackgroundProcessError.combineErrorStringsWithDefault(errors));
11
- Object.setPrototypeOf(this, EpsilonBackgroundProcessError.prototype);
12
- this._errors = errors;
13
- this[EpsilonBackgroundProcessError.EPSILON_BACKGROUND_PROCESS_ERROR_FLAG_KEY] = true;
14
- }
15
- static combineErrorStringsWithDefault(errors, defMessage = 'Internal Server Error') {
16
- return errors && errors.length > 0 ? errors.join(',') : defMessage;
17
- }
18
- setFormattedErrorMessage(format, ...input) {
19
- const msg = util.format(format, ...input);
20
- this.errors = [msg];
21
- }
22
- withFormattedErrorMessage(format, ...input) {
23
- this.setFormattedErrorMessage(format, ...input);
24
- return this;
25
- }
26
- withErrors(errors) {
27
- this.errors = errors;
28
- return this;
29
- }
30
- withDetailErrorCode(detailErrorCode) {
31
- this._detailErrorCode = detailErrorCode;
32
- return this;
33
- }
34
- withDetails(details) {
35
- this._details = details;
36
- return this;
37
- }
38
- withRequestId(requestId) {
39
- this._requestId = requestId;
40
- return this;
41
- }
42
- withWrappedError(err) {
43
- this._wrappedError = err;
44
- return this;
45
- }
46
- isWrappedError() {
47
- return !!this._wrappedError;
48
- }
49
- static wrapError(err) {
50
- let rval = null;
51
- if (EpsilonBackgroundProcessError.objectIsEpsilonBackgroundProcessError(err)) {
52
- rval = err;
53
- }
54
- else {
55
- rval = new EpsilonBackgroundProcessError(err.message).withWrappedError(err);
56
- }
57
- return rval;
58
- }
59
- static objectIsEpsilonBackgroundProcessError(obj) {
60
- return obj && obj['__epsilonHttpErrorFlag'] === true;
61
- }
62
- set errors(value) {
63
- this._errors = value || ['Internal Server Error'];
64
- this.message = EpsilonBackgroundProcessError.combineErrorStringsWithDefault(this._errors);
65
- }
66
- get errors() {
67
- return this._errors;
68
- }
69
- set detailErrorCode(value) {
70
- this._detailErrorCode = value;
71
- }
72
- get detailErrorCode() {
73
- return this._detailErrorCode;
74
- }
75
- set details(value) {
76
- this._details = value;
77
- }
78
- get details() {
79
- return this._details;
80
- }
81
- set requestId(value) {
82
- this._requestId = value || 'MISSING';
83
- }
84
- get requestId() {
85
- return this._requestId;
86
- }
87
- set wrappedError(value) {
88
- this._wrappedError = value;
89
- }
90
- get wrappedError() {
91
- return this._wrappedError;
92
- }
93
- }
94
- export { EpsilonBackgroundProcessError };
95
- //# sourceMappingURL=epsilon-background-process-error.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"epsilon-background-process-error.js","sourceRoot":"","sources":["../../src/background/epsilon-background-process-error.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=internal-background-entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"internal-background-entry.js","sourceRoot":"","sources":["../../src/background/internal-background-entry.ts"],"names":[],"mappings":""}
@@ -1,90 +0,0 @@
1
- import { ErrorRatchet } from '@bitblit/ratchet-common/lib/lang/error-ratchet.js';
2
- import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
3
- import { RequireRatchet } from '@bitblit/ratchet-common/lib/lang/require-ratchet.js';
4
- import { StringRatchet } from '@bitblit/ratchet-common/lib/lang/string-ratchet.js';
5
- import { DateTime } from 'luxon';
6
- import { ContextUtil } from '../../util/context-util.js';
7
- export class AbstractBackgroundManager {
8
- createEntry(type, data) {
9
- const rval = {
10
- type: type,
11
- data: data,
12
- };
13
- return rval;
14
- }
15
- wrapEntryForInternal(entry, overrideTraceId, overrideTraceDepth) {
16
- const rval = Object.assign({}, entry, {
17
- createdEpochMS: new Date().getTime(),
18
- guid: AbstractBackgroundManager.generateBackgroundGuid(),
19
- traceId: overrideTraceId || ContextUtil.currentTraceId(),
20
- traceDepth: overrideTraceDepth || ContextUtil.currentTraceDepth() + 1,
21
- });
22
- return rval;
23
- }
24
- async addEntryToQueueByParts(type, data, fireStartMessage) {
25
- let rval = null;
26
- const entry = this.createEntry(type, data);
27
- if (entry) {
28
- rval = await this.addEntryToQueue(entry, fireStartMessage);
29
- }
30
- return rval;
31
- }
32
- async addEntriesToQueue(entries, fireStartMessage) {
33
- const rval = [];
34
- for (let i = 0; i < entries.length; i++) {
35
- try {
36
- const tmp = await this.addEntryToQueue(entries[i], false);
37
- rval.push(tmp);
38
- }
39
- catch (err) {
40
- Logger.error('Error processing %j : %s', entries[i], err);
41
- rval.push(err['message']);
42
- }
43
- if (fireStartMessage) {
44
- const fireResult = await this.fireStartProcessingRequest();
45
- Logger.silly('FireResult : %s', fireResult);
46
- }
47
- }
48
- return rval;
49
- }
50
- async fireImmediateProcessRequestByParts(type, data) {
51
- let rval = null;
52
- const entry = this.createEntry(type, data);
53
- if (entry) {
54
- rval = await this.fireImmediateProcessRequest(entry);
55
- }
56
- return rval;
57
- }
58
- static generateBackgroundGuid(targetEpochMS = new Date().getTime()) {
59
- const dt = DateTime.fromMillis(targetEpochMS);
60
- return dt.toFormat('yyyy-MM-dd-HH-mm-ss-') + StringRatchet.createType4Guid();
61
- }
62
- static backgroundGuidToPath(prefix, guid) {
63
- let path = StringRatchet.trimToEmpty(prefix);
64
- if (path.length && !path.endsWith('/')) {
65
- path += '/';
66
- }
67
- path += guid.substring(0, 4) + '/' + guid.substring(5, 7) + '/' + guid.substring(8, 10) + '/';
68
- path += guid + '.json';
69
- return path;
70
- }
71
- static pathToBackgroundGuid(prefix, path) {
72
- RequireRatchet.notNullOrUndefined(path, 'path');
73
- let start = 0;
74
- if (!path.endsWith('.json')) {
75
- ErrorRatchet.throwFormattedErr('Cannot extract guid, does not end with .json : %s : %s', path, prefix);
76
- }
77
- if (StringRatchet.trimToNull(prefix)) {
78
- if (!path.startsWith(prefix)) {
79
- ErrorRatchet.throwFormattedErr('Cannot extract guid, does not start with prefix : %s : %s', path, prefix);
80
- }
81
- start = prefix.length;
82
- if (!prefix.endsWith('/')) {
83
- start++;
84
- }
85
- }
86
- start += 11;
87
- return path.substring(start, path.length - 5);
88
- }
89
- }
90
- //# sourceMappingURL=abstract-background-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"abstract-background-manager.js","sourceRoot":"","sources":["../../../src/background/manager/abstract-background-manager.ts"],"names":[],"mappings":"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"}
@@ -1,154 +0,0 @@
1
- import { ErrorRatchet } from '@bitblit/ratchet-common/lib/lang/error-ratchet.js';
2
- import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
3
- import { NumberRatchet } from '@bitblit/ratchet-common/lib/lang/number-ratchet.js';
4
- import { DeleteMessageCommand, GetQueueAttributesCommand, ReceiveMessageCommand, SendMessageCommand, } from '@aws-sdk/client-sqs';
5
- import { EpsilonConstants } from '../../epsilon-constants.js';
6
- import { AbstractBackgroundManager } from './abstract-background-manager.js';
7
- import { BackgroundValidator } from '../background-validator.js';
8
- import { PublishCommand } from '@aws-sdk/client-sns';
9
- export class AwsSqsSnsBackgroundManager extends AbstractBackgroundManager {
10
- _awsConfig;
11
- _sqs;
12
- _sns;
13
- constructor(_awsConfig, _sqs, _sns) {
14
- super();
15
- this._awsConfig = _awsConfig;
16
- this._sqs = _sqs;
17
- this._sns = _sns;
18
- const cfgErrors = BackgroundValidator.validateAwsConfig(_awsConfig);
19
- if (cfgErrors.length) {
20
- ErrorRatchet.throwFormattedErr('Cannot start - invalid AWS config : %j', cfgErrors);
21
- }
22
- }
23
- get backgroundManagerName() {
24
- return 'AwsSqsSnsBackgroundManager';
25
- }
26
- get awsConfig() {
27
- return this._awsConfig;
28
- }
29
- get sqs() {
30
- return this._sqs;
31
- }
32
- get sns() {
33
- return this._sns;
34
- }
35
- async addEntryToQueue(entry, fireStartMessage) {
36
- try {
37
- const wrapped = this.wrapEntryForInternal(entry);
38
- const rval = wrapped.guid;
39
- const params = {
40
- DelaySeconds: 0,
41
- MessageBody: JSON.stringify(wrapped),
42
- MessageGroupId: entry.type,
43
- QueueUrl: this.awsConfig.queueUrl,
44
- };
45
- Logger.info('Add entry to queue (remote) : %j : Start : %s', params, fireStartMessage);
46
- const result = await this.sqs.send(new SendMessageCommand(params));
47
- if (fireStartMessage) {
48
- const fireResult = await this.fireStartProcessingRequest();
49
- Logger.silly('FireResult : %s', fireResult);
50
- }
51
- Logger.info('Background process %s using message id %s', rval, result.MessageId);
52
- return rval;
53
- }
54
- catch (error) {
55
- Logger.error('Error inserting background entry into SQS queue : %j', error);
56
- throw new Error('Error inserting background entry into SQS queue : ' + error['code'] + ' : ' + error['name']);
57
- }
58
- }
59
- async fireImmediateProcessRequest(entry) {
60
- let rval = null;
61
- const wrapped = this.wrapEntryForInternal(entry);
62
- rval = wrapped.guid;
63
- try {
64
- Logger.info('Fire immediately (remote) : %j ', entry);
65
- const toWrite = {
66
- type: EpsilonConstants.BACKGROUND_SNS_IMMEDIATE_RUN_FLAG,
67
- backgroundEntry: wrapped,
68
- };
69
- const msg = JSON.stringify(toWrite);
70
- const snsId = await this.writeMessageToSnsTopic(msg);
71
- Logger.debug('Background guid %s Wrote message : %s to SNS : %s', rval, msg, snsId);
72
- }
73
- catch (err) {
74
- Logger.error('Failed to fireImmediateProcessRequest : %s', err, err);
75
- }
76
- return rval;
77
- }
78
- async fireStartProcessingRequest() {
79
- let rval = null;
80
- try {
81
- Logger.info('Fire start processing request (remote)');
82
- rval = await this.writeMessageToSnsTopic(EpsilonConstants.BACKGROUND_SNS_START_MARKER);
83
- }
84
- catch (err) {
85
- Logger.error('Failed to fireStartProcessingRequest : %s', err, err);
86
- }
87
- return rval;
88
- }
89
- async fetchApproximateNumberOfQueueEntries() {
90
- let rval = null;
91
- const all = await this.fetchCurrentQueueAttributes();
92
- rval = NumberRatchet.safeNumber(all.Attributes['ApproximateNumberOfMessages']);
93
- return rval;
94
- }
95
- async fetchCurrentQueueAttributes() {
96
- let rval = null;
97
- const req = {
98
- AttributeNames: ['All'],
99
- QueueUrl: this.awsConfig.queueUrl,
100
- };
101
- rval = await this.sqs.send(new GetQueueAttributesCommand(req));
102
- return rval;
103
- }
104
- async writeMessageToSnsTopic(message) {
105
- let rval = null;
106
- const params = {
107
- Message: message,
108
- TopicArn: this.awsConfig.notificationArn,
109
- };
110
- Logger.debug('Writing message to SNS topic : j', params);
111
- const result = await this.sns.send(new PublishCommand(params));
112
- rval = result.MessageId;
113
- return rval;
114
- }
115
- async takeEntryFromBackgroundQueue() {
116
- const rval = [];
117
- const params = {
118
- MaxNumberOfMessages: 1,
119
- QueueUrl: this.awsConfig.queueUrl,
120
- VisibilityTimeout: 300,
121
- WaitTimeSeconds: 0,
122
- };
123
- const message = await this.sqs.send(new ReceiveMessageCommand(params));
124
- if (message && message.Messages && message.Messages.length > 0) {
125
- for (let i = 0; i < message.Messages.length; i++) {
126
- const m = message.Messages[i];
127
- try {
128
- const parsedBody = JSON.parse(m.Body);
129
- if (!parsedBody.type) {
130
- Logger.warn('Dropping invalid background entry : %j', parsedBody);
131
- }
132
- else {
133
- rval.push(parsedBody);
134
- }
135
- Logger.debug('Removing message from queue');
136
- const delParams = {
137
- QueueUrl: this.awsConfig.queueUrl,
138
- ReceiptHandle: m.ReceiptHandle,
139
- };
140
- const delResult = await this.sqs.send(new DeleteMessageCommand(delParams));
141
- Logger.silly('Delete result : %j', delResult);
142
- }
143
- catch (err) {
144
- Logger.warn('Error parsing message, dropping : %j', m);
145
- }
146
- }
147
- }
148
- else {
149
- Logger.debug('No messages found (likely end of recursion)');
150
- }
151
- return rval;
152
- }
153
- }
154
- //# sourceMappingURL=aws-sqs-sns-background-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"aws-sqs-sns-background-manager.js","sourceRoot":"","sources":["../../../src/background/manager/aws-sqs-sns-background-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mDAAmD,CAAC;AACjF,OAAO,EAAE,MAAM,EAAE,MAAM,8CAA8C,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AACnF,OAAO,EACL,oBAAoB,EAEpB,yBAAyB,EAKzB,qBAAqB,EAErB,kBAAkB,GAGnB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,cAAc,EAAmC,MAAM,qBAAqB,CAAC;AAStF,MAAM,OAAO,0BAA2B,SAAQ,yBAAyB;IACnD;IAAyC;IAAyB;IAAtF,YAAoB,UAA+B,EAAU,IAAe,EAAU,IAAe;QACnG,KAAK,EAAE,CAAC;QADU,eAAU,GAAV,UAAU,CAAqB;QAAU,SAAI,GAAJ,IAAI,CAAW;QAAU,SAAI,GAAJ,IAAI,CAAW;QAEnG,MAAM,SAAS,GAAa,mBAAmB,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAC9E,IAAI,SAAS,CAAC,MAAM,EAAE;YACpB,YAAY,CAAC,iBAAiB,CAAC,wCAAwC,EAAE,SAAS,CAAC,CAAC;SACrF;IACH,CAAC;IAED,IAAW,qBAAqB;QAC9B,OAAO,4BAA4B,CAAC;IACtC,CAAC;IAED,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,IAAW,GAAG;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,IAAW,GAAG;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAEM,KAAK,CAAC,eAAe,CAAI,KAAyB,EAAE,gBAA0B;QACnF,IAAI;YACF,MAAM,OAAO,GAA+B,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;YAC7E,MAAM,IAAI,GAAW,OAAO,CAAC,IAAI,CAAC;YAElC,MAAM,MAAM,GAAG;gBACb,YAAY,EAAE,CAAC;gBACf,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBACpC,cAAc,EAAE,KAAK,CAAC,IAAI;gBAC1B,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ;aAClC,CAAC;YAEF,MAAM,CAAC,IAAI,CAAC,+CAA+C,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC;YACvF,MAAM,MAAM,GAA6B,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;YAE7F,IAAI,gBAAgB,EAAE;gBACpB,MAAM,UAAU,GAAW,MAAM,IAAI,CAAC,0BAA0B,EAAE,CAAC;gBACnE,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;aAC7C;YAED,MAAM,CAAC,IAAI,CAAC,2CAA2C,EAAE,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;YACjF,OAAO,IAAI,CAAC;SACb;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,CAAC,KAAK,CAAC,sDAAsD,EAAE,KAAK,CAAC,CAAC;YAC5E,MAAM,IAAI,KAAK,CAAC,oDAAoD,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;SAC/G;IACH,CAAC;IAEM,KAAK,CAAC,2BAA2B,CAAI,KAAyB;QACnE,IAAI,IAAI,GAAW,IAAI,CAAC;QACxB,MAAM,OAAO,GAA+B,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;QAC7E,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACpB,IAAI;YAEF,MAAM,CAAC,IAAI,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAC;YACtD,MAAM,OAAO,GAAQ;gBACnB,IAAI,EAAE,gBAAgB,CAAC,iCAAiC;gBACxD,eAAe,EAAE,OAAO;aACzB,CAAC;YACF,MAAM,GAAG,GAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YAC5C,MAAM,KAAK,GAAW,MAAM,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC;YAC7D,MAAM,CAAC,KAAK,CAAC,mDAAmD,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;SACrF;QAAC,OAAO,GAAG,EAAE;YACZ,MAAM,CAAC,KAAK,CAAC,4CAA4C,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;SACtE;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,0BAA0B;QACrC,IAAI,IAAI,GAAW,IAAI,CAAC;QACxB,IAAI;YACF,MAAM,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;YACtD,IAAI,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,2BAA2B,CAAC,CAAC;SACxF;QAAC,OAAO,GAAG,EAAE;YACZ,MAAM,CAAC,KAAK,CAAC,2CAA2C,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;SACrE;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,oCAAoC;QAC/C,IAAI,IAAI,GAAW,IAAI,CAAC;QACxB,MAAM,GAAG,GAA6B,MAAM,IAAI,CAAC,2BAA2B,EAAE,CAAC;QAC/E,IAAI,GAAG,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,6BAA6B,CAAC,CAAC,CAAC;QAC/E,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,2BAA2B;QACtC,IAAI,IAAI,GAAoC,IAAI,CAAC;QACjD,MAAM,GAAG,GAA8B;YACrC,cAAc,EAAE,CAAC,KAAK,CAAC;YACvB,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ;SAClC,CAAC;QAEF,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,yBAAyB,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/D,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,sBAAsB,CAAC,OAAe;QACjD,IAAI,IAAI,GAAW,IAAI,CAAC;QACxB,MAAM,MAAM,GAAG;YACb,OAAO,EAAE,OAAO;YAChB,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe;SACzC,CAAC;QAEF,MAAM,CAAC,KAAK,CAAC,kCAAkC,EAAE,MAAM,CAAC,CAAC;QACzD,MAAM,MAAM,GAAyB,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;QACrF,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,4BAA4B;QACvC,MAAM,IAAI,GAAmC,EAAE,CAAC;QAEhD,MAAM,MAAM,GAAG;YACb,mBAAmB,EAAE,CAAC;YACtB,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ;YACjC,iBAAiB,EAAE,GAAG;YACtB,eAAe,EAAE,CAAC;SACnB,CAAC;QAEF,MAAM,OAAO,GAAgC,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC;QACpG,IAAI,OAAO,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YAC9D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAChD,MAAM,CAAC,GAAY,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACvC,IAAI;oBACF,MAAM,UAAU,GAAiC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBACpE,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE;wBACpB,MAAM,CAAC,IAAI,CAAC,wCAAwC,EAAE,UAAU,CAAC,CAAC;qBACnE;yBAAM;wBACL,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;qBACvB;oBAED,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;oBAC5C,MAAM,SAAS,GAAG;wBAChB,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ;wBACjC,aAAa,EAAE,CAAC,CAAC,aAAa;qBAC/B,CAAC;oBACF,MAAM,SAAS,GAA+B,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,oBAAoB,CAAC,SAAS,CAAC,CAAC,CAAC;oBACvG,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;iBAC/C;gBAAC,OAAO,GAAG,EAAE;oBACZ,MAAM,CAAC,IAAI,CAAC,sCAAsC,EAAE,CAAC,CAAC,CAAC;iBACxD;aACF;SACF;aAAM;YACL,MAAM,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;SAC7D;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=background-manager-like.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"background-manager-like.js","sourceRoot":"","sources":["../../../src/background/manager/background-manager-like.ts"],"names":[],"mappings":""}
@@ -1,74 +0,0 @@
1
- import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
2
- import { GetQueueAttributesCommand, SQSClient } from '@aws-sdk/client-sqs';
3
- import { ModelValidator } from '@bitblit/ratchet-misc/lib/model-validator/model-validator.js';
4
- import { AwsSqsSnsBackgroundManager } from './aws-sqs-sns-background-manager.js';
5
- import { EchoProcessor } from '../../built-in/background/echo-processor.js';
6
- import { NoOpProcessor } from '../../built-in/background/no-op-processor.js';
7
- import { SNSClient } from '@aws-sdk/client-sns';
8
- import { mockClient } from 'aws-sdk-client-mock';
9
- let mockSqs;
10
- let mockSns;
11
- describe('#createEntry', function () {
12
- mockSns = mockClient(SNSClient);
13
- mockSqs = mockClient(SQSClient);
14
- let backgroundMgr;
15
- const fakeAccountNumber = '123456789012';
16
- let backgroundConfig;
17
- let backgroundAwsConfig;
18
- const fakeModelValidator = new ModelValidator({ BackgroundBuiltInSampleInputValidatedProcessor: {} });
19
- const echoProcessor = new EchoProcessor();
20
- const noOpProcessor = new NoOpProcessor();
21
- beforeEach(() => {
22
- mockSqs.reset();
23
- mockSns.reset();
24
- backgroundConfig = {
25
- processors: [echoProcessor, noOpProcessor],
26
- httpSubmissionPath: '/background/',
27
- implyTypeFromPathSuffix: true,
28
- httpMetaEndpoint: '/background-meta',
29
- };
30
- backgroundAwsConfig = {
31
- queueUrl: 'https://fake-sqs.fake-availability-zone.test.com/' + fakeAccountNumber + '/fakeQueue.fifo',
32
- notificationArn: 'arn:aws:sns:fake-availability-zone:' + fakeAccountNumber + ':fakeSnsTopicName',
33
- };
34
- backgroundMgr = new AwsSqsSnsBackgroundManager(backgroundAwsConfig, mockSqs, mockSns);
35
- });
36
- it('Should return queue attributes', async () => {
37
- mockSqs.on(GetQueueAttributesCommand).resolves({
38
- Attributes: {
39
- ApproximateNumberOfMessages: 1,
40
- },
41
- });
42
- const queueAttr = await backgroundMgr.fetchCurrentQueueAttributes();
43
- const msgCount = await backgroundMgr.fetchApproximateNumberOfQueueEntries();
44
- Logger.info('Got : %j', queueAttr);
45
- Logger.info('Msg: %d', msgCount);
46
- expect(queueAttr).toBeTruthy();
47
- expect(msgCount).toEqual(1);
48
- });
49
- it('Should round-trip guids with prefix no slash', async () => {
50
- const prefix = 'test';
51
- const guid = AwsSqsSnsBackgroundManager.generateBackgroundGuid();
52
- expect(guid).toBeTruthy();
53
- const path = AwsSqsSnsBackgroundManager.backgroundGuidToPath(prefix, guid);
54
- const outGuid = AwsSqsSnsBackgroundManager.pathToBackgroundGuid(prefix, path);
55
- expect(outGuid).toEqual(guid);
56
- });
57
- it('Should round-trip guids with prefix with slash', async () => {
58
- const prefix = 'test/';
59
- const guid = AwsSqsSnsBackgroundManager.generateBackgroundGuid();
60
- expect(guid).toBeTruthy();
61
- const path = AwsSqsSnsBackgroundManager.backgroundGuidToPath(prefix, guid);
62
- const outGuid = AwsSqsSnsBackgroundManager.pathToBackgroundGuid(prefix, path);
63
- expect(outGuid).toEqual(guid);
64
- });
65
- it('Should round-trip guids with no prefix', async () => {
66
- const prefix = null;
67
- const guid = AwsSqsSnsBackgroundManager.generateBackgroundGuid();
68
- expect(guid).toBeTruthy();
69
- const path = AwsSqsSnsBackgroundManager.backgroundGuidToPath(prefix, guid);
70
- const outGuid = AwsSqsSnsBackgroundManager.pathToBackgroundGuid(prefix, path);
71
- expect(outGuid).toEqual(guid);
72
- });
73
- });
74
- //# sourceMappingURL=background-manager.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"background-manager.spec.js","sourceRoot":"","sources":["../../../src/background/manager/background-manager.spec.ts"],"names":[],"mappings":"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"}
@@ -1,46 +0,0 @@
1
- import { Subject } from 'rxjs';
2
- import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
3
- import { AbstractBackgroundManager } from './abstract-background-manager.js';
4
- export class SingleThreadLocalBackgroundManager extends AbstractBackgroundManager {
5
- _localBus = new Subject();
6
- get backgroundManagerName() {
7
- return 'SingleThreadLocalBackgroundManager';
8
- }
9
- constructor() {
10
- super();
11
- }
12
- immediateProcessQueue() {
13
- return this._localBus;
14
- }
15
- async addEntryToQueue(entry, fireStartMessage) {
16
- const wrapped = this.wrapEntryForInternal(entry);
17
- const rval = wrapped.guid;
18
- Logger.info('Add entry to queue (local) : %j : Start : %s', entry, fireStartMessage);
19
- this._localBus.next(wrapped);
20
- return rval;
21
- }
22
- async fireImmediateProcessRequest(entry) {
23
- let rval = null;
24
- const wrapped = this.wrapEntryForInternal(entry);
25
- rval = wrapped.guid;
26
- Logger.info('Fire immediately (local) : %j ', entry);
27
- this._localBus.next(wrapped);
28
- return rval;
29
- }
30
- async fireStartProcessingRequest() {
31
- let rval = null;
32
- Logger.info('Fire start processing request (local, ignored)');
33
- rval = 'NO-OP';
34
- return rval;
35
- }
36
- async fetchApproximateNumberOfQueueEntries() {
37
- let rval = null;
38
- rval = 0;
39
- return rval;
40
- }
41
- async takeEntryFromBackgroundQueue() {
42
- Logger.info('Called takeEntryFromBackgroundQueue on SingleThreadedLocal - returning empty');
43
- return [];
44
- }
45
- }
46
- //# sourceMappingURL=single-thread-local-background-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"single-thread-local-background-manager.js","sourceRoot":"","sources":["../../../src/background/manager/single-thread-local-background-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,8CAA8C,CAAC;AAGtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAS7E,MAAM,OAAO,kCAAmC,SAAQ,yBAAyB;IACvE,SAAS,GAA0C,IAAI,OAAO,EAAgC,CAAC;IAEvG,IAAW,qBAAqB;QAC9B,OAAO,oCAAoC,CAAC;IAC9C,CAAC;IAED;QACE,KAAK,EAAE,CAAC;IACV,CAAC;IAEM,qBAAqB;QAC1B,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAEM,KAAK,CAAC,eAAe,CAAI,KAAyB,EAAE,gBAA0B;QACnF,MAAM,OAAO,GAA+B,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;QAC7E,MAAM,IAAI,GAAW,OAAO,CAAC,IAAI,CAAC;QAClC,MAAM,CAAC,IAAI,CAAC,8CAA8C,EAAE,KAAK,EAAE,gBAAgB,CAAC,CAAC;QACrF,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,2BAA2B,CAAI,KAAyB;QACnE,IAAI,IAAI,GAAW,IAAI,CAAC;QACxB,MAAM,OAAO,GAA+B,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;QAC7E,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACpB,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;QACrD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,0BAA0B;QACrC,IAAI,IAAI,GAAW,IAAI,CAAC;QACxB,MAAM,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;QAC9D,IAAI,GAAG,OAAO,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,oCAAoC;QAC/C,IAAI,IAAI,GAAW,IAAI,CAAC;QACxB,IAAI,GAAG,CAAC,CAAC;QACT,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,4BAA4B;QACvC,MAAM,CAAC,IAAI,CAAC,8EAA8E,CAAC,CAAC;QAC5F,OAAO,EAAE,CAAC;IACZ,CAAC;CACF"}