jitar 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (356) hide show
  1. package/dist/core/Implementation.js +7 -0
  2. package/dist/core/SegmentBuilder.js +0 -1
  3. package/dist/core/errors/UnknownParameter.d.ts +3 -0
  4. package/dist/core/errors/UnknownParameter.js +6 -0
  5. package/dist/runtime/ClientId.d.ts +4 -0
  6. package/dist/runtime/ClientId.js +11 -0
  7. package/dist/runtime/LocalRepository.d.ts +3 -3
  8. package/dist/runtime/LocalRepository.js +17 -9
  9. package/dist/runtime/caching/CacheBuilder.js +3 -3
  10. package/dist/runtime/serialization/ClassSerializer.js +16 -0
  11. package/dist/runtime/serialization/MapSerializer.d.ts +1 -0
  12. package/dist/runtime/serialization/MapSerializer.js +10 -0
  13. package/dist/runtime/serialization/SetSerializer.d.ts +1 -0
  14. package/dist/runtime/serialization/SetSerializer.js +7 -0
  15. package/dist/runtime/serialization/errors/InvalidPropertyType.d.ts +3 -0
  16. package/dist/runtime/serialization/errors/InvalidPropertyType.js +6 -0
  17. package/dist/server/configuration/RepositoryConfiguration.d.ts +1 -0
  18. package/dist/server/configuration/RepositoryConfiguration.js +7 -1
  19. package/dist/server/configuration/StandaloneConfiguration.d.ts +1 -0
  20. package/dist/server/configuration/StandaloneConfiguration.js +6 -0
  21. package/dist/server/controllers/ModulesController.js +6 -0
  22. package/dist/server/utils/LocalFileManager.d.ts +1 -0
  23. package/dist/server/utils/LocalFileManager.js +19 -11
  24. package/dist/server/utils/RuntimeConfigurator.js +9 -4
  25. package/package.json +26 -4
  26. package/.eslintignore +0 -3
  27. package/.eslintrc +0 -16
  28. package/coverage/clover.xml +0 -2483
  29. package/coverage/coverage-final.json +0 -56
  30. package/coverage/lcov-report/base.css +0 -224
  31. package/coverage/lcov-report/block-navigation.js +0 -87
  32. package/coverage/lcov-report/favicon.png +0 -0
  33. package/coverage/lcov-report/index.html +0 -356
  34. package/coverage/lcov-report/prettify.css +0 -1
  35. package/coverage/lcov-report/prettify.js +0 -2
  36. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  37. package/coverage/lcov-report/sorter.js +0 -196
  38. package/coverage/lcov-report/src/core/ErrorManager.ts.html +0 -139
  39. package/coverage/lcov-report/src/core/Implementation.ts.html +0 -244
  40. package/coverage/lcov-report/src/core/ImplementationBuilder.ts.html +0 -148
  41. package/coverage/lcov-report/src/core/Procedure.ts.html +0 -379
  42. package/coverage/lcov-report/src/core/Segment.ts.html +0 -271
  43. package/coverage/lcov-report/src/core/SegmentBuilder.ts.html +0 -250
  44. package/coverage/lcov-report/src/core/Version.ts.html +0 -289
  45. package/coverage/lcov-report/src/core/definitions/AccessLevel.ts.html +0 -94
  46. package/coverage/lcov-report/src/core/definitions/index.html +0 -116
  47. package/coverage/lcov-report/src/core/errors/ErrorManager.ts.html +0 -139
  48. package/coverage/lcov-report/src/core/errors/ImplementationNotFound.ts.html +0 -121
  49. package/coverage/lcov-report/src/core/errors/InvalidVersionNumber.ts.html +0 -121
  50. package/coverage/lcov-report/src/core/errors/MissingParameterValue.ts.html +0 -121
  51. package/coverage/lcov-report/src/core/errors/ProcedureNotFound.ts.html +0 -121
  52. package/coverage/lcov-report/src/core/errors/index.html +0 -161
  53. package/coverage/lcov-report/src/core/index.html +0 -191
  54. package/coverage/lcov-report/src/core/reflection/ParameterParser.ts.html +0 -307
  55. package/coverage/lcov-report/src/core/reflection/ReflectionHelper.ts.html +0 -439
  56. package/coverage/lcov-report/src/core/reflection/index.html +0 -131
  57. package/coverage/lcov-report/src/core/reflection/models/ReflectionField.ts.html +0 -151
  58. package/coverage/lcov-report/src/core/reflection/models/ReflectionParameter.ts.html +0 -139
  59. package/coverage/lcov-report/src/core/reflection/models/index.html +0 -131
  60. package/coverage/lcov-report/src/core/utils/FqnBuilder.ts.html +0 -115
  61. package/coverage/lcov-report/src/core/utils/index.html +0 -116
  62. package/coverage/lcov-report/src/hooks.ts.html +0 -88
  63. package/coverage/lcov-report/src/index.html +0 -116
  64. package/coverage/lcov-report/src/runtime/Gateway.ts.html +0 -139
  65. package/coverage/lcov-report/src/runtime/LocalGateway.ts.html +0 -364
  66. package/coverage/lcov-report/src/runtime/LocalNode.ts.html +0 -475
  67. package/coverage/lcov-report/src/runtime/LocalRepository.ts.html +0 -556
  68. package/coverage/lcov-report/src/runtime/Node.ts.html +0 -130
  69. package/coverage/lcov-report/src/runtime/NodeBalancer.ts.html +0 -268
  70. package/coverage/lcov-report/src/runtime/NodeMonitor.ts.html +0 -274
  71. package/coverage/lcov-report/src/runtime/Remote.ts.html +0 -562
  72. package/coverage/lcov-report/src/runtime/RemoteNode.ts.html +0 -232
  73. package/coverage/lcov-report/src/runtime/Repository.ts.html +0 -145
  74. package/coverage/lcov-report/src/runtime/Runtime.ts.html +0 -226
  75. package/coverage/lcov-report/src/runtime/caching/ImportRewriter.ts.html +0 -313
  76. package/coverage/lcov-report/src/runtime/caching/ModuleAppender.ts.html +0 -208
  77. package/coverage/lcov-report/src/runtime/caching/RemoteBuilder.ts.html +0 -238
  78. package/coverage/lcov-report/src/runtime/caching/SourceAppender.ts.html +0 -256
  79. package/coverage/lcov-report/src/runtime/caching/definitions/Keywords.ts.html +0 -94
  80. package/coverage/lcov-report/src/runtime/caching/definitions/index.html +0 -116
  81. package/coverage/lcov-report/src/runtime/caching/index.html +0 -146
  82. package/coverage/lcov-report/src/runtime/caching/models/ApplicationModule.ts.html +0 -175
  83. package/coverage/lcov-report/src/runtime/caching/models/Implementation.ts.html +0 -208
  84. package/coverage/lcov-report/src/runtime/caching/models/SegmentModule.ts.html +0 -163
  85. package/coverage/lcov-report/src/runtime/caching/models/index.html +0 -146
  86. package/coverage/lcov-report/src/runtime/errors/ClientNotFound.ts.html +0 -121
  87. package/coverage/lcov-report/src/runtime/errors/InvalidClientId.ts.html +0 -121
  88. package/coverage/lcov-report/src/runtime/errors/InvalidSegmentFile.ts.html +0 -121
  89. package/coverage/lcov-report/src/runtime/errors/ModuleNotLoaded.ts.html +0 -121
  90. package/coverage/lcov-report/src/runtime/errors/NoNodeAvailable.ts.html +0 -121
  91. package/coverage/lcov-report/src/runtime/errors/RepositoryNotAvaiable.ts.html +0 -121
  92. package/coverage/lcov-report/src/runtime/errors/RuntimeNotAvailable.ts.html +0 -121
  93. package/coverage/lcov-report/src/runtime/errors/index.html +0 -206
  94. package/coverage/lcov-report/src/runtime/hooks/dependencies.ts.html +0 -142
  95. package/coverage/lcov-report/src/runtime/hooks/index.html +0 -131
  96. package/coverage/lcov-report/src/runtime/hooks/runtime.ts.html +0 -160
  97. package/coverage/lcov-report/src/runtime/index.html +0 -251
  98. package/coverage/lcov-report/src/runtime/models/File.ts.html +0 -151
  99. package/coverage/lcov-report/src/runtime/models/index.html +0 -116
  100. package/coverage/lcov-report/src/runtime/serialization/ArraySerializer.ts.html +0 -166
  101. package/coverage/lcov-report/src/runtime/serialization/ClassSerializer.ts.html +0 -400
  102. package/coverage/lcov-report/src/runtime/serialization/MapSerializer.ts.html +0 -217
  103. package/coverage/lcov-report/src/runtime/serialization/ObjectSerializer.ts.html +0 -211
  104. package/coverage/lcov-report/src/runtime/serialization/SetSerializer.ts.html +0 -178
  105. package/coverage/lcov-report/src/runtime/serialization/ValueSerializer.ts.html +0 -328
  106. package/coverage/lcov-report/src/runtime/serialization/errors/ClassNotFound.ts.html +0 -121
  107. package/coverage/lcov-report/src/runtime/serialization/errors/InvalidClass.ts.html +0 -121
  108. package/coverage/lcov-report/src/runtime/serialization/errors/index.html +0 -131
  109. package/coverage/lcov-report/src/runtime/serialization/index.html +0 -191
  110. package/coverage/lcov-report/src/runtime/utils/ModuleAnalyser.ts.html +0 -265
  111. package/coverage/lcov-report/src/runtime/utils/ModuleLoader.ts.html +0 -238
  112. package/coverage/lcov-report/src/runtime/utils/UrlRewriter.ts.html +0 -262
  113. package/coverage/lcov-report/src/runtime/utils/index.html +0 -146
  114. package/coverage/lcov-report/test/_fixtures/core/Implementation.fixture.ts.html +0 -184
  115. package/coverage/lcov-report/test/_fixtures/core/Procedure.fixture.ts.html +0 -172
  116. package/coverage/lcov-report/test/_fixtures/core/Segment.fixture.ts.html +0 -193
  117. package/coverage/lcov-report/test/_fixtures/core/SegmentBuilder.fixture.ts.html +0 -220
  118. package/coverage/lcov-report/test/_fixtures/core/Version.fixture.ts.html +0 -139
  119. package/coverage/lcov-report/test/_fixtures/core/index.html +0 -176
  120. package/coverage/lcov-report/test/_fixtures/core/procedures/allDefault.ts.html +0 -100
  121. package/coverage/lcov-report/test/_fixtures/core/procedures/hasParameters.ts.html +0 -100
  122. package/coverage/lcov-report/test/_fixtures/core/procedures/hasVersion_v1_0_0.ts.html +0 -115
  123. package/coverage/lcov-report/test/_fixtures/core/procedures/hasVersion_v1_0_5.ts.html +0 -115
  124. package/coverage/lcov-report/test/_fixtures/core/procedures/hasVersion_v1_1_0.ts.html +0 -115
  125. package/coverage/lcov-report/test/_fixtures/core/procedures/hasVersion_v1_2_3.ts.html +0 -115
  126. package/coverage/lcov-report/test/_fixtures/core/procedures/inModule.ts.html +0 -115
  127. package/coverage/lcov-report/test/_fixtures/core/procedures/index.html +0 -251
  128. package/coverage/lcov-report/test/_fixtures/core/procedures/isBroken.ts.html +0 -112
  129. package/coverage/lcov-report/test/_fixtures/core/procedures/isPrivate.ts.html +0 -112
  130. package/coverage/lcov-report/test/_fixtures/core/procedures/isPublic.ts.html +0 -112
  131. package/coverage/lcov-report/test/_fixtures/core/reflection/ReflectionHelper.fixture.ts.html +0 -241
  132. package/coverage/lcov-report/test/_fixtures/core/reflection/index.html +0 -116
  133. package/coverage/lcov-report/test/_fixtures/core/segments/default.segment.ts.html +0 -94
  134. package/coverage/lcov-report/test/_fixtures/core/segments/index.html +0 -116
  135. package/coverage/lcov-report/test/_fixtures/runtime/LocalGateway.fixture.ts.html +0 -157
  136. package/coverage/lcov-report/test/_fixtures/runtime/LocalNode.fixture.ts.html +0 -133
  137. package/coverage/lcov-report/test/_fixtures/runtime/LocalRepository.fixture.ts.html +0 -304
  138. package/coverage/lcov-report/test/_fixtures/runtime/NodeBalancer.fixture.ts.html +0 -142
  139. package/coverage/lcov-report/test/_fixtures/runtime/NodeMonitor.fixture.ts.html +0 -187
  140. package/coverage/lcov-report/test/_fixtures/runtime/RemoteNode.fixture.ts.html +0 -109
  141. package/coverage/lcov-report/test/_fixtures/runtime/caching/ImportRewriter.fixture.ts.html +0 -304
  142. package/coverage/lcov-report/test/_fixtures/runtime/caching/ModuleAppender.fixture.ts.html +0 -181
  143. package/coverage/lcov-report/test/_fixtures/runtime/caching/RemoteBuilder.fixture.ts.html +0 -217
  144. package/coverage/lcov-report/test/_fixtures/runtime/caching/SourceAppender.fixture.ts.html +0 -178
  145. package/coverage/lcov-report/test/_fixtures/runtime/caching/index.html +0 -146
  146. package/coverage/lcov-report/test/_fixtures/runtime/index.html +0 -206
  147. package/coverage/lcov-report/test/_fixtures/runtime/procedures/firstPrivateTask.ts.html +0 -109
  148. package/coverage/lcov-report/test/_fixtures/runtime/procedures/firstPublicTask.ts.html +0 -118
  149. package/coverage/lcov-report/test/_fixtures/runtime/procedures/fourthPublicTask.ts.html +0 -109
  150. package/coverage/lcov-report/test/_fixtures/runtime/procedures/index.html +0 -191
  151. package/coverage/lcov-report/test/_fixtures/runtime/procedures/secondPrivateTask.ts.html +0 -109
  152. package/coverage/lcov-report/test/_fixtures/runtime/procedures/secondPublicTask.ts.html +0 -118
  153. package/coverage/lcov-report/test/_fixtures/runtime/procedures/thirdPublicTask.ts.html +0 -118
  154. package/coverage/lcov-report/test/_fixtures/runtime/segments/first.segment.files.ts.html +0 -85
  155. package/coverage/lcov-report/test/_fixtures/runtime/segments/first.segment.ts.html +0 -91
  156. package/coverage/lcov-report/test/_fixtures/runtime/segments/index.html +0 -161
  157. package/coverage/lcov-report/test/_fixtures/runtime/segments/second.segment.files.ts.html +0 -85
  158. package/coverage/lcov-report/test/_fixtures/runtime/segments/second.segment.ts.html +0 -91
  159. package/coverage/lcov-report/test/_fixtures/runtime/segments.ts.html +0 -319
  160. package/coverage/lcov-report/test/_fixtures/runtime/serialization/ValueSerializer.fixture.ts.html +0 -394
  161. package/coverage/lcov-report/test/_fixtures/runtime/serialization/index.html +0 -116
  162. package/coverage/lcov-report/test/_fixtures/runtime/utils/ModuleAnaliser.fixture.ts.html +0 -163
  163. package/coverage/lcov-report/test/_fixtures/runtime/utils/index.html +0 -116
  164. package/coverage/lcov.info +0 -3565
  165. package/dist/core/AccessLevel.d.ts +0 -5
  166. package/dist/core/AccessLevel.js +0 -6
  167. package/dist/core/ImplementationBuilder.d.ts +0 -4
  168. package/dist/core/ImplementationBuilder.js +0 -14
  169. package/dist/core/errors/ErrorManager.d.ts +0 -3
  170. package/dist/core/errors/ErrorManager.js +0 -11
  171. package/dist/runtime/RemoteNodeBuilder.d.ts +0 -4
  172. package/dist/runtime/RemoteNodeBuilder.js +0 -10
  173. package/dist/runtime/caching/CachBuilder.d.ts +0 -6
  174. package/dist/runtime/caching/CachBuilder.js +0 -150
  175. package/dist/runtime/caching/ModuleAppender.d.ts +0 -5
  176. package/dist/runtime/caching/ModuleAppender.js +0 -22
  177. package/dist/runtime/caching/errors/FunctionFilenameNotFound.d.ts +0 -3
  178. package/dist/runtime/caching/errors/FunctionFilenameNotFound.js +0 -5
  179. package/dist/runtime/caching/types/models/ApplicationModule.d.ts +0 -9
  180. package/dist/runtime/caching/types/models/ApplicationModule.js +0 -19
  181. package/dist/runtime/caching/types/models/Implementation.d.ts +0 -12
  182. package/dist/runtime/caching/types/models/Implementation.js +0 -27
  183. package/dist/runtime/caching/types/models/Procedure.d.ts +0 -9
  184. package/dist/runtime/caching/types/models/Procedure.js +0 -15
  185. package/dist/runtime/caching/types/models/Segment.d.ts +0 -10
  186. package/dist/runtime/caching/types/models/Segment.js +0 -16
  187. package/dist/runtime/caching/types/models/SegmentModule.d.ts +0 -10
  188. package/dist/runtime/caching/types/models/SegmentModule.js +0 -14
  189. package/dist/server/definitions/RuntimeMode.d.ts +0 -8
  190. package/dist/server/definitions/RuntimeMode.js +0 -9
  191. package/dist/server/models/RuntimeConfiguration.d.ts +0 -12
  192. package/dist/server/models/RuntimeConfiguration.js +0 -68
  193. package/dist/server/models/ServerOptions.d.ts +0 -4
  194. package/dist/server/models/ServerOptions.js +0 -25
  195. package/jest.config.js +0 -20
  196. package/src/client.ts +0 -18
  197. package/src/core/ErrorManager.ts +0 -18
  198. package/src/core/Implementation.ts +0 -53
  199. package/src/core/Procedure.ts +0 -98
  200. package/src/core/Segment.ts +0 -62
  201. package/src/core/SegmentBuilder.ts +0 -55
  202. package/src/core/Version.ts +0 -68
  203. package/src/core/definitions/AccessLevel.ts +0 -3
  204. package/src/core/errors/ImplementationNotFound.ts +0 -12
  205. package/src/core/errors/InvalidVersionNumber.ts +0 -12
  206. package/src/core/errors/MissingParameterValue.ts +0 -12
  207. package/src/core/errors/NotImplemented.ts +0 -12
  208. package/src/core/errors/ProcedureNotFound.ts +0 -12
  209. package/src/core/interfaces/Runner.ts +0 -7
  210. package/src/core/reflection/ParameterParser.ts +0 -74
  211. package/src/core/reflection/ReflectionHelper.ts +0 -118
  212. package/src/core/reflection/models/ReflectionField.ts +0 -22
  213. package/src/core/reflection/models/ReflectionParameter.ts +0 -18
  214. package/src/core/types/Component.ts +0 -8
  215. package/src/core/types/FlexObject.ts +0 -4
  216. package/src/core/types/Module.ts +0 -6
  217. package/src/core/types/SegmentImplementation.ts +0 -9
  218. package/src/core/types/SegmentModule.ts +0 -9
  219. package/src/core/types/SegmentProcedure.ts +0 -11
  220. package/src/core/utils/FqnBuilder.ts +0 -11
  221. package/src/hooks.ts +0 -2
  222. package/src/lib.ts +0 -7
  223. package/src/runtime/Gateway.ts +0 -18
  224. package/src/runtime/LocalGateway.ts +0 -93
  225. package/src/runtime/LocalNode.ts +0 -130
  226. package/src/runtime/LocalRepository.ts +0 -157
  227. package/src/runtime/Node.ts +0 -15
  228. package/src/runtime/NodeBalancer.ts +0 -61
  229. package/src/runtime/NodeMonitor.ts +0 -63
  230. package/src/runtime/Proxy.ts +0 -60
  231. package/src/runtime/Remote.ts +0 -157
  232. package/src/runtime/RemoteGateway.ts +0 -40
  233. package/src/runtime/RemoteNode.ts +0 -49
  234. package/src/runtime/RemoteRepository.ts +0 -60
  235. package/src/runtime/Repository.ts +0 -20
  236. package/src/runtime/Runtime.ts +0 -47
  237. package/src/runtime/caching/CacheBuilder.ts +0 -424
  238. package/src/runtime/caching/ImportRewriter.ts +0 -76
  239. package/src/runtime/caching/RemoteBuilder.ts +0 -51
  240. package/src/runtime/caching/SourceAppender.ts +0 -57
  241. package/src/runtime/caching/definitions/Keywords.ts +0 -3
  242. package/src/runtime/caching/errors/InvalidSegmentFilename.ts +0 -8
  243. package/src/runtime/caching/errors/MissingModuleExport.ts +0 -8
  244. package/src/runtime/caching/errors/SegmentFileNotLoaded.ts +0 -8
  245. package/src/runtime/caching/errors/SegmentModuleNotLoaded.ts +0 -8
  246. package/src/runtime/caching/models/ApplicationModule.ts +0 -30
  247. package/src/runtime/caching/models/Implementation.ts +0 -41
  248. package/src/runtime/caching/models/Procedure.ts +0 -26
  249. package/src/runtime/caching/models/Segment.ts +0 -28
  250. package/src/runtime/caching/models/SegmentModule.ts +0 -26
  251. package/src/runtime/caching/types/SegmentFile.ts +0 -6
  252. package/src/runtime/caching/types/SegmentImportProperties.ts +0 -9
  253. package/src/runtime/caching/types/SegmentImports.ts +0 -6
  254. package/src/runtime/errors/ClientNotFound.ts +0 -12
  255. package/src/runtime/errors/FileNotFound.ts +0 -12
  256. package/src/runtime/errors/InvalidClientId.ts +0 -12
  257. package/src/runtime/errors/InvalidJitarHooks.ts +0 -12
  258. package/src/runtime/errors/InvalidSegmentFile.ts +0 -12
  259. package/src/runtime/errors/ModuleNotLoaded.ts +0 -12
  260. package/src/runtime/errors/NoNodeAvailable.ts +0 -12
  261. package/src/runtime/errors/RepositoryNotAvaiable.ts +0 -12
  262. package/src/runtime/errors/RuntimeNotAvailable.ts +0 -12
  263. package/src/runtime/errors/SegmentNotFound.ts +0 -12
  264. package/src/runtime/hooks/dependencies.ts +0 -19
  265. package/src/runtime/hooks/runtime.ts +0 -25
  266. package/src/runtime/interfaces/FileManager.ts +0 -19
  267. package/src/runtime/interfaces/HealthCheck.ts +0 -5
  268. package/src/runtime/interfaces/ProcedureContainer.ts +0 -9
  269. package/src/runtime/models/File.ts +0 -22
  270. package/src/runtime/serialization/ArraySerializer.ts +0 -27
  271. package/src/runtime/serialization/ClassSerializer.ts +0 -105
  272. package/src/runtime/serialization/MapSerializer.ts +0 -44
  273. package/src/runtime/serialization/ObjectSerializer.ts +0 -42
  274. package/src/runtime/serialization/SetSerializer.ts +0 -31
  275. package/src/runtime/serialization/ValueSerializer.ts +0 -81
  276. package/src/runtime/serialization/errors/ClassNotFound.ts +0 -12
  277. package/src/runtime/serialization/errors/InvalidClass.ts +0 -12
  278. package/src/runtime/serialization/interfaces/Serializer.ts +0 -10
  279. package/src/runtime/serialization/types/SerializableObject.ts +0 -6
  280. package/src/runtime/serialization/types/Serialized.ts +0 -8
  281. package/src/runtime/serialization/types/SerializedClass.ts +0 -13
  282. package/src/runtime/serialization/types/SerializedMap.ts +0 -13
  283. package/src/runtime/serialization/types/SerializedObject.ts +0 -4
  284. package/src/runtime/serialization/types/SerializedSet.ts +0 -9
  285. package/src/runtime/types/JitarHooks.ts +0 -10
  286. package/src/runtime/types/ModuleImporter.ts +0 -6
  287. package/src/runtime/utils/ModuleAnalyser.ts +0 -60
  288. package/src/runtime/utils/ModuleLoader.ts +0 -51
  289. package/src/runtime/utils/UrlRewriter.ts +0 -59
  290. package/src/server/JitarServer.ts +0 -161
  291. package/src/server/configuration/GatewayConfiguration.ts +0 -9
  292. package/src/server/configuration/NodeConfiguration.ts +0 -15
  293. package/src/server/configuration/ProxyConfiguration.ts +0 -16
  294. package/src/server/configuration/RepositoryConfiguration.ts +0 -17
  295. package/src/server/configuration/RuntimeConfiguration.ts +0 -30
  296. package/src/server/configuration/ServerOptions.ts +0 -14
  297. package/src/server/configuration/StandaloneConfiguration.ts +0 -21
  298. package/src/server/controllers/AssetsController.ts +0 -59
  299. package/src/server/controllers/HealthController.ts +0 -41
  300. package/src/server/controllers/JitarController.ts +0 -18
  301. package/src/server/controllers/ModulesController.ts +0 -66
  302. package/src/server/controllers/NodesController.ts +0 -58
  303. package/src/server/controllers/ProceduresController.ts +0 -31
  304. package/src/server/controllers/ProxyController.ts +0 -38
  305. package/src/server/controllers/RPCController.ts +0 -173
  306. package/src/server/definitions/RuntimeDefaults.ts +0 -10
  307. package/src/server/errors/MissingConfigurationValue.ts +0 -8
  308. package/src/server/errors/RuntimeNotAvaiable.ts +0 -8
  309. package/src/server/errors/UnknownRuntimeMode.ts +0 -8
  310. package/src/server/models/HealthDto.ts +0 -11
  311. package/src/server/models/NodeDto.ts +0 -11
  312. package/src/server/utils/DataConverter.ts +0 -15
  313. package/src/server/utils/LocalFileManager.ts +0 -122
  314. package/src/server/utils/RuntimeConfigurationLoader.ts +0 -19
  315. package/src/server/utils/RuntimeConfigurator.ts +0 -207
  316. package/src/server/utils/ServerOptionsReader.ts +0 -17
  317. package/src/server.ts +0 -16
  318. package/test/_fixtures/core/Implementation.fixture.ts +0 -33
  319. package/test/_fixtures/core/Procedure.fixture.ts +0 -33
  320. package/test/_fixtures/core/Segment.fixture.ts +0 -36
  321. package/test/_fixtures/core/SegmentBuilder.fixture.ts +0 -45
  322. package/test/_fixtures/core/Version.fixture.ts +0 -18
  323. package/test/_fixtures/core/reflection/ReflectionHelper.fixture.ts +0 -56
  324. package/test/_fixtures/runtime/LocalGateway.fixture.ts +0 -24
  325. package/test/_fixtures/runtime/LocalNode.fixture.ts +0 -16
  326. package/test/_fixtures/runtime/LocalRepository.fixture.ts +0 -73
  327. package/test/_fixtures/runtime/NodeBalancer.fixture.ts +0 -19
  328. package/test/_fixtures/runtime/NodeMonitor.fixture.ts +0 -34
  329. package/test/_fixtures/runtime/RemoteNode.fixture.ts +0 -8
  330. package/test/_fixtures/runtime/caching/ImportRewriter.fixture.ts +0 -81
  331. package/test/_fixtures/runtime/caching/RemoteBuilder.fixture.ts +0 -50
  332. package/test/_fixtures/runtime/caching/SourceAppender.fixture.ts +0 -35
  333. package/test/_fixtures/runtime/segments.ts +0 -78
  334. package/test/_fixtures/runtime/serialization/ValueSerializer.fixture.ts +0 -134
  335. package/test/_fixtures/runtime/utils/ModuleAnaliser.fixture.ts +0 -26
  336. package/test/core/Implementation.spec.ts +0 -89
  337. package/test/core/Procedure.spec.ts +0 -108
  338. package/test/core/Segment.spec.ts +0 -74
  339. package/test/core/SegmentBuilder.spec.ts +0 -39
  340. package/test/core/Version.spec.ts +0 -103
  341. package/test/core/errors/ErrorManager.spec.ts +0 -32
  342. package/test/core/reflection/ReflectionHelper.spec.ts +0 -128
  343. package/test/core/utils/FqnBuilder.spec.ts +0 -22
  344. package/test/runtime/LocalGateway.spec.ts +0 -40
  345. package/test/runtime/LocalNode.spec.ts +0 -87
  346. package/test/runtime/LocalRepository.spec.ts +0 -50
  347. package/test/runtime/NodeBalancer.spec.ts +0 -39
  348. package/test/runtime/NodeMonitor.spec.ts +0 -31
  349. package/test/runtime/RemoteNode.spec.ts +0 -43
  350. package/test/runtime/caching/ImportRewriter.spec.ts +0 -68
  351. package/test/runtime/caching/RemoteBuilder.spec.ts +0 -21
  352. package/test/runtime/caching/SourceAppender.spec.ts +0 -31
  353. package/test/runtime/serialization/ValueSerializer.spec.ts +0 -203
  354. package/test/runtime/utils/ModuleAnalyser.spec.ts +0 -54
  355. package/test/runtime/utils/UrlRewriter.spec.ts +0 -57
  356. package/tsconfig.json +0 -23
@@ -1,41 +0,0 @@
1
-
2
- import Component from '../../../core/types/Component.js';
3
- import FqnBuilder from '../../../core/utils/FqnBuilder.js';
4
-
5
- let lastId = 0;
6
-
7
- export default class Implementation
8
- {
9
- #id: number;
10
- #module: string;
11
- #name: string;
12
- #fqn: string;
13
- #access: string;
14
- #version: string;
15
- #executable: Component;
16
-
17
- constructor(module: string, name: string, access: string, version: string, executable: Component)
18
- {
19
- this.#id = ++lastId;
20
- this.#module = module;
21
- this.#name = name;
22
- this.#fqn = FqnBuilder.build(module, name);
23
- this.#access = access;
24
- this.#version = version;
25
- this.#executable = executable;
26
- }
27
-
28
- get id() { return this.#id; }
29
-
30
- get module() { return this.#module; }
31
-
32
- get name() { return this.#name; }
33
-
34
- get fqn() { return this.#fqn; }
35
-
36
- get access() { return this.#access; }
37
-
38
- get version() { return this.#version; }
39
-
40
- get executable() { return this.#executable; }
41
- }
@@ -1,26 +0,0 @@
1
-
2
- import Implementation from './Implementation.js';
3
-
4
- export default class Procedure
5
- {
6
- #module: string;
7
- #name: string;
8
- #implementations: Implementation[] = [];
9
-
10
- constructor(module: string, name: string)
11
- {
12
- this.#module = module;
13
- this.#name = name;
14
- }
15
-
16
- get module() { return this.#module; }
17
-
18
- get name() { return this.#name; }
19
-
20
- get implementations() { return this.#implementations; }
21
-
22
- addImplementation(implementation: Implementation): void
23
- {
24
- this.#implementations.push(implementation);
25
- }
26
- }
@@ -1,28 +0,0 @@
1
-
2
- import Procedure from './Procedure.js';
3
- import SegmentModule from './SegmentModule.js';
4
-
5
- export default class Segment
6
- {
7
- #filename: string;
8
- #modules: SegmentModule[];
9
- #procedures: Map<string, Procedure>;
10
-
11
- constructor(filename: string, modules: SegmentModule[], procedures: Map<string, Procedure>)
12
- {
13
- this.#filename = filename;
14
- this.#modules = modules;
15
- this.#procedures = procedures;
16
- }
17
-
18
- get filename() { return this.#filename; }
19
-
20
- get modules() { return this.#modules; }
21
-
22
- get procedures() { return this.#procedures; }
23
-
24
- getFilenames()
25
- {
26
- return this.#modules.map((module: SegmentModule) => module.filename);
27
- }
28
- }
@@ -1,26 +0,0 @@
1
-
2
- import Module from '../../../core/types/Module.js';
3
-
4
- import Implementation from './Implementation.js';
5
-
6
- export default class SegmentModule
7
- {
8
- #filename: string;
9
- #exports: Module;
10
- #implementations: Map<string, Implementation>;
11
-
12
- constructor(filename: string, exports: Module, implementations: Map<string, Implementation>)
13
- {
14
- this.#filename = filename;
15
- this.#exports = exports;
16
- this.#implementations = implementations;
17
- }
18
-
19
- get filename() { return this.#filename; }
20
-
21
- get exports() { return this.#exports; }
22
-
23
- get implementations() { return this.#implementations; }
24
-
25
- getImportKeys() { return [...this.#implementations.keys()]; }
26
- }
@@ -1,6 +0,0 @@
1
-
2
- import SegmentImports from './SegmentImports.js';
3
-
4
- type SegmentFile = {[key: string]: SegmentImports };
5
-
6
- export default SegmentFile;
@@ -1,9 +0,0 @@
1
-
2
- type SegmentImportProperties =
3
- {
4
- as?: string;
5
- access?: string;
6
- version?: string;
7
- }
8
-
9
- export default SegmentImportProperties;
@@ -1,6 +0,0 @@
1
-
2
- import SegmentImportProperties from './SegmentImportProperties.js';
3
-
4
- type SegmentImports = {[key: string]: SegmentImportProperties };
5
-
6
- export default SegmentImports;
@@ -1,12 +0,0 @@
1
-
2
- import Component from '../../core/types/Component.js';
3
-
4
- export default class ClientNotFound extends Error
5
- {
6
- constructor(clientId: string)
7
- {
8
- super(`Client found for id '${clientId}'`);
9
- }
10
- }
11
-
12
- (ClientNotFound as Component).source = '/jitar/runtime/errors/ClientNotFound.js';
@@ -1,12 +0,0 @@
1
-
2
- import Component from '../../core/types/Component.js';
3
-
4
- export default class FileNotFound extends Error
5
- {
6
- constructor(filename: string)
7
- {
8
- super(`The file '${filename} could not be found'`);
9
- }
10
- }
11
-
12
- (FileNotFound as Component).source = '/jitar/runtime/errors/FileNotFound.js';
@@ -1,12 +0,0 @@
1
-
2
- import Component from '../../core/types/Component.js';
3
-
4
- export default class InvalidClientId extends Error
5
- {
6
- constructor(clientId: string)
7
- {
8
- super(`Invalid client id '${clientId}'`);
9
- }
10
- }
11
-
12
- (InvalidClientId as Component).source = '/jitar/runtime/errors/InvalidClientId.js';
@@ -1,12 +0,0 @@
1
-
2
- import Component from '../../core/types/Component.js';
3
-
4
- export default class InvalidJitarHooks extends Error
5
- {
6
- constructor()
7
- {
8
- super(`Invalid Jitar hooks`);
9
- }
10
- }
11
-
12
- (InvalidJitarHooks as Component).source = '/jitar/runtime/errors/InvalidJitarHooks.js';
@@ -1,12 +0,0 @@
1
-
2
- import Component from '../../core/types/Component.js';
3
-
4
- export default class InvalidSegmentFile extends Error
5
- {
6
- constructor(filename: string)
7
- {
8
- super(`Missing files array in segment file '${filename}'`);
9
- }
10
- }
11
-
12
- (InvalidSegmentFile as Component).source = '/jitar/runtime/errors/InvalidSegmentFile.js';
@@ -1,12 +0,0 @@
1
-
2
- import Component from '../../core/types/Component.js';
3
-
4
- export default class ModuleNotLoaded extends Error
5
- {
6
- constructor(url: string, message?: string)
7
- {
8
- super(`Module '${url}' could not be loaded${message !== undefined ? ` | ${message}` : ''}`);
9
- }
10
- }
11
-
12
- (ModuleNotLoaded as Component).source = '/jitar/runtime/errors/ModuleNotLoaded.js';
@@ -1,12 +0,0 @@
1
-
2
- import Component from '../../core/types/Component.js';
3
-
4
- export default class NoNodeAvailable extends Error
5
- {
6
- constructor(name: string)
7
- {
8
- super(`No node available for procedure '${name}'`);
9
- }
10
- }
11
-
12
- (NoNodeAvailable as Component).source = '/jitar/runtime/errors/NoNodeAvailable.js';
@@ -1,12 +0,0 @@
1
-
2
- import Component from '../../core/types/Component.js';
3
-
4
- export default class RepositoryNotAvailable extends Error
5
- {
6
- constructor()
7
- {
8
- super(`Repository not available`);
9
- }
10
- }
11
-
12
- (RepositoryNotAvailable as Component).source = '/jitar/runtime/errors/RepositoryNotAvailable.js';
@@ -1,12 +0,0 @@
1
-
2
- import Component from '../../core/types/Component.js';
3
-
4
- export default class RuntimeNotAvailable extends Error
5
- {
6
- constructor()
7
- {
8
- super(`Runtime not available`);
9
- }
10
- }
11
-
12
- (RuntimeNotAvailable as Component).source = '/jitar/runtime/errors/RuntimeNotAvailable.js';
@@ -1,12 +0,0 @@
1
-
2
- import Component from '../../core/types/Component.js';
3
-
4
- export default class SegmentNotFound extends Error
5
- {
6
- constructor(source: string)
7
- {
8
- super(`Segment found for '${source}'`);
9
- }
10
- }
11
-
12
- (SegmentNotFound as Component).source = '/jitar/runtime/errors/SegmentNotFound.js';
@@ -1,19 +0,0 @@
1
-
2
- // The default loader is used by the local repository
3
- // and gets overridden by the remote repository
4
-
5
- import ModuleLoader from '../utils/ModuleLoader.js';
6
-
7
- let _loader: Function = ModuleLoader.import;
8
-
9
- export function setDependencyLoader(loader: Function): void
10
- {
11
- _loader = loader;
12
- }
13
-
14
- export async function getDependency(name: string): Promise<unknown>
15
- {
16
- const module = await _loader(name);
17
-
18
- return module.default !== undefined ? module.default : module;
19
- }
@@ -1,25 +0,0 @@
1
-
2
- import Version from '../../core/Version.js';
3
-
4
- import RuntimeNotAvailable from '../errors/RuntimeNotAvailable.js';
5
- import LocalNode from '../LocalNode.js';
6
-
7
- let _runtime: LocalNode;
8
-
9
- export function setRuntime(runtime: LocalNode): void
10
- {
11
- _runtime = runtime;
12
- }
13
-
14
- export async function runProcedure(fqn: string, versionNumber: string, args: object): Promise<unknown>
15
- {
16
- if (_runtime === undefined)
17
- {
18
- throw new RuntimeNotAvailable();
19
- }
20
-
21
- const version = Version.parse(versionNumber);
22
- const argsMap = new Map<string, unknown>(Object.entries(args));
23
-
24
- return _runtime.run(fqn, version, argsMap);
25
- }
@@ -1,19 +0,0 @@
1
-
2
- import File from '../models/File.js';
3
-
4
- export default interface FileManager
5
- {
6
- getRootLocation(): string;
7
-
8
- getAbsoluteLocation(filename: string): string;
9
-
10
- getRelativeLocation(filename: string): string;
11
-
12
- getType(filename: string): Promise<string>;
13
-
14
- getContent(filename: string): Promise<Buffer | string>;
15
-
16
- load(filename: string): Promise<File>;
17
-
18
- store(filename: string, content: string): Promise<void>;
19
- }
@@ -1,5 +0,0 @@
1
-
2
- export default interface HealthCheck
3
- {
4
- isHealthy(): Promise<boolean>;
5
- }
@@ -1,9 +0,0 @@
1
-
2
- import Runner from '../../core/interfaces/Runner.js';
3
-
4
- export default interface ProcedureContainer extends Runner
5
- {
6
- getProcedureNames(): string[];
7
-
8
- hasProcedure(name: string): boolean;
9
- }
@@ -1,22 +0,0 @@
1
-
2
- export default class File
3
- {
4
- #location: string;
5
- #type: string;
6
- #content: Buffer | string;
7
-
8
- constructor(location: string, type: string, content: Buffer | string)
9
- {
10
- this.#location = location;
11
- this.#type = type;
12
- this.#content = content;
13
- }
14
-
15
- get location() { return this.#location; }
16
-
17
- get type() { return this.#type; }
18
-
19
- get content() { return this.#content; }
20
-
21
- get size() { return this.#content.length; }
22
- }
@@ -1,27 +0,0 @@
1
-
2
- import Serializer from './interfaces/Serializer.js';
3
- import ValueSerializer from './ValueSerializer.js';
4
-
5
- class ArraySerializer implements Serializer
6
- {
7
- serialize(array: unknown[]): unknown[]
8
- {
9
- const values: unknown[] = [];
10
-
11
- for (const value of array)
12
- {
13
- values.push(ValueSerializer.serialize(value));
14
- }
15
-
16
- return values;
17
- }
18
-
19
- async deserialize(values: unknown[]): Promise<unknown[]>
20
- {
21
- return await Promise.all(values.map(async (value) => await ValueSerializer.deserialize(value)));
22
- }
23
- }
24
-
25
- const instance = new ArraySerializer();
26
-
27
- export default instance;
@@ -1,105 +0,0 @@
1
-
2
- import ReflectionHelper from '../../core/reflection/ReflectionHelper.js';
3
- import Component from '../../core/types/Component.js';
4
- import FlexObject from '../../core/types/FlexObject.js';
5
- import Module from '../../core/types/Module.js';
6
-
7
- import ModuleLoader from '../utils/ModuleLoader.js';
8
- import ClassNotFound from './errors/ClassNotFound.js';
9
- import InvalidClass from './errors/InvalidClass.js';
10
-
11
- import Serializer from './interfaces/Serializer.js';
12
- import SerializableObject from './types/SerializableObject.js';
13
- import SerializedClass from './types/SerializedClass.js';
14
- import ValueSerializer from './ValueSerializer.js';
15
-
16
- class ClassSerializer implements Serializer
17
- {
18
- serialize(object: SerializableObject): SerializedClass
19
- {
20
- const clazz = ReflectionHelper.getObjectClass(object);
21
- const classFields = ReflectionHelper.getObjectFields(object);
22
- const constructParameters = ReflectionHelper.getConstructorParameters(clazz);
23
-
24
- const name = clazz.name;
25
- const source = (clazz as Component).source || null;
26
- const args: unknown[] = [];
27
- const fields: FlexObject = {};
28
-
29
- for (const parameter of constructParameters)
30
- {
31
- const objectValue = object[parameter.name];
32
- const classFieldIndex = classFields.findIndex(field => field.name === parameter.name);
33
-
34
- if (classFieldIndex !== -1)
35
- {
36
- classFields.splice(classFieldIndex, 1);
37
- }
38
-
39
- args.push(ValueSerializer.serialize(objectValue));
40
- }
41
-
42
- for (const field of classFields)
43
- {
44
- if (field.canGetAndSet === false)
45
- {
46
- // Fields that can't be accessed or updated are ignored.
47
- // This is to prevent the serialization of fields that are only used for internal purposes.
48
-
49
- continue;
50
- }
51
-
52
- const objectValue = object[field.name];
53
-
54
- fields[field.name] = ValueSerializer.serialize(objectValue);
55
- }
56
-
57
- return { serialized: true, name: name, source: source, args: args, fields: fields };
58
- }
59
-
60
- async deserialize(object: SerializedClass): Promise<SerializableObject>
61
- {
62
- const clazz = await this.#loadClass(object.source, object.name);
63
-
64
- if (clazz === undefined)
65
- {
66
- throw new ClassNotFound(object.name);
67
- }
68
-
69
- if ((clazz instanceof Function) === false)
70
- {
71
- throw new InvalidClass(object.name);
72
- }
73
-
74
- const args = await Promise.all(object.args.map(async (value) => await ValueSerializer.deserialize(value)));
75
-
76
- const instance = ReflectionHelper.createInstance(clazz as Function, args) as SerializableObject;
77
-
78
- for (const name in object.fields)
79
- {
80
- const fieldValue = object.fields[name];
81
-
82
- instance[name] = await ValueSerializer.deserialize(fieldValue);
83
- }
84
-
85
- return instance;
86
- }
87
-
88
- async #loadClass(source: string | null, name: string): Promise<unknown>
89
- {
90
- if (source === null)
91
- {
92
- const system: unknown = typeof window !== 'undefined' ? window : global;
93
-
94
- return (system as Module)[name];
95
- }
96
-
97
- const module = await ModuleLoader.load(source);
98
-
99
- return module[name] ?? module.default;
100
- }
101
- }
102
-
103
- const instance = new ClassSerializer();
104
-
105
- export default instance;
@@ -1,44 +0,0 @@
1
-
2
- import Serializer from './interfaces/Serializer.js';
3
-
4
- import SerializedMap from './types/SerializedMap.js';
5
- import ValueSerializer from './ValueSerializer.js';
6
-
7
- class MapSerializer implements Serializer
8
- {
9
- serialize(map: Map<unknown, unknown>): SerializedMap
10
- {
11
- const keys: unknown[] = [];
12
- const values: unknown[] = [];
13
-
14
- for (const [key, value] of map)
15
- {
16
- keys.push(ValueSerializer.serialize(key));
17
- values.push(ValueSerializer.serialize(value));
18
- }
19
-
20
- return { serialized: true, name: 'Map', entries: { keys: keys, values: values } };
21
- }
22
-
23
- async deserialize(object: SerializedMap): Promise<Map<unknown, unknown>>
24
- {
25
- const keys = object.entries.keys;
26
- const values = object.entries.values;
27
-
28
- const result = new Map();
29
-
30
- for (let index = 0; index < keys.length; index++)
31
- {
32
- const key = await ValueSerializer.deserialize(keys[index]);
33
- const value = await ValueSerializer.deserialize(values[index]);
34
-
35
- result.set(key, value);
36
- }
37
-
38
- return result;
39
- }
40
- }
41
-
42
- const instance = new MapSerializer();
43
-
44
- export default instance;
@@ -1,42 +0,0 @@
1
-
2
- import Serializer from './interfaces/Serializer.js';
3
-
4
- import SerializableObject from './types/SerializableObject.js';
5
- import SerializedObject from './types/SerializedObject.js';
6
-
7
- import ValueSerializer from './ValueSerializer.js';
8
-
9
- class ObjectSerializer implements Serializer
10
- {
11
- serialize(object: SerializableObject): SerializedObject
12
- {
13
- const result: SerializedObject = {};
14
-
15
- for (const key in object)
16
- {
17
- const value = object[key];
18
-
19
- result[key] = ValueSerializer.serialize(value);
20
- }
21
-
22
- return result;
23
- }
24
-
25
- async deserialize(object: SerializedObject): Promise<SerializableObject>
26
- {
27
- const result: SerializableObject = {};
28
-
29
- for (const key in object)
30
- {
31
- const value = object[key];
32
-
33
- result[key] = await ValueSerializer.deserialize(value);
34
- }
35
-
36
- return result;
37
- }
38
- }
39
-
40
- const instance = new ObjectSerializer();
41
-
42
- export default instance;
@@ -1,31 +0,0 @@
1
-
2
- import Serializer from './interfaces/Serializer.js';
3
- import SerializedSet from './types/SerializedSet.js';
4
-
5
- import ValueSerializer from './ValueSerializer.js';
6
-
7
- class SetSerializer implements Serializer
8
- {
9
- serialize(set: Set<unknown>): SerializedSet
10
- {
11
- const values: unknown[] = [];
12
-
13
- for (const value of set.values())
14
- {
15
- values.push(ValueSerializer.serialize(value));
16
- }
17
-
18
- return { serialized: true, name: 'Set', values: values };
19
- }
20
-
21
- async deserialize(object: SerializedSet): Promise<Set<unknown>>
22
- {
23
- const values = await Promise.all(object.values.map(async (value: unknown) => await ValueSerializer.deserialize(value)));
24
-
25
- return new Set([...values]);
26
- }
27
- }
28
-
29
- const instance = new SetSerializer();
30
-
31
- export default instance;