@finos/legend-graph 30.0.15 → 30.0.17

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 (192) hide show
  1. package/lib/graph/BasicModel.d.ts +0 -5
  2. package/lib/graph/BasicModel.d.ts.map +1 -1
  3. package/lib/graph/BasicModel.js +0 -18
  4. package/lib/graph/BasicModel.js.map +1 -1
  5. package/lib/graph/DependencyManager.d.ts +0 -3
  6. package/lib/graph/DependencyManager.d.ts.map +1 -1
  7. package/lib/graph/DependencyManager.js +0 -4
  8. package/lib/graph/DependencyManager.js.map +1 -1
  9. package/lib/graph/PureModel.d.ts +0 -3
  10. package/lib/graph/PureModel.d.ts.map +1 -1
  11. package/lib/graph/PureModel.js +0 -14
  12. package/lib/graph/PureModel.js.map +1 -1
  13. package/lib/graph/extensions/DSL_ExternalFormat_PureGraphPlugin.js +1 -1
  14. package/lib/graph/extensions/DSL_ExternalFormat_PureGraphPlugin.js.map +1 -1
  15. package/lib/graph/metamodel/pure/executionPlan/ExecutionPlan.d.ts +2 -6
  16. package/lib/graph/metamodel/pure/executionPlan/ExecutionPlan.d.ts.map +1 -1
  17. package/lib/graph/metamodel/pure/executionPlan/ExecutionPlan.js +0 -5
  18. package/lib/graph/metamodel/pure/executionPlan/ExecutionPlan.js.map +1 -1
  19. package/lib/graph/metamodel/pure/executionPlan/nodes/JavaClass.d.ts +22 -0
  20. package/lib/graph/metamodel/pure/executionPlan/nodes/JavaClass.d.ts.map +1 -0
  21. package/lib/graph/metamodel/pure/executionPlan/nodes/JavaClass.js +22 -0
  22. package/lib/graph/metamodel/pure/executionPlan/nodes/JavaClass.js.map +1 -0
  23. package/lib/graph/metamodel/pure/executionPlan/nodes/JavaPlatformImplementation.d.ts +23 -0
  24. package/lib/graph/metamodel/pure/executionPlan/nodes/JavaPlatformImplementation.d.ts.map +1 -0
  25. package/lib/graph/metamodel/pure/executionPlan/nodes/JavaPlatformImplementation.js +22 -0
  26. package/lib/graph/metamodel/pure/executionPlan/nodes/JavaPlatformImplementation.js.map +1 -0
  27. package/lib/graph/metamodel/pure/executionPlan/nodes/PlatformImplementation.d.ts +18 -0
  28. package/lib/graph/metamodel/pure/executionPlan/nodes/PlatformImplementation.d.ts.map +1 -0
  29. package/lib/graph/metamodel/pure/executionPlan/nodes/PlatformImplementation.js +18 -0
  30. package/lib/graph/metamodel/pure/executionPlan/nodes/PlatformImplementation.js.map +1 -0
  31. package/lib/graph/metamodel/pure/packageableElements/externalFormat/connection/DSL_ExternalFormat_ExternalFormatConnection.d.ts +27 -0
  32. package/lib/graph/metamodel/pure/packageableElements/externalFormat/connection/DSL_ExternalFormat_ExternalFormatConnection.d.ts.map +1 -0
  33. package/lib/graph/metamodel/pure/packageableElements/externalFormat/connection/DSL_ExternalFormat_ExternalFormatConnection.js +32 -0
  34. package/lib/graph/metamodel/pure/packageableElements/externalFormat/connection/DSL_ExternalFormat_ExternalFormatConnection.js.map +1 -0
  35. package/lib/graph/metamodel/pure/packageableElements/externalFormat/{binding → store}/DSL_ExternalFormat_Binding.d.ts +3 -2
  36. package/lib/graph/metamodel/pure/packageableElements/externalFormat/store/DSL_ExternalFormat_Binding.d.ts.map +1 -0
  37. package/lib/graph/metamodel/pure/packageableElements/externalFormat/{binding → store}/DSL_ExternalFormat_Binding.js +2 -2
  38. package/lib/graph/metamodel/pure/packageableElements/externalFormat/store/DSL_ExternalFormat_Binding.js.map +1 -0
  39. package/lib/graph/metamodel/pure/packageableElements/externalFormat/store/DSL_ExternalFormat_BindingTransformer.d.ts.map +1 -0
  40. package/lib/graph/metamodel/pure/packageableElements/externalFormat/store/DSL_ExternalFormat_BindingTransformer.js.map +1 -0
  41. package/lib/graph/metamodel/pure/packageableElements/externalFormat/store/DSL_ExternalFormat_ModelUnit.d.ts.map +1 -0
  42. package/lib/graph/metamodel/pure/packageableElements/externalFormat/store/DSL_ExternalFormat_ModelUnit.js.map +1 -0
  43. package/lib/graph/metamodel/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.d.ts +1 -1
  44. package/lib/graph/metamodel/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.d.ts.map +1 -1
  45. package/lib/graph-manager/AbstractPureGraphManager.d.ts +1 -1
  46. package/lib/graph-manager/AbstractPureGraphManager.d.ts.map +1 -1
  47. package/lib/graph-manager/GraphManagerState.d.ts +0 -2
  48. package/lib/graph-manager/GraphManagerState.d.ts.map +1 -1
  49. package/lib/graph-manager/GraphManagerState.js +0 -7
  50. package/lib/graph-manager/GraphManagerState.js.map +1 -1
  51. package/lib/graph-manager/action/changeDetection/DSL_ExternalFormat_ObserverHelper.d.ts +5 -3
  52. package/lib/graph-manager/action/changeDetection/DSL_ExternalFormat_ObserverHelper.d.ts.map +1 -1
  53. package/lib/graph-manager/action/changeDetection/DSL_ExternalFormat_ObserverHelper.js +11 -1
  54. package/lib/graph-manager/action/changeDetection/DSL_ExternalFormat_ObserverHelper.js.map +1 -1
  55. package/lib/graph-manager/extensions/DSL_ExternalFormat_PureGraphManagerPlugin.d.ts +2 -1
  56. package/lib/graph-manager/extensions/DSL_ExternalFormat_PureGraphManagerPlugin.d.ts.map +1 -1
  57. package/lib/graph-manager/extensions/DSL_ExternalFormat_PureGraphManagerPlugin.js +14 -3
  58. package/lib/graph-manager/extensions/DSL_ExternalFormat_PureGraphManagerPlugin.js.map +1 -1
  59. package/lib/graph-manager/helpers/DSL_ExternalFormat_GraphManagerHelper.d.ts +1 -1
  60. package/lib/graph-manager/helpers/DSL_ExternalFormat_GraphManagerHelper.d.ts.map +1 -1
  61. package/lib/graph-manager/helpers/DSL_ExternalFormat_GraphManagerHelper.js +3 -3
  62. package/lib/graph-manager/helpers/DSL_ExternalFormat_GraphManagerHelper.js.map +1 -1
  63. package/lib/graph-manager/protocol/pure/extensions/DSL_ExternalFormat_PureProtocolProcessorPlugin.d.ts +5 -1
  64. package/lib/graph-manager/protocol/pure/extensions/DSL_ExternalFormat_PureProtocolProcessorPlugin.d.ts.map +1 -1
  65. package/lib/graph-manager/protocol/pure/extensions/DSL_ExternalFormat_PureProtocolProcessorPlugin.js +71 -8
  66. package/lib/graph-manager/protocol/pure/extensions/DSL_ExternalFormat_PureProtocolProcessorPlugin.js.map +1 -1
  67. package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.d.ts +1 -1
  68. package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.d.ts.map +1 -1
  69. package/lib/graph-manager/protocol/pure/v1/engine/externalFormat/V1_GenerateSchemaInput.d.ts +1 -1
  70. package/lib/graph-manager/protocol/pure/v1/engine/externalFormat/V1_GenerateSchemaInput.d.ts.map +1 -1
  71. package/lib/graph-manager/protocol/pure/v1/model/executionPlan/V1_SimpleExecutionPlan.d.ts +2 -6
  72. package/lib/graph-manager/protocol/pure/v1/model/executionPlan/V1_SimpleExecutionPlan.d.ts.map +1 -1
  73. package/lib/graph-manager/protocol/pure/v1/model/executionPlan/V1_SimpleExecutionPlan.js +0 -5
  74. package/lib/graph-manager/protocol/pure/v1/model/executionPlan/V1_SimpleExecutionPlan.js.map +1 -1
  75. package/lib/graph-manager/protocol/pure/v1/model/executionPlan/nodes/V1_JavaClass.d.ts +22 -0
  76. package/lib/graph-manager/protocol/pure/v1/model/executionPlan/nodes/V1_JavaClass.d.ts.map +1 -0
  77. package/lib/graph-manager/protocol/pure/v1/model/executionPlan/nodes/V1_JavaClass.js +22 -0
  78. package/lib/graph-manager/protocol/pure/v1/model/executionPlan/nodes/V1_JavaClass.js.map +1 -0
  79. package/lib/graph-manager/protocol/pure/v1/model/executionPlan/nodes/V1_JavaPlatformImplementation.d.ts +23 -0
  80. package/lib/graph-manager/protocol/pure/v1/model/executionPlan/nodes/V1_JavaPlatformImplementation.d.ts.map +1 -0
  81. package/lib/graph-manager/protocol/pure/v1/model/executionPlan/nodes/V1_JavaPlatformImplementation.js +22 -0
  82. package/lib/graph-manager/protocol/pure/v1/model/executionPlan/nodes/V1_JavaPlatformImplementation.js.map +1 -0
  83. package/lib/graph-manager/protocol/pure/v1/model/executionPlan/nodes/V1_PlatformImplementation.d.ts +18 -0
  84. package/lib/graph-manager/protocol/pure/v1/model/executionPlan/nodes/V1_PlatformImplementation.d.ts.map +1 -0
  85. package/lib/graph-manager/protocol/pure/v1/model/executionPlan/nodes/V1_PlatformImplementation.js +18 -0
  86. package/lib/graph-manager/protocol/pure/v1/model/executionPlan/nodes/V1_PlatformImplementation.js.map +1 -0
  87. package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/connection/V1_DSL_ExternalFormat_ExternalFormatConnection.d.ts +24 -0
  88. package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/connection/V1_DSL_ExternalFormat_ExternalFormatConnection.d.ts.map +1 -0
  89. package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/connection/V1_DSL_ExternalFormat_ExternalFormatConnection.js +32 -0
  90. package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/connection/V1_DSL_ExternalFormat_ExternalFormatConnection.js.map +1 -0
  91. package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/{binding → store}/V1_DSL_ExternalFormat_Binding.d.ts +3 -2
  92. package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/store/V1_DSL_ExternalFormat_Binding.d.ts.map +1 -0
  93. package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/{binding → store}/V1_DSL_ExternalFormat_Binding.js +2 -2
  94. package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/store/V1_DSL_ExternalFormat_Binding.js.map +1 -0
  95. package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/store/V1_DSL_ExternalFormat_BindingTransformer.d.ts.map +1 -0
  96. package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/store/V1_DSL_ExternalFormat_BindingTransformer.js.map +1 -0
  97. package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/store/V1_DSL_ExternalFormat_ModelUnit.d.ts.map +1 -0
  98. package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/store/V1_DSL_ExternalFormat_ModelUnit.js.map +1 -0
  99. package/lib/graph-manager/protocol/pure/v1/model/packageableElements/store/relational/mapping/V1_RelationalPropertyMapping.d.ts +1 -1
  100. package/lib/graph-manager/protocol/pure/v1/model/packageableElements/store/relational/mapping/V1_RelationalPropertyMapping.d.ts.map +1 -1
  101. package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DSL_ExternalFormat_Transformer.d.ts +2 -2
  102. package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DSL_ExternalFormat_Transformer.d.ts.map +1 -1
  103. package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DSL_ExternalFormat_Transformer.js +1 -1
  104. package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DSL_ExternalFormat_Transformer.js.map +1 -1
  105. package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js +1 -1
  106. package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js.map +1 -1
  107. package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/executionPlan/V1_ExecutionPlanTransformer.d.ts.map +1 -1
  108. package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/executionPlan/V1_ExecutionPlanTransformer.js +24 -1
  109. package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/executionPlan/V1_ExecutionPlanTransformer.js.map +1 -1
  110. package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_DSL_ExternalFormat_GraphBuilderHelper.d.ts +1 -1
  111. package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_DSL_ExternalFormat_GraphBuilderHelper.d.ts.map +1 -1
  112. package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.d.ts.map +1 -1
  113. package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.js +24 -2
  114. package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.js.map +1 -1
  115. package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_PropertyMappingBuilder.js +1 -1
  116. package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_PropertyMappingBuilder.js.map +1 -1
  117. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DSL_ExternalFormat_ProtocolHelper.d.ts +5 -2
  118. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DSL_ExternalFormat_ProtocolHelper.d.ts.map +1 -1
  119. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DSL_ExternalFormat_ProtocolHelper.js +15 -3
  120. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DSL_ExternalFormat_ProtocolHelper.js.map +1 -1
  121. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_MappingSerializationHelper.js +1 -1
  122. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_MappingSerializationHelper.js.map +1 -1
  123. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/executionPlan/V1_ExecutionPlanSerializationHelper.d.ts.map +1 -1
  124. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/executionPlan/V1_ExecutionPlanSerializationHelper.js +19 -1
  125. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/executionPlan/V1_ExecutionPlanSerializationHelper.js.map +1 -1
  126. package/lib/index.d.ts +5 -3
  127. package/lib/index.d.ts.map +1 -1
  128. package/lib/index.js +5 -3
  129. package/lib/index.js.map +1 -1
  130. package/lib/package.json +1 -1
  131. package/package.json +3 -3
  132. package/src/graph/BasicModel.ts +0 -17
  133. package/src/graph/DependencyManager.ts +0 -9
  134. package/src/graph/PureModel.ts +0 -19
  135. package/src/graph/extensions/DSL_ExternalFormat_PureGraphPlugin.ts +1 -1
  136. package/src/graph/metamodel/pure/executionPlan/ExecutionPlan.ts +2 -6
  137. package/src/graph/metamodel/pure/executionPlan/nodes/JavaClass.ts +22 -0
  138. package/src/graph/metamodel/pure/executionPlan/nodes/JavaPlatformImplementation.ts +24 -0
  139. package/src/graph/metamodel/pure/executionPlan/nodes/PlatformImplementation.ts +17 -0
  140. package/src/graph/metamodel/pure/packageableElements/externalFormat/connection/DSL_ExternalFormat_ExternalFormatConnection.ts +42 -0
  141. package/src/graph/metamodel/pure/packageableElements/externalFormat/{binding → store}/DSL_ExternalFormat_Binding.ts +3 -5
  142. package/src/graph/metamodel/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.ts +1 -1
  143. package/src/graph-manager/AbstractPureGraphManager.ts +1 -1
  144. package/src/graph-manager/GraphManagerState.ts +0 -10
  145. package/src/graph-manager/action/changeDetection/DSL_ExternalFormat_ObserverHelper.ts +24 -4
  146. package/src/graph-manager/extensions/DSL_ExternalFormat_PureGraphManagerPlugin.ts +23 -3
  147. package/src/graph-manager/helpers/DSL_ExternalFormat_GraphManagerHelper.ts +3 -7
  148. package/src/graph-manager/protocol/pure/extensions/DSL_ExternalFormat_PureProtocolProcessorPlugin.ts +119 -7
  149. package/src/graph-manager/protocol/pure/v1/V1_PureGraphManager.ts +1 -1
  150. package/src/graph-manager/protocol/pure/v1/engine/externalFormat/V1_GenerateSchemaInput.ts +1 -1
  151. package/src/graph-manager/protocol/pure/v1/model/executionPlan/V1_SimpleExecutionPlan.ts +2 -6
  152. package/src/graph-manager/protocol/pure/v1/model/executionPlan/nodes/V1_JavaClass.ts +22 -0
  153. package/src/graph-manager/protocol/pure/v1/model/executionPlan/nodes/V1_JavaPlatformImplementation.ts +24 -0
  154. package/src/graph-manager/protocol/pure/v1/model/executionPlan/nodes/V1_PlatformImplementation.ts +17 -0
  155. package/src/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/connection/V1_DSL_ExternalFormat_ExternalFormatConnection.ts +42 -0
  156. package/src/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/{binding → store}/V1_DSL_ExternalFormat_Binding.ts +3 -5
  157. package/src/graph-manager/protocol/pure/v1/model/packageableElements/store/relational/mapping/V1_RelationalPropertyMapping.ts +1 -1
  158. package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DSL_ExternalFormat_Transformer.ts +2 -2
  159. package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.ts +1 -1
  160. package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/from/executionPlan/V1_ExecutionPlanTransformer.ts +36 -1
  161. package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_DSL_ExternalFormat_GraphBuilderHelper.ts +1 -1
  162. package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.ts +36 -2
  163. package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_PropertyMappingBuilder.ts +1 -1
  164. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DSL_ExternalFormat_ProtocolHelper.ts +23 -2
  165. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_MappingSerializationHelper.ts +1 -1
  166. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/executionPlan/V1_ExecutionPlanSerializationHelper.ts +25 -1
  167. package/src/index.ts +5 -3
  168. package/tsconfig.json +14 -6
  169. package/lib/graph/metamodel/pure/packageableElements/externalFormat/binding/DSL_ExternalFormat_Binding.d.ts.map +0 -1
  170. package/lib/graph/metamodel/pure/packageableElements/externalFormat/binding/DSL_ExternalFormat_Binding.js.map +0 -1
  171. package/lib/graph/metamodel/pure/packageableElements/externalFormat/binding/DSL_ExternalFormat_BindingTransformer.d.ts.map +0 -1
  172. package/lib/graph/metamodel/pure/packageableElements/externalFormat/binding/DSL_ExternalFormat_BindingTransformer.js.map +0 -1
  173. package/lib/graph/metamodel/pure/packageableElements/externalFormat/binding/DSL_ExternalFormat_ModelUnit.d.ts.map +0 -1
  174. package/lib/graph/metamodel/pure/packageableElements/externalFormat/binding/DSL_ExternalFormat_ModelUnit.js.map +0 -1
  175. package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/binding/V1_DSL_ExternalFormat_Binding.d.ts.map +0 -1
  176. package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/binding/V1_DSL_ExternalFormat_Binding.js.map +0 -1
  177. package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/binding/V1_DSL_ExternalFormat_BindingTransformer.d.ts.map +0 -1
  178. package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/binding/V1_DSL_ExternalFormat_BindingTransformer.js.map +0 -1
  179. package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/binding/V1_DSL_ExternalFormat_ModelUnit.d.ts.map +0 -1
  180. package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/binding/V1_DSL_ExternalFormat_ModelUnit.js.map +0 -1
  181. /package/lib/graph/metamodel/pure/packageableElements/externalFormat/{binding → store}/DSL_ExternalFormat_BindingTransformer.d.ts +0 -0
  182. /package/lib/graph/metamodel/pure/packageableElements/externalFormat/{binding → store}/DSL_ExternalFormat_BindingTransformer.js +0 -0
  183. /package/lib/graph/metamodel/pure/packageableElements/externalFormat/{binding → store}/DSL_ExternalFormat_ModelUnit.d.ts +0 -0
  184. /package/lib/graph/metamodel/pure/packageableElements/externalFormat/{binding → store}/DSL_ExternalFormat_ModelUnit.js +0 -0
  185. /package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/{binding → store}/V1_DSL_ExternalFormat_BindingTransformer.d.ts +0 -0
  186. /package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/{binding → store}/V1_DSL_ExternalFormat_BindingTransformer.js +0 -0
  187. /package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/{binding → store}/V1_DSL_ExternalFormat_ModelUnit.d.ts +0 -0
  188. /package/lib/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/{binding → store}/V1_DSL_ExternalFormat_ModelUnit.js +0 -0
  189. /package/src/graph/metamodel/pure/packageableElements/externalFormat/{binding → store}/DSL_ExternalFormat_BindingTransformer.ts +0 -0
  190. /package/src/graph/metamodel/pure/packageableElements/externalFormat/{binding → store}/DSL_ExternalFormat_ModelUnit.ts +0 -0
  191. /package/src/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/{binding → store}/V1_DSL_ExternalFormat_BindingTransformer.ts +0 -0
  192. /package/src/graph-manager/protocol/pure/v1/model/packageableElements/externalFormat/{binding → store}/V1_DSL_ExternalFormat_ModelUnit.ts +0 -0
@@ -20,19 +20,30 @@ import {
20
20
  assertType,
21
21
  guaranteeNonEmptyString,
22
22
  assertNonNullable,
23
+ guaranteeNonNullable,
23
24
  } from '@finos/legend-shared';
24
25
  import { deserialize, serialize } from 'serializr';
25
26
  import {
26
27
  getOwnBinding,
27
28
  getOwnSchemaSet,
28
29
  } from '../../../helpers/DSL_ExternalFormat_GraphManagerHelper.js';
30
+ import type { Connection } from '../../../../graph/metamodel/pure/packageableElements/connection/Connection.js';
29
31
  import type { PackageableElement } from '../../../../graph/metamodel/pure/packageableElements/PackageableElement.js';
30
32
  import { PackageableElementReference } from '../../../../graph/metamodel/pure/packageableElements/PackageableElementReference.js';
33
+ import { ExternalFormatConnection } from '../../../../graph/metamodel/pure/packageableElements/externalFormat/connection/DSL_ExternalFormat_ExternalFormatConnection.js';
34
+ import { UrlStream } from '../../../../graph/metamodel/pure/packageableElements/externalFormat/connection/DSL_ExternalFormat_UrlStream.js';
31
35
  import { Schema } from '../../../../graph/metamodel/pure/packageableElements/externalFormat/schemaSet/DSL_ExternalFormat_Schema.js';
32
36
  import { SchemaSet } from '../../../../graph/metamodel/pure/packageableElements/externalFormat/schemaSet/DSL_ExternalFormat_SchemaSet.js';
33
- import { Binding } from '../../../../graph/metamodel/pure/packageableElements/externalFormat/binding/DSL_ExternalFormat_Binding.js';
34
- import { ModelUnit } from '../../../../graph/metamodel/pure/packageableElements/externalFormat/binding/DSL_ExternalFormat_ModelUnit.js';
35
- import type { DSL_Mapping_PureProtocolProcessorPlugin_Extension } from '../extensions/DSL_Mapping_PureProtocolProcessorPlugin_Extension.js';
37
+ import { Binding } from '../../../../graph/metamodel/pure/packageableElements/externalFormat/store/DSL_ExternalFormat_Binding.js';
38
+ import { ModelUnit } from '../../../../graph/metamodel/pure/packageableElements/externalFormat/store/DSL_ExternalFormat_ModelUnit.js';
39
+ import type { Store } from '../../../../graph/metamodel/pure/packageableElements/store/Store.js';
40
+ import type {
41
+ DSL_Mapping_PureProtocolProcessorPlugin_Extension,
42
+ V1_ConnectionBuilder,
43
+ V1_ConnectionProtocolDeserializer,
44
+ V1_ConnectionProtocolSerializer,
45
+ V1_ConnectionTransformer,
46
+ } from '../extensions/DSL_Mapping_PureProtocolProcessorPlugin_Extension.js';
36
47
  import {
37
48
  type V1_ElementProtocolClassifierPathGetter,
38
49
  type V1_ElementProtocolDeserializer,
@@ -40,14 +51,20 @@ import {
40
51
  type V1_ElementTransformer,
41
52
  PureProtocolProcessorPlugin,
42
53
  } from '../PureProtocolProcessorPlugin.js';
54
+ import type { V1_Connection } from '../v1/model/packageableElements/connection/V1_Connection.js';
55
+ import { V1_ExternalFormatConnection } from '../v1/model/packageableElements/externalFormat/connection/V1_DSL_ExternalFormat_ExternalFormatConnection.js';
56
+ import { V1_UrlStream } from '../v1/model/packageableElements/externalFormat/connection/V1_DSL_ExternalFormat_UrlStream.js';
43
57
  import { V1_Schema } from '../v1/model/packageableElements/externalFormat/schemaSet/V1_DSL_ExternalFormat_Schema.js';
44
58
  import { V1_SchemaSet } from '../v1/model/packageableElements/externalFormat/schemaSet/V1_DSL_ExternalFormat_SchemaSet.js';
45
- import { V1_Binding } from '../v1/model/packageableElements/externalFormat/binding/V1_DSL_ExternalFormat_Binding.js';
46
- import { V1_ModelUnit } from '../v1/model/packageableElements/externalFormat/binding/V1_DSL_ExternalFormat_ModelUnit.js';
59
+ import { V1_Binding } from '../v1/model/packageableElements/externalFormat/store/V1_DSL_ExternalFormat_Binding.js';
60
+ import { V1_ModelUnit } from '../v1/model/packageableElements/externalFormat/store/V1_DSL_ExternalFormat_ModelUnit.js';
47
61
  import type { V1_PackageableElement } from '../v1/model/packageableElements/V1_PackageableElement.js';
48
62
  import { V1_initPackageableElement } from '../v1/transformation/pureGraph/from/V1_CoreTransformerHelper.js';
49
63
  import type { V1_GraphTransformerContext } from '../v1/transformation/pureGraph/from/V1_GraphTransformerContext.js';
50
- import { V1_resolveSchemaSet } from '../v1/transformation/pureGraph/to/V1_DSL_ExternalFormat_GraphBuilderHelper.js';
64
+ import {
65
+ V1_resolveBinding,
66
+ V1_resolveSchemaSet,
67
+ } from '../v1/transformation/pureGraph/to/V1_DSL_ExternalFormat_GraphBuilderHelper.js';
51
68
  import { V1_ElementBuilder } from '../v1/transformation/pureGraph/to/V1_ElementBuilder.js';
52
69
  import {
53
70
  V1_buildFullPath,
@@ -56,6 +73,8 @@ import {
56
73
  import {
57
74
  V1_bindingModelSchema,
58
75
  V1_BINDING_ELEMENT_PROTOCOL_TYPE,
76
+ V1_externalFormatConnectionModelSchema,
77
+ V1_EXTERNAL_FORMAT_CONNECTION_ELEMENT_PROTOCOL_TYPE,
59
78
  V1_schemaSetModelSchema,
60
79
  V1_SCHEMA_SET_ELEMENT_PROTOCOL_TYPE,
61
80
  } from '../v1/transformation/pureProtocol/serializationHelpers/V1_DSL_ExternalFormat_ProtocolHelper.js';
@@ -91,7 +110,7 @@ export class DSL_ExternalFormat_PureProtocolProcessorPlugin
91
110
  elementProtocol.package,
92
111
  elementProtocol.name,
93
112
  );
94
- context.currentSubGraph.setOwnBinding(path, element);
113
+ context.currentSubGraph.setOwnStore(path, element);
95
114
  return element;
96
115
  },
97
116
  secondPass: (
@@ -248,6 +267,7 @@ export class DSL_ExternalFormat_PureProtocolProcessorPlugin
248
267
  : path,
249
268
  );
250
269
  protocol.modelUnit = modelUnit;
270
+ protocol.includedStores = [];
251
271
  return protocol;
252
272
  } else if (metamodel instanceof SchemaSet) {
253
273
  const protocol = new V1_SchemaSet();
@@ -268,4 +288,96 @@ export class DSL_ExternalFormat_PureProtocolProcessorPlugin
268
288
  },
269
289
  ];
270
290
  }
291
+
292
+ V1_getExtraConnectionBuilders(): V1_ConnectionBuilder[] {
293
+ return [
294
+ (
295
+ connection: V1_Connection,
296
+ context: V1_GraphBuilderContext,
297
+ store?: PackageableElementReference<Store> | undefined,
298
+ ): Connection | undefined => {
299
+ if (connection instanceof V1_ExternalFormatConnection) {
300
+ const Store = !store
301
+ ? V1_resolveBinding(
302
+ guaranteeNonNullable(
303
+ connection.store,
304
+ `External format connection 'store' field is missing`,
305
+ ),
306
+ context,
307
+ )
308
+ : connection.store
309
+ ? V1_resolveBinding(connection.store, context)
310
+ : ((): PackageableElementReference<Binding> => {
311
+ assertType(
312
+ store.value,
313
+ Binding,
314
+ `External format connection store must be a Binding`,
315
+ );
316
+ return store as PackageableElementReference<Binding>;
317
+ })();
318
+ const externalFormatConnection = new ExternalFormatConnection(Store);
319
+ assertNonNullable(
320
+ connection.externalSource,
321
+ `External format connection 'externalSource' field is missing`,
322
+ );
323
+ const urlStream = new UrlStream();
324
+ urlStream.url = guaranteeNonEmptyString(
325
+ connection.externalSource.url,
326
+ `URL stream 'url' field is missing or empty`,
327
+ );
328
+ externalFormatConnection.externalSource = urlStream;
329
+ return externalFormatConnection;
330
+ }
331
+ return undefined;
332
+ },
333
+ ];
334
+ }
335
+
336
+ V1_getExtraConnectionTransformers(): V1_ConnectionTransformer[] {
337
+ return [
338
+ (
339
+ metamodel: Connection,
340
+ context: V1_GraphTransformerContext,
341
+ ): V1_Connection | undefined => {
342
+ if (metamodel instanceof ExternalFormatConnection) {
343
+ const connection = new V1_ExternalFormatConnection();
344
+ connection.store = metamodel.store.valueForSerialization ?? '';
345
+ const urlStream = new V1_UrlStream();
346
+ urlStream.url = metamodel.externalSource.url;
347
+ connection.externalSource = urlStream;
348
+ return connection;
349
+ }
350
+ return undefined;
351
+ },
352
+ ];
353
+ }
354
+
355
+ V1_getExtraConnectionProtocolSerializers(): V1_ConnectionProtocolSerializer[] {
356
+ return [
357
+ (
358
+ connectionProtocol: V1_Connection,
359
+ ): PlainObject<V1_Connection> | undefined => {
360
+ if (connectionProtocol instanceof V1_ExternalFormatConnection) {
361
+ return serialize(
362
+ V1_externalFormatConnectionModelSchema,
363
+ connectionProtocol,
364
+ );
365
+ }
366
+ return undefined;
367
+ },
368
+ ];
369
+ }
370
+
371
+ V1_getExtraConnectionProtocolDeserializers(): V1_ConnectionProtocolDeserializer[] {
372
+ return [
373
+ (json: PlainObject<V1_Connection>): V1_Connection | undefined => {
374
+ if (
375
+ json._type === V1_EXTERNAL_FORMAT_CONNECTION_ELEMENT_PROTOCOL_TYPE
376
+ ) {
377
+ return deserialize(V1_externalFormatConnectionModelSchema, json);
378
+ }
379
+ return undefined;
380
+ },
381
+ ];
382
+ }
271
383
  }
@@ -256,7 +256,7 @@ import type {
256
256
  import { CompilationWarning } from '../../../action/compilation/CompilationWarning.js';
257
257
  import { V1_transformParameterValue } from './transformation/pureGraph/from/V1_ServiceTransformer.js';
258
258
  import { V1_transformModelUnit } from './transformation/pureGraph/from/V1_DSL_ExternalFormat_Transformer.js';
259
- import type { ModelUnit } from '../../../../graph/metamodel/pure/packageableElements/externalFormat/binding/DSL_ExternalFormat_ModelUnit.js';
259
+ import type { ModelUnit } from '../../../../graph/metamodel/pure/packageableElements/externalFormat/store/DSL_ExternalFormat_ModelUnit.js';
260
260
  import { V1_LambdaReturnTypeInput } from './engine/compilation/V1_LambdaReturnType.js';
261
261
  import type { ParameterValue } from '../../../../graph/metamodel/pure/packageableElements/service/ParameterValue.js';
262
262
  import type { Service } from '../../../../graph/metamodel/pure/packageableElements/service/Service.js';
@@ -24,7 +24,7 @@ import {
24
24
  serialize,
25
25
  } from 'serializr';
26
26
  import { type PlainObject, SerializationFactory } from '@finos/legend-shared';
27
- import type { V1_ModelUnit } from '../../model/packageableElements/externalFormat/binding/V1_DSL_ExternalFormat_ModelUnit.js';
27
+ import type { V1_ModelUnit } from '../../model/packageableElements/externalFormat/store/V1_DSL_ExternalFormat_ModelUnit.js';
28
28
  import type { V1_PureModelContext } from '../../model/context/V1_PureModelContext.js';
29
29
  import { V1_pureModelContextPropSchema } from '../../transformation/pureProtocol/V1_PureProtocolSerialization.js';
30
30
  import { V1_modelUnitModelSchema } from '../../transformation/pureProtocol/serializationHelpers/V1_DSL_ExternalFormat_ProtocolHelper.js';
@@ -16,6 +16,7 @@
16
16
 
17
17
  import type { V1_Protocol } from '../V1_Protocol.js';
18
18
  import type { V1_ExecutionNode } from './nodes/V1_ExecutionNode.js';
19
+ import type { V1_PlatformImplementation } from './nodes/V1_PlatformImplementation.js';
19
20
  import { V1_ExecutionPlan } from './V1_ExecutionPlan.js';
20
21
 
21
22
  export class V1_SimpleExecutionPlan extends V1_ExecutionPlan {
@@ -24,10 +25,5 @@ export class V1_SimpleExecutionPlan extends V1_ExecutionPlan {
24
25
  serializer!: V1_Protocol;
25
26
  templateFunctions: string[] = [];
26
27
  rootExecutionNode!: V1_ExecutionNode;
27
- /**
28
- * Studio does not process the platform implementation info
29
- *
30
- * @discrepancy model
31
- */
32
- globalImplementationSupport!: object;
28
+ globalImplementationSupport?: V1_PlatformImplementation | undefined;
33
29
  }
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ export class V1_JavaClass {
18
+ package!: string;
19
+ name!: string;
20
+ source!: string;
21
+ byteCode?: string | undefined;
22
+ }
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ import type { V1_JavaClass } from './V1_JavaClass.js';
18
+ import { V1_PlatformImplementation } from './V1_PlatformImplementation.js';
19
+
20
+ export class V1_JavaPlatformImplementation extends V1_PlatformImplementation {
21
+ classes: V1_JavaClass[] = [];
22
+ executionClassFullName?: string | undefined;
23
+ executionMethodName?: string | undefined;
24
+ }
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ export class V1_PlatformImplementation {}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ import { hashArray, type Hashable } from '@finos/legend-shared';
18
+ import { CORE_HASH_STRUCTURE } from '../../../../../../../../graph/Core_HashUtils.js';
19
+ import {
20
+ V1_Connection,
21
+ type V1_ConnectionVisitor,
22
+ } from '../../connection/V1_Connection.js';
23
+ import type { V1_UrlStream } from './V1_DSL_ExternalFormat_UrlStream.js';
24
+
25
+ export class V1_ExternalFormatConnection
26
+ extends V1_Connection
27
+ implements Hashable
28
+ {
29
+ externalSource!: V1_UrlStream;
30
+
31
+ get hashCode(): string {
32
+ return hashArray([
33
+ CORE_HASH_STRUCTURE.EXTERNAL_FORMAT_CONNECTION,
34
+ this.store ?? '',
35
+ this.externalSource,
36
+ ]);
37
+ }
38
+
39
+ accept_ConnectionVisitor<T>(visitor: V1_ConnectionVisitor<T>): T {
40
+ return visitor.visit_Connection(this);
41
+ }
42
+ }
@@ -16,13 +16,11 @@
16
16
 
17
17
  import { hashArray, type Hashable } from '@finos/legend-shared';
18
18
  import { CORE_HASH_STRUCTURE } from '../../../../../../../../graph/Core_HashUtils.js';
19
- import {
20
- V1_PackageableElement,
21
- type V1_PackageableElementVisitor,
22
- } from '../../V1_PackageableElement.js';
19
+ import { V1_Store } from '../../store/V1_Store.js';
20
+ import type { V1_PackageableElementVisitor } from '../../V1_PackageableElement.js';
23
21
  import type { V1_ModelUnit } from './V1_DSL_ExternalFormat_ModelUnit.js';
24
22
 
25
- export class V1_Binding extends V1_PackageableElement implements Hashable {
23
+ export class V1_Binding extends V1_Store implements Hashable {
26
24
  schemaSet?: string | undefined;
27
25
  schemaId?: string | undefined;
28
26
  contentType!: string;
@@ -24,7 +24,7 @@ import {
24
24
  V1_PropertyMapping,
25
25
  } from '../../../../../model/packageableElements/mapping/V1_PropertyMapping.js';
26
26
  import type { V1_RawRelationalOperationElement } from '../model/V1_RawRelationalOperationElement.js';
27
- import type { V1_BindingTransformer } from '../../../externalFormat/binding/V1_DSL_ExternalFormat_BindingTransformer.js';
27
+ import type { V1_BindingTransformer } from '../../../externalFormat/store/V1_DSL_ExternalFormat_BindingTransformer.js';
28
28
 
29
29
  export class V1_RelationalPropertyMapping
30
30
  extends V1_PropertyMapping
@@ -14,8 +14,8 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { V1_ModelUnit } from '../../../model/packageableElements/externalFormat/binding/V1_DSL_ExternalFormat_ModelUnit.js';
18
- import type { ModelUnit } from '../../../../../../../graph/metamodel/pure/packageableElements/externalFormat/binding/DSL_ExternalFormat_ModelUnit.js';
17
+ import { V1_ModelUnit } from '../../../model/packageableElements/externalFormat/store/V1_DSL_ExternalFormat_ModelUnit.js';
18
+ import type { ModelUnit } from '../../../../../../../graph/metamodel/pure/packageableElements/externalFormat/store/DSL_ExternalFormat_ModelUnit.js';
19
19
  import { PackageableElementReference } from '../../../../../../../graph/metamodel/pure/packageableElements/PackageableElementReference.js';
20
20
 
21
21
  export const V1_transformModelUnit = (metamodel: ModelUnit): V1_ModelUnit => {
@@ -146,7 +146,7 @@ import type { V1_GraphTransformerContext } from './V1_GraphTransformerContext.js
146
146
  import type { DSL_Mapping_PureProtocolProcessorPlugin_Extension } from '../../../../extensions/DSL_Mapping_PureProtocolProcessorPlugin_Extension.js';
147
147
  import type { InstanceSetImplementation } from '../../../../../../../graph/metamodel/pure/packageableElements/mapping/InstanceSetImplementation.js';
148
148
  import type { SubstituteStore } from '../../../../../../../graph/metamodel/pure/packageableElements/mapping/SubstituteStore.js';
149
- import { V1_BindingTransformer } from '../../../model/packageableElements/externalFormat/binding/V1_DSL_ExternalFormat_BindingTransformer.js';
149
+ import { V1_BindingTransformer } from '../../../model/packageableElements/externalFormat/store/V1_DSL_ExternalFormat_BindingTransformer.js';
150
150
  import { V1_MergeOperationClassMapping } from '../../../model/packageableElements/mapping/V1_MergeOperationClassMapping.js';
151
151
  import { MergeOperationSetImplementation } from '../../../../../../../graph/metamodel/pure/packageableElements/mapping/MergeOperationSetImplementation.js';
152
152
  import type { INTERNAL__UnresolvedSetImplementation } from '../../../../../../../graph/metamodel/pure/packageableElements/mapping/INTERNAL__UnresolvedSetImplementation.js';
@@ -61,6 +61,12 @@ import { V1_INTERNAL__UnknownResultType } from '../../../../model/executionPlan/
61
61
  import { INTERNAL__UnknownResultType } from '../../../../../../../../graph/metamodel/pure/executionPlan/result/INTERNAL__UnknownResultType.js';
62
62
  import { INTERNAL__UnknownExecutionNode } from '../../../../../../../../graph/metamodel/pure/executionPlan/nodes/INTERNAL__UnknownExecutionNode.js';
63
63
  import { V1_INTERNAL__UnknownExecutionNode } from '../../../../model/executionPlan/nodes/V1_INTERNAL__UnknownExecutionNode.js';
64
+ import type { JavaClass } from '../../../../../../../../graph/metamodel/pure/executionPlan/nodes/JavaClass.js';
65
+ import { V1_JavaClass } from '../../../../model/executionPlan/nodes/V1_JavaClass.js';
66
+ import type { PlatformImplementation } from '../../../../../../../../graph/metamodel/pure/executionPlan/nodes/PlatformImplementation.js';
67
+ import type { V1_PlatformImplementation } from '../../../../model/executionPlan/nodes/V1_PlatformImplementation.js';
68
+ import { JavaPlatformImplementation } from '../../../../../../../../graph/metamodel/pure/executionPlan/nodes/JavaPlatformImplementation.js';
69
+ import { V1_JavaPlatformImplementation } from '../../../../model/executionPlan/nodes/V1_JavaPlatformImplementation.js';
64
70
 
65
71
  // ---------------------------------------- Result Type ----------------------------------------
66
72
 
@@ -281,6 +287,31 @@ export function V1_transformExecutionNode(
281
287
 
282
288
  // ---------------------------------------- Execution Plan ----------------------------------------
283
289
 
290
+ function transformJavaClass(metamodel: JavaClass): V1_JavaClass {
291
+ const protocol = new V1_JavaClass();
292
+ protocol.name = metamodel.name;
293
+ protocol.package = metamodel.package;
294
+ protocol.source = metamodel.source;
295
+ protocol.byteCode = metamodel.byteCode;
296
+ return protocol;
297
+ }
298
+
299
+ function transformPlatformImplementation(
300
+ metamodel: PlatformImplementation,
301
+ ): V1_PlatformImplementation {
302
+ if (metamodel instanceof JavaPlatformImplementation) {
303
+ const protocol = new V1_JavaPlatformImplementation();
304
+ protocol.classes = metamodel.classes.map(transformJavaClass);
305
+ protocol.executionClassFullName = metamodel.executionClassFullName;
306
+ protocol.executionMethodName = metamodel.executionMethodName;
307
+ return protocol;
308
+ }
309
+ throw new UnsupportedOperationError(
310
+ `Can't transform platform implementation`,
311
+ metamodel,
312
+ );
313
+ }
314
+
284
315
  export const V1_transformExecutionPlan = (
285
316
  metamodel: ExecutionPlan,
286
317
  context: V1_GraphTransformerContext,
@@ -297,6 +328,10 @@ export const V1_transformExecutionPlan = (
297
328
  metamodel.rootExecutionNode,
298
329
  context,
299
330
  );
300
- protocol.globalImplementationSupport = metamodel.globalImplementationSupport;
331
+ if (metamodel.globalImplementationSupport) {
332
+ protocol.globalImplementationSupport = transformPlatformImplementation(
333
+ metamodel.globalImplementationSupport,
334
+ );
335
+ }
301
336
  return protocol;
302
337
  };
@@ -20,7 +20,7 @@ import {
20
20
  } from '../../../../../../helpers/DSL_ExternalFormat_GraphManagerHelper.js';
21
21
  import type { PackageableElementImplicitReference } from '../../../../../../../graph/metamodel/pure/packageableElements/PackageableElementReference.js';
22
22
  import type { SchemaSet } from '../../../../../../../graph/metamodel/pure/packageableElements/externalFormat/schemaSet/DSL_ExternalFormat_SchemaSet.js';
23
- import type { Binding } from '../../../../../../../graph/metamodel/pure/packageableElements/externalFormat/binding/DSL_ExternalFormat_Binding.js';
23
+ import type { Binding } from '../../../../../../../graph/metamodel/pure/packageableElements/externalFormat/store/DSL_ExternalFormat_Binding.js';
24
24
  import type { V1_GraphBuilderContext } from './V1_GraphBuilderContext.js';
25
25
 
26
26
  export const V1_resolveSchemaSet = (
@@ -80,6 +80,12 @@ import { V1_INTERNAL__UnknownResultType } from '../../../model/executionPlan/res
80
80
  import { INTERNAL__UnknownResultType } from '../../../../../../../graph/metamodel/pure/executionPlan/result/INTERNAL__UnknownResultType.js';
81
81
  import { V1_INTERNAL__UnknownExecutionNode } from '../../../model/executionPlan/nodes/V1_INTERNAL__UnknownExecutionNode.js';
82
82
  import { INTERNAL__UnknownExecutionNode } from '../../../../../../../graph/metamodel/pure/executionPlan/nodes/INTERNAL__UnknownExecutionNode.js';
83
+ import type { PlatformImplementation } from '../../../../../../../graph/metamodel/pure/executionPlan/nodes/PlatformImplementation.js';
84
+ import type { V1_PlatformImplementation } from '../../../model/executionPlan/nodes/V1_PlatformImplementation.js';
85
+ import { JavaPlatformImplementation } from '../../../../../../../graph/metamodel/pure/executionPlan/nodes/JavaPlatformImplementation.js';
86
+ import { V1_JavaPlatformImplementation } from '../../../model/executionPlan/nodes/V1_JavaPlatformImplementation.js';
87
+ import type { V1_JavaClass } from '../../../model/executionPlan/nodes/V1_JavaClass.js';
88
+ import { JavaClass } from '../../../../../../../graph/metamodel/pure/executionPlan/nodes/JavaClass.js';
83
89
  import { V1_buildValueSpecification } from './helpers/V1_ValueSpecificationBuilderHelper.js';
84
90
 
85
91
  export const V1_parseDataType = (val: string): RelationalDataType => {
@@ -385,6 +391,31 @@ function buildExecutionNode(
385
391
 
386
392
  // ---------------------------------------- Execution Plan ----------------------------------------
387
393
 
394
+ function buildJavaClass(protocol: V1_JavaClass): JavaClass {
395
+ const metamodel = new JavaClass();
396
+ metamodel.name = protocol.name;
397
+ metamodel.package = protocol.package;
398
+ metamodel.source = protocol.source;
399
+ metamodel.byteCode = protocol.byteCode;
400
+ return metamodel;
401
+ }
402
+
403
+ function buildPlatformImplementation(
404
+ protocol: V1_PlatformImplementation,
405
+ ): PlatformImplementation {
406
+ if (protocol instanceof V1_JavaPlatformImplementation) {
407
+ const metamodel = new JavaPlatformImplementation();
408
+ metamodel.classes = protocol.classes.map(buildJavaClass);
409
+ metamodel.executionClassFullName = protocol.executionClassFullName;
410
+ metamodel.executionMethodName = protocol.executionMethodName;
411
+ return metamodel;
412
+ }
413
+ throw new UnsupportedOperationError(
414
+ `Can't build platform implementation`,
415
+ protocol,
416
+ );
417
+ }
418
+
388
419
  export const V1_buildExecutionPlan = (
389
420
  protocol: V1_ExecutionPlan,
390
421
  context: V1_GraphBuilderContext,
@@ -401,8 +432,11 @@ export const V1_buildExecutionPlan = (
401
432
  protocol.rootExecutionNode,
402
433
  context,
403
434
  );
404
- metamodel.globalImplementationSupport =
405
- protocol.globalImplementationSupport;
435
+ if (protocol.globalImplementationSupport) {
436
+ metamodel.globalImplementationSupport = buildPlatformImplementation(
437
+ protocol.globalImplementationSupport,
438
+ );
439
+ }
406
440
  return metamodel;
407
441
  }
408
442
  throw new UnsupportedOperationError(`Can't build execution plan`, protocol);
@@ -88,7 +88,7 @@ import {
88
88
  } from '../../../../../../../graph/helpers/DSL_Mapping_Helper.js';
89
89
  import { GraphBuilderError } from '../../../../../../../graph-manager/GraphManagerUtils.js';
90
90
  import type { AbstractProperty } from '../../../../../../../graph/metamodel/pure/packageableElements/domain/AbstractProperty.js';
91
- import { BindingTransformer } from '../../../../../../../graph/metamodel/pure/packageableElements/externalFormat/binding/DSL_ExternalFormat_BindingTransformer.js';
91
+ import { BindingTransformer } from '../../../../../../../graph/metamodel/pure/packageableElements/externalFormat/store/DSL_ExternalFormat_BindingTransformer.js';
92
92
  import type { Mapping } from '../../../../../../../graph/metamodel/pure/packageableElements/mapping/Mapping.js';
93
93
  import { V1_resolveBinding } from './V1_DSL_ExternalFormat_GraphBuilderHelper.js';
94
94
  import { INTERNAL__UnresolvedSetImplementation } from '../../../../../../../graph/metamodel/pure/packageableElements/mapping/INTERNAL__UnresolvedSetImplementation.js';
@@ -19,6 +19,7 @@ import {
19
19
  usingModelSchema,
20
20
  } from '@finos/legend-shared';
21
21
  import {
22
+ alias,
22
23
  createModelSchema,
23
24
  primitive,
24
25
  list,
@@ -27,13 +28,17 @@ import {
27
28
  serialize,
28
29
  deserialize,
29
30
  } from 'serializr';
31
+ import { V1_ExternalFormatConnection } from '../../../model/packageableElements/externalFormat/connection/V1_DSL_ExternalFormat_ExternalFormatConnection.js';
32
+ import { V1_UrlStream } from '../../../model/packageableElements/externalFormat/connection/V1_DSL_ExternalFormat_UrlStream.js';
30
33
  import { V1_Schema } from '../../../model/packageableElements/externalFormat/schemaSet/V1_DSL_ExternalFormat_Schema.js';
31
34
  import { V1_SchemaSet } from '../../../model/packageableElements/externalFormat/schemaSet/V1_DSL_ExternalFormat_SchemaSet.js';
32
- import { V1_Binding } from '../../../model/packageableElements/externalFormat/binding/V1_DSL_ExternalFormat_Binding.js';
33
- import { V1_ModelUnit } from '../../../model/packageableElements/externalFormat/binding/V1_DSL_ExternalFormat_ModelUnit.js';
35
+ import { V1_Binding } from '../../../model/packageableElements/externalFormat/store/V1_DSL_ExternalFormat_Binding.js';
36
+ import { V1_ModelUnit } from '../../../model/packageableElements/externalFormat/store/V1_DSL_ExternalFormat_ModelUnit.js';
34
37
 
35
38
  export const V1_SCHEMA_SET_ELEMENT_PROTOCOL_TYPE = 'externalFormatSchemaSet';
36
39
  export const V1_BINDING_ELEMENT_PROTOCOL_TYPE = 'binding';
40
+ export const V1_EXTERNAL_FORMAT_CONNECTION_ELEMENT_PROTOCOL_TYPE =
41
+ 'ExternalFormatConnection';
37
42
 
38
43
  const V1_schemaModelSchema = createModelSchema(V1_Schema, {
39
44
  content: primitive(),
@@ -66,3 +71,19 @@ export const V1_bindingModelSchema = createModelSchema(V1_Binding, {
66
71
  schemaId: optional(primitive()),
67
72
  schemaSet: primitive(),
68
73
  });
74
+
75
+ const V1_urlStreamModelSchema = createModelSchema(V1_UrlStream, {
76
+ _type: usingConstantValueSchema('urlStream'),
77
+ url: primitive(),
78
+ });
79
+
80
+ export const V1_externalFormatConnectionModelSchema = createModelSchema(
81
+ V1_ExternalFormatConnection,
82
+ {
83
+ _type: usingConstantValueSchema(
84
+ V1_EXTERNAL_FORMAT_CONNECTION_ELEMENT_PROTOCOL_TYPE,
85
+ ),
86
+ store: alias('element', optional(primitive())),
87
+ externalSource: usingModelSchema(V1_urlStreamModelSchema),
88
+ },
89
+ );
@@ -109,7 +109,7 @@ import { V1_XStorePropertyMapping } from '../../../model/packageableElements/map
109
109
  import { V1_XStoreAssociationMapping } from '../../../model/packageableElements/mapping/xStore/V1_XStoreAssociationMapping.js';
110
110
  import type { DSL_Mapping_PureProtocolProcessorPlugin_Extension } from '../../../../extensions/DSL_Mapping_PureProtocolProcessorPlugin_Extension.js';
111
111
  import type { PureProtocolProcessorPlugin } from '../../../../PureProtocolProcessorPlugin.js';
112
- import { V1_BindingTransformer } from '../../../model/packageableElements/externalFormat/binding/V1_DSL_ExternalFormat_BindingTransformer.js';
112
+ import { V1_BindingTransformer } from '../../../model/packageableElements/externalFormat/store/V1_DSL_ExternalFormat_BindingTransformer.js';
113
113
  import { V1_MergeOperationClassMapping } from '../../../model/packageableElements/mapping/V1_MergeOperationClassMapping.js';
114
114
  import { V1_FlatDataAssociationMapping } from '../../../model/packageableElements/store/flatData/mapping/V1_FlatDataAssociationMapping.js';
115
115
  import { V1_FlatDataAssociationPropertyMapping } from '../../../model/packageableElements/store/flatData/mapping/V1_FlatDataAssociationPropertyMapping.js';
@@ -57,6 +57,8 @@ import {
57
57
  import { V1_INTERNAL__UnknownResultType } from '../../../../model/executionPlan/results/V1_INTERNAL__UnknownResultType.js';
58
58
  import { V1_INTERNAL__UnknownExecutionNode } from '../../../../model/executionPlan/nodes/V1_INTERNAL__UnknownExecutionNode.js';
59
59
  import type { V1_ExecutionNode } from '../../../../model/executionPlan/nodes/V1_ExecutionNode.js';
60
+ import { V1_JavaPlatformImplementation } from '../../../../model/executionPlan/nodes/V1_JavaPlatformImplementation.js';
61
+ import { V1_JavaClass } from '../../../../model/executionPlan/nodes/V1_JavaClass.js';
60
62
  import { V1_variableModelSchema } from '../V1_ValueSpecificationSerializer.js';
61
63
 
62
64
  // ---------------------------------------- Result Type ----------------------------------------
@@ -131,6 +133,10 @@ export enum V1_ExecutionNodeType {
131
133
  SEQUENCE = 'sequence',
132
134
  }
133
135
 
136
+ const enum V1_PlatformImplementationType {
137
+ JAVA = 'java',
138
+ }
139
+
134
140
  const relationalTDSInstantationExecutionNodeModelSchema = createModelSchema(
135
141
  V1_RelationalTDSInstantiationExecutionNode,
136
142
  {
@@ -313,12 +319,30 @@ export enum V1_ExecutionPlanType {
313
319
  COMPOSITE = 'composite',
314
320
  }
315
321
 
322
+ const javaClassModelSchema = createModelSchema(V1_JavaClass, {
323
+ package: primitive(),
324
+ name: primitive(),
325
+ source: primitive(),
326
+ byteCode: optional(primitive()),
327
+ });
328
+
329
+ const javaPlatformImplementationModelSchema = createModelSchema(
330
+ V1_JavaPlatformImplementation,
331
+ {
332
+ _type: usingConstantValueSchema(V1_PlatformImplementationType.JAVA),
333
+ classes: list(usingModelSchema(javaClassModelSchema)),
334
+ executionClassFullName: optional(primitive()),
335
+ executionMethodName: optional(primitive()),
336
+ },
337
+ );
316
338
  const SimpleExecutionPlanModelSchema = createModelSchema(
317
339
  V1_SimpleExecutionPlan,
318
340
  {
319
341
  _type: usingConstantValueSchema(V1_ExecutionPlanType.SINGLE),
320
342
  authDependent: primitive(),
321
- globalImplementationSupport: raw(),
343
+ globalImplementationSupport: optional(
344
+ usingModelSchema(javaPlatformImplementationModelSchema),
345
+ ),
322
346
  kerberos: optional(primitive()),
323
347
  rootExecutionNode: custom(
324
348
  V1_serializeExecutionNode,