@finos/legend-graph 0.0.6 → 0.1.3

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 (255) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/lib/DSLMapping_Exports.d.ts +4 -1
  3. package/lib/DSLMapping_Exports.d.ts.map +1 -1
  4. package/lib/DSLMapping_Exports.js +2 -1
  5. package/lib/DSLMapping_Exports.js.map +1 -1
  6. package/lib/MetaModelConst.d.ts +1 -0
  7. package/lib/MetaModelConst.d.ts.map +1 -1
  8. package/lib/MetaModelConst.js +1 -0
  9. package/lib/MetaModelConst.js.map +1 -1
  10. package/lib/graphManager/AbstractPureGraphManager.d.ts +1 -1
  11. package/lib/graphManager/AbstractPureGraphManager.d.ts.map +1 -1
  12. package/lib/graphManager/AbstractPureGraphManager.js.map +1 -1
  13. package/lib/helpers/MappingHelper.d.ts +4 -0
  14. package/lib/helpers/MappingHelper.d.ts.map +1 -1
  15. package/lib/helpers/MappingHelper.js +15 -3
  16. package/lib/helpers/MappingHelper.js.map +1 -1
  17. package/lib/helpers/MappingResolutionHelper.d.ts +7 -1
  18. package/lib/helpers/MappingResolutionHelper.d.ts.map +1 -1
  19. package/lib/helpers/MappingResolutionHelper.js +11 -5
  20. package/lib/helpers/MappingResolutionHelper.js.map +1 -1
  21. package/lib/index.d.ts +2 -0
  22. package/lib/index.d.ts.map +1 -1
  23. package/lib/index.js +2 -0
  24. package/lib/index.js.map +1 -1
  25. package/lib/models/metamodels/pure/packageableElements/connection/Connection.d.ts +1 -0
  26. package/lib/models/metamodels/pure/packageableElements/connection/Connection.d.ts.map +1 -1
  27. package/lib/models/metamodels/pure/packageableElements/connection/Connection.js.map +1 -1
  28. package/lib/models/metamodels/pure/packageableElements/domain/Multiplicity.d.ts +2 -0
  29. package/lib/models/metamodels/pure/packageableElements/domain/Multiplicity.d.ts.map +1 -1
  30. package/lib/models/metamodels/pure/packageableElements/domain/Multiplicity.js +9 -1
  31. package/lib/models/metamodels/pure/packageableElements/domain/Multiplicity.js.map +1 -1
  32. package/lib/models/metamodels/pure/packageableElements/mapping/Mapping.d.ts +2 -2
  33. package/lib/models/metamodels/pure/packageableElements/mapping/Mapping.d.ts.map +1 -1
  34. package/lib/models/metamodels/pure/packageableElements/mapping/Mapping.js +4 -6
  35. package/lib/models/metamodels/pure/packageableElements/mapping/Mapping.js.map +1 -1
  36. package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMappingsImplementation.d.ts +1 -0
  37. package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMappingsImplementation.d.ts.map +1 -1
  38. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.d.ts +10 -0
  39. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.d.ts.map +1 -1
  40. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.js +35 -0
  41. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.js.map +1 -1
  42. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/InlineEmbeddedRelationalInstanceSetImplementation.d.ts +1 -0
  43. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/InlineEmbeddedRelationalInstanceSetImplementation.d.ts.map +1 -1
  44. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/InlineEmbeddedRelationalInstanceSetImplementation.js +9 -1
  45. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/InlineEmbeddedRelationalInstanceSetImplementation.js.map +1 -1
  46. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RootRelationalInstanceSetImplementation.d.ts +2 -1
  47. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RootRelationalInstanceSetImplementation.d.ts.map +1 -1
  48. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RootRelationalInstanceSetImplementation.js +4 -1
  49. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RootRelationalInstanceSetImplementation.js.map +1 -1
  50. package/lib/models/metamodels/pure/valueSpecification/ValueSpecification.d.ts +1 -0
  51. package/lib/models/metamodels/pure/valueSpecification/ValueSpecification.d.ts.map +1 -1
  52. package/lib/models/metamodels/pure/valueSpecification/ValueSpecification.js +8 -0
  53. package/lib/models/metamodels/pure/valueSpecification/ValueSpecification.js.map +1 -1
  54. package/lib/models/metamodels/pure/valueSpecification/VariableExpression.d.ts +3 -1
  55. package/lib/models/metamodels/pure/valueSpecification/VariableExpression.d.ts.map +1 -1
  56. package/lib/models/metamodels/pure/valueSpecification/VariableExpression.js +11 -1
  57. package/lib/models/metamodels/pure/valueSpecification/VariableExpression.js.map +1 -1
  58. package/lib/models/protocols/pure/DSLMapping_PureProtocolProcessorPlugin_Extension.d.ts +34 -0
  59. package/lib/models/protocols/pure/DSLMapping_PureProtocolProcessorPlugin_Extension.d.ts.map +1 -0
  60. package/lib/models/protocols/pure/DSLMapping_PureProtocolProcessorPlugin_Extension.js +19 -0
  61. package/lib/models/protocols/pure/DSLMapping_PureProtocolProcessorPlugin_Extension.js.map +1 -0
  62. package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts +1 -1
  63. package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts.map +1 -1
  64. package/lib/models/protocols/pure/v1/V1_PureGraphManager.js +12 -17
  65. package/lib/models/protocols/pure/v1/V1_PureGraphManager.js.map +1 -1
  66. package/lib/models/protocols/pure/v1/engine/V1_Engine.d.ts.map +1 -1
  67. package/lib/models/protocols/pure/v1/engine/V1_Engine.js +2 -1
  68. package/lib/models/protocols/pure/v1/engine/V1_Engine.js.map +1 -1
  69. package/lib/models/protocols/pure/v1/engine/V1_EngineHelper.d.ts.map +1 -1
  70. package/lib/models/protocols/pure/v1/engine/V1_EngineHelper.js +30 -30
  71. package/lib/models/protocols/pure/v1/engine/V1_EngineHelper.js.map +1 -1
  72. package/lib/models/protocols/pure/v1/engine/V1_ExecutionHelper.js +4 -4
  73. package/lib/models/protocols/pure/v1/engine/V1_ExecutionHelper.js.map +1 -1
  74. package/lib/models/protocols/pure/v1/engine/generation/V1_DatabaseBuilderInput.d.ts +2 -1
  75. package/lib/models/protocols/pure/v1/engine/generation/V1_DatabaseBuilderInput.d.ts.map +1 -1
  76. package/lib/models/protocols/pure/v1/engine/generation/V1_DatabaseBuilderInput.js +6 -4
  77. package/lib/models/protocols/pure/v1/engine/generation/V1_DatabaseBuilderInput.js.map +1 -1
  78. package/lib/models/protocols/pure/v1/model/context/V1_AlloySdlc.d.ts +3 -2
  79. package/lib/models/protocols/pure/v1/model/context/V1_AlloySdlc.d.ts.map +1 -1
  80. package/lib/models/protocols/pure/v1/model/context/V1_AlloySdlc.js +5 -3
  81. package/lib/models/protocols/pure/v1/model/context/V1_AlloySdlc.js.map +1 -1
  82. package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.d.ts +3 -2
  83. package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.d.ts.map +1 -1
  84. package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.js +1 -0
  85. package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.js.map +1 -1
  86. package/lib/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.d.ts +1 -0
  87. package/lib/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.d.ts.map +1 -1
  88. package/lib/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.js.map +1 -1
  89. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_ClassMapping.d.ts +1 -0
  90. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_ClassMapping.d.ts.map +1 -1
  91. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_ClassMapping.js +1 -0
  92. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_ClassMapping.js.map +1 -1
  93. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.d.ts +5 -0
  94. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.d.ts.map +1 -1
  95. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.js +10 -0
  96. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.js.map +1 -1
  97. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/mapping/V1_InlineEmbeddedPropertyMapping.d.ts +1 -0
  98. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/mapping/V1_InlineEmbeddedPropertyMapping.d.ts.map +1 -1
  99. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/mapping/V1_InlineEmbeddedPropertyMapping.js +9 -0
  100. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/mapping/V1_InlineEmbeddedPropertyMapping.js.map +1 -1
  101. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/mapping/V1_RootRelationalClassMapping.d.ts.map +1 -1
  102. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/mapping/V1_RootRelationalClassMapping.js +1 -0
  103. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/mapping/V1_RootRelationalClassMapping.js.map +1 -1
  104. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ConnectionTransformer.d.ts.map +1 -1
  105. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ConnectionTransformer.js +15 -0
  106. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ConnectionTransformer.js.map +1 -1
  107. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.d.ts.map +1 -1
  108. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js +6 -5
  109. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js.map +1 -1
  110. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.d.ts +6 -33
  111. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.d.ts.map +1 -1
  112. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.js +22 -5
  113. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.js.map +1 -1
  114. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.d.ts.map +1 -1
  115. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.js +2 -2
  116. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.js.map +1 -1
  117. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.js +5 -5
  118. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.js.map +1 -1
  119. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.d.ts.map +1 -1
  120. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.js +17 -17
  121. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.js.map +1 -1
  122. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.js +11 -11
  123. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.js.map +1 -1
  124. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingSecondPassBuilder.d.ts.map +1 -1
  125. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingSecondPassBuilder.js +22 -17
  126. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingSecondPassBuilder.js.map +1 -1
  127. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.d.ts +2 -1
  128. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.d.ts.map +1 -1
  129. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.js +25 -14
  130. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.js.map +1 -1
  131. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.d.ts.map +1 -1
  132. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.js +28 -28
  133. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.js.map +1 -1
  134. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.d.ts.map +1 -1
  135. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.js +8 -8
  136. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.js.map +1 -1
  137. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.js +28 -28
  138. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.js.map +1 -1
  139. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.d.ts.map +1 -1
  140. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.js +14 -14
  141. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.js.map +1 -1
  142. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.d.ts.map +1 -1
  143. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.js +15 -15
  144. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.js.map +1 -1
  145. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_FlatDataStoreBuilderHelper.d.ts.map +1 -1
  146. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_FlatDataStoreBuilderHelper.js +7 -7
  147. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_FlatDataStoreBuilderHelper.js.map +1 -1
  148. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_GenerationSpecificationBuilderHelper.d.ts.map +1 -1
  149. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_GenerationSpecificationBuilderHelper.js +3 -3
  150. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_GenerationSpecificationBuilderHelper.js.map +1 -1
  151. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.d.ts.map +1 -1
  152. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js +18 -15
  153. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js.map +1 -1
  154. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.d.ts.map +1 -1
  155. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.js +4 -2
  156. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.js.map +1 -1
  157. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalConnectionBuilderHelper.d.ts.map +1 -1
  158. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalConnectionBuilderHelper.js +24 -19
  159. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalConnectionBuilderHelper.js.map +1 -1
  160. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.js +3 -3
  161. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.js.map +1 -1
  162. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.d.ts.map +1 -1
  163. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.js +15 -15
  164. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.js.map +1 -1
  165. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.d.ts +1 -0
  166. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.d.ts.map +1 -1
  167. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.js +4 -2
  168. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.js.map +1 -1
  169. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.d.ts.map +1 -1
  170. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.js +4 -3
  171. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.js.map +1 -1
  172. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.d.ts +9 -8
  173. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.d.ts.map +1 -1
  174. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.js +25 -5
  175. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.js.map +1 -1
  176. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_CoreSerializationHelper.d.ts +1 -1
  177. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_CoreSerializationHelper.d.ts.map +1 -1
  178. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_CoreSerializationHelper.js +1 -1
  179. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_CoreSerializationHelper.js.map +1 -1
  180. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_GenerationSpecificationSerializationHelper.js +2 -2
  181. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_GenerationSpecificationSerializationHelper.js.map +1 -1
  182. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_MappingSerializationHelper.d.ts.map +1 -1
  183. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_MappingSerializationHelper.js +7 -6
  184. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_MappingSerializationHelper.js.map +1 -1
  185. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RuntimeSerializationHelper.d.ts +4 -5
  186. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RuntimeSerializationHelper.d.ts.map +1 -1
  187. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RuntimeSerializationHelper.js +26 -22
  188. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RuntimeSerializationHelper.js.map +1 -1
  189. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ServiceSerializationHelper.d.ts.map +1 -1
  190. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ServiceSerializationHelper.js +5 -5
  191. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ServiceSerializationHelper.js.map +1 -1
  192. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ValueSpecificationSerializer.d.ts.map +1 -1
  193. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ValueSpecificationSerializer.js +3 -2
  194. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ValueSpecificationSerializer.js.map +1 -1
  195. package/package.json +5 -5
  196. package/src/DSLMapping_Exports.ts +4 -1
  197. package/src/MetaModelConst.ts +1 -0
  198. package/src/graphManager/AbstractPureGraphManager.ts +2 -1
  199. package/src/helpers/MappingHelper.ts +43 -3
  200. package/src/helpers/MappingResolutionHelper.ts +14 -5
  201. package/src/index.ts +5 -0
  202. package/src/models/metamodels/pure/packageableElements/connection/Connection.ts +1 -0
  203. package/src/models/metamodels/pure/packageableElements/domain/Multiplicity.ts +11 -1
  204. package/src/models/metamodels/pure/packageableElements/mapping/Mapping.ts +4 -6
  205. package/src/models/metamodels/pure/packageableElements/mapping/PropertyMappingsImplementation.ts +1 -0
  206. package/src/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.ts +40 -0
  207. package/src/models/metamodels/pure/packageableElements/store/relational/mapping/InlineEmbeddedRelationalInstanceSetImplementation.ts +10 -1
  208. package/src/models/metamodels/pure/packageableElements/store/relational/mapping/RootRelationalInstanceSetImplementation.ts +5 -2
  209. package/src/models/metamodels/pure/valueSpecification/ValueSpecification.ts +9 -0
  210. package/src/models/metamodels/pure/valueSpecification/VariableExpression.ts +17 -1
  211. package/src/models/protocols/pure/DSLMapping_PureProtocolProcessorPlugin_Extension.ts +53 -0
  212. package/src/models/protocols/pure/v1/V1_PureGraphManager.ts +22 -24
  213. package/src/models/protocols/pure/v1/engine/V1_Engine.ts +2 -1
  214. package/src/models/protocols/pure/v1/engine/V1_EngineHelper.ts +55 -34
  215. package/src/models/protocols/pure/v1/engine/V1_ExecutionHelper.ts +4 -4
  216. package/src/models/protocols/pure/v1/engine/generation/V1_DatabaseBuilderInput.ts +14 -11
  217. package/src/models/protocols/pure/v1/model/context/V1_AlloySdlc.ts +9 -3
  218. package/src/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.ts +3 -2
  219. package/src/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.ts +1 -0
  220. package/src/models/protocols/pure/v1/model/packageableElements/mapping/V1_ClassMapping.ts +1 -0
  221. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.ts +10 -0
  222. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/mapping/V1_InlineEmbeddedPropertyMapping.ts +10 -0
  223. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/mapping/V1_RootRelationalClassMapping.ts +1 -0
  224. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_ConnectionTransformer.ts +25 -0
  225. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.ts +8 -7
  226. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.ts +34 -10
  227. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.ts +8 -2
  228. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.ts +5 -5
  229. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.ts +41 -17
  230. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.ts +11 -11
  231. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingSecondPassBuilder.ts +26 -17
  232. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.ts +48 -14
  233. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.ts +112 -28
  234. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.ts +20 -8
  235. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.ts +28 -28
  236. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.ts +44 -14
  237. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.ts +42 -15
  238. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_FlatDataStoreBuilderHelper.ts +19 -7
  239. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_GenerationSpecificationBuilderHelper.ts +6 -3
  240. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.ts +23 -15
  241. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.ts +4 -2
  242. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalConnectionBuilderHelper.ts +24 -19
  243. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.ts +3 -3
  244. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.ts +18 -15
  245. package/src/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.ts +7 -2
  246. package/src/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.ts +4 -3
  247. package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.ts +42 -8
  248. package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_CoreSerializationHelper.ts +5 -3
  249. package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_GenerationSpecificationSerializationHelper.ts +2 -2
  250. package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_MappingSerializationHelper.ts +6 -5
  251. package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RuntimeSerializationHelper.ts +42 -38
  252. package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ServiceSerializationHelper.ts +4 -6
  253. package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ValueSpecificationSerializer.ts +3 -5
  254. package/tsconfig.json +1 -0
  255. package/tsconfig.package.json +40 -0
@@ -22,17 +22,22 @@ import type { PropertyMapping } from '../models/metamodels/pure/packageableEleme
22
22
  import type { Property } from '../models/metamodels/pure/packageableElements/domain/Property';
23
23
  import type { Mapping } from '../models/metamodels/pure/packageableElements/mapping/Mapping';
24
24
  import type { Class } from '../models/metamodels/pure/packageableElements/domain/Class';
25
- import { getClassMappingsByClass } from './MappingHelper';
25
+ import {
26
+ getClassMappingsByClass,
27
+ getOwnClassMappingsByClass,
28
+ } from './MappingHelper';
26
29
 
27
30
  /**
28
31
  * If this is the only mapping element for the target class, automatically mark it as root,
29
32
  * otherwise, if there is another set implementation make it non-root,
30
- * otherwise, leave other set implementation root status as-is
33
+ * otherwise, leave other set implementation root status as-is.
34
+ * NOTE: use get `OWN` class mappings as we are smartly updating the current mapping in the form editor,
35
+ * which does not support `include` mappings as of now.
31
36
  */
32
37
  export const updateRootSetImplementationOnCreate = (
33
38
  setImp: SetImplementation,
34
39
  ): void => {
35
- const classMappingsWithSimilarTarget = getClassMappingsByClass(
40
+ const classMappingsWithSimilarTarget = getOwnClassMappingsByClass(
36
41
  setImp.parent,
37
42
  setImp.class.value,
38
43
  ).filter((si) => si !== setImp);
@@ -48,11 +53,13 @@ export const updateRootSetImplementationOnCreate = (
48
53
 
49
54
  /**
50
55
  * If only one set implementation remained, it will be nominated as the new root
56
+ * NOTE: use get `OWN` class mappings as we are smartly updating the current mapping in the form editor,
57
+ * which does not support `include` mappings as of now.
51
58
  */
52
59
  export const updateRootSetImplementationOnDelete = (
53
60
  setImp: SetImplementation,
54
61
  ): void => {
55
- const classMappingsWithSimilarTarget = getClassMappingsByClass(
62
+ const classMappingsWithSimilarTarget = getOwnClassMappingsByClass(
56
63
  setImp.parent,
57
64
  setImp.class.value,
58
65
  ).filter((si) => si !== setImp);
@@ -64,11 +71,13 @@ export const updateRootSetImplementationOnDelete = (
64
71
  /**
65
72
  * Make the nominated set implementation root and flip the root flag of all other
66
73
  * set implementations with the same target
74
+ * NOTE: use get `OWN` class mappings as we are smartly updating the current mapping in the form editor,
75
+ * which does not support `include` mappings as of now.
67
76
  */
68
77
  export const nominateRootSetImplementation = (
69
78
  setImp: SetImplementation,
70
79
  ): void => {
71
- const classMappingsWithSimilarTarget = getClassMappingsByClass(
80
+ const classMappingsWithSimilarTarget = getOwnClassMappingsByClass(
72
81
  setImp.parent,
73
82
  setImp.class.value,
74
83
  );
package/src/index.ts CHANGED
@@ -65,6 +65,10 @@ export {
65
65
  StereotypeReference,
66
66
  StereotypeExplicitReference,
67
67
  } from './models/metamodels/pure/packageableElements/domain/StereotypeReference';
68
+ export {
69
+ TagReference,
70
+ TagExplicitReference,
71
+ } from './models/metamodels/pure/packageableElements/domain/TagReference';
68
72
 
69
73
  // V1 protocols
70
74
  export * from './models/protocols/pure/v1/model/packageableElements/V1_PackageableElement';
@@ -224,6 +228,7 @@ export { V1_serializeValueSpecification } from './models/protocols/pure/v1/trans
224
228
  export { V1_deserializeRawValueSpecification } from './models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RawValueSpecificationSerializationHelper';
225
229
  export { V1_serializeRawValueSpecification } from './models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RawValueSpecificationSerializationHelper';
226
230
  export { V1_ValueSpecificationBuilder } from './models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper';
231
+ export * from './models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_CoreSerializationHelper';
227
232
 
228
233
  // --------------------------------------------- TO BE MODULARIZED --------------------------------------------------
229
234
 
@@ -28,6 +28,7 @@ import type { PackageableElementReference } from '../PackageableElementReference
28
28
  import type { ModelChainConnection } from '../store/modelToModel/connection/ModelChainConnection';
29
29
 
30
30
  export interface ConnectionVisitor<T> {
31
+ visit_Connection(connection: Connection): T;
31
32
  visit_ConnectionPointer(connection: ConnectionPointer): T;
32
33
  visit_ModelChainConnection(connection: ModelChainConnection): T;
33
34
  visit_JsonModelConnection(connection: JsonModelConnection): T;
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { observable, computed, makeObservable } from 'mobx';
17
+ import { observable, computed, makeObservable, action } from 'mobx';
18
18
  import { hashArray } from '@finos/legend-shared';
19
19
  import {
20
20
  CORE_HASH_STRUCTURE,
@@ -32,12 +32,22 @@ export class Multiplicity implements Hashable {
32
32
  upperBound: observable,
33
33
  str: computed,
34
34
  hashCode: computed,
35
+ setLowerBound: action,
36
+ setUpperBound: action,
35
37
  });
36
38
 
37
39
  this.lowerBound = lowerBound;
38
40
  this.upperBound = upperBound;
39
41
  }
40
42
 
43
+ setLowerBound(val: number): void {
44
+ this.lowerBound = val;
45
+ }
46
+
47
+ setUpperBound(val: number | undefined): void {
48
+ this.upperBound = val;
49
+ }
50
+
41
51
  get str(): string {
42
52
  if (this.lowerBound === this.upperBound) {
43
53
  return this.lowerBound.toString();
@@ -52,8 +52,8 @@ export class Mapping extends PackageableElement implements Hashable, Stubable {
52
52
  deleteAssociationMapping: action,
53
53
  deleteTest: action,
54
54
  addTest: action,
55
- allClassMappings: computed,
56
- allEnumerationMappings: computed,
55
+ allOwnClassMappings: computed,
56
+ allOwnEnumerationMappings: computed,
57
57
  allIncludedMappings: computed,
58
58
  isStub: computed,
59
59
  _elementHashCode: override,
@@ -92,13 +92,11 @@ export class Mapping extends PackageableElement implements Hashable, Stubable {
92
92
  addUniqueEntry(this.tests, val);
93
93
  }
94
94
 
95
- // TODO: account for mapping includes
96
- get allClassMappings(): SetImplementation[] {
95
+ get allOwnClassMappings(): SetImplementation[] {
97
96
  return this.classMappings;
98
97
  }
99
98
 
100
- // TODO: account for mapping includes
101
- get allEnumerationMappings(): EnumerationMapping[] {
99
+ get allOwnEnumerationMappings(): EnumerationMapping[] {
102
100
  return this.enumerationMappings;
103
101
  }
104
102
 
@@ -20,4 +20,5 @@ import type { PropertyMapping } from './PropertyMapping';
20
20
  export interface PropertyMappingsImplementation
21
21
  extends PropertyOwnerImplementation {
22
22
  propertyMappings: PropertyMapping[];
23
+ superSetImplementationId?: string | undefined;
23
24
  }
@@ -169,6 +169,11 @@ export class SnowflakeDatasourceSpecification
169
169
  databaseName: string;
170
170
  cloudType?: string | undefined;
171
171
  quotedIdentifiersIgnoreCase?: boolean | undefined;
172
+ proxyHost?: string | undefined;
173
+ proxyPort?: string | undefined;
174
+ nonProxyHosts?: string | undefined;
175
+ organization?: string | undefined;
176
+ accountType?: string | undefined;
172
177
 
173
178
  constructor(
174
179
  accountName: string,
@@ -185,12 +190,22 @@ export class SnowflakeDatasourceSpecification
185
190
  databaseName: observable,
186
191
  cloudType: observable,
187
192
  quotedIdentifiersIgnoreCase: observable,
193
+ proxyHost: observable,
194
+ proxyPort: observable,
195
+ nonProxyHosts: observable,
196
+ organization: observable,
197
+ accountType: observable,
188
198
  hashCode: computed,
189
199
  setAccountName: action,
190
200
  setRegion: action,
191
201
  setWarehouseName: action,
192
202
  setDatabaseName: action,
193
203
  setCloudType: action,
204
+ setProxyHost: action,
205
+ setProxyPort: action,
206
+ setNonProxyHosts: action,
207
+ setOrganization: action,
208
+ setAccountType: action,
194
209
  setQuotedIdentifiersIgnoreCase: action,
195
210
  });
196
211
 
@@ -224,6 +239,26 @@ export class SnowflakeDatasourceSpecification
224
239
  this.quotedIdentifiersIgnoreCase = val;
225
240
  }
226
241
 
242
+ setProxyHost(val: string | undefined): void {
243
+ this.proxyHost = val;
244
+ }
245
+
246
+ setProxyPort(val: string | undefined): void {
247
+ this.proxyPort = val;
248
+ }
249
+
250
+ setNonProxyHosts(val: string | undefined): void {
251
+ this.nonProxyHosts = val;
252
+ }
253
+
254
+ setOrganization(val: string | undefined): void {
255
+ this.organization = val;
256
+ }
257
+
258
+ setAccountType(val: string | undefined): void {
259
+ this.accountType = val;
260
+ }
261
+
227
262
  get hashCode(): string {
228
263
  return hashArray([
229
264
  CORE_HASH_STRUCTURE.SNOWFLAKE_DATASOURCE_SPECIFICATION,
@@ -232,6 +267,11 @@ export class SnowflakeDatasourceSpecification
232
267
  this.warehouseName,
233
268
  this.databaseName,
234
269
  this.cloudType ?? '',
270
+ this.proxyHost ?? '',
271
+ this.proxyPort ?? '',
272
+ this.nonProxyHosts ?? '',
273
+ this.organization ?? '',
274
+ this.accountType ?? '',
235
275
  this.quotedIdentifiersIgnoreCase?.toString() ?? '',
236
276
  ]);
237
277
  }
@@ -28,7 +28,8 @@ import type { RootRelationalInstanceSetImplementation } from './RootRelationalIn
28
28
  import type { PackageableElementReference } from '../../../PackageableElementReference';
29
29
  import type { Class } from '../../../domain/Class';
30
30
  import type { InferableMappingElementIdValue } from '../../../mapping/InferableMappingElementId';
31
- import { UnsupportedOperationError } from '@finos/legend-shared';
31
+ import { hashArray, UnsupportedOperationError } from '@finos/legend-shared';
32
+ import { CORE_HASH_STRUCTURE } from '../../../../../../../MetaModelConst';
32
33
 
33
34
  export class InlineEmbeddedRelationalInstanceSetImplementation
34
35
  extends EmbeddedRelationalInstanceSetImplementation
@@ -71,4 +72,12 @@ export class InlineEmbeddedRelationalInstanceSetImplementation
71
72
  ): T {
72
73
  throw new UnsupportedOperationError();
73
74
  }
75
+
76
+ override get hashCode(): string {
77
+ return hashArray([
78
+ CORE_HASH_STRUCTURE.INLINE_EMBEDDED_REALTIONAL_PROPERTY_MAPPING,
79
+ this.property.pointerHashCode,
80
+ this.inlineSetImplementation.id.valueForSerialization ?? '',
81
+ ]);
82
+ }
74
83
  }
@@ -42,7 +42,8 @@ export class RootRelationalInstanceSetImplementation
42
42
  filter?: FilterMapping | undefined;
43
43
  distinct?: boolean | undefined;
44
44
  groupBy?: GroupByMapping | undefined;
45
- mainTableAlias!: TableAlias;
45
+ mainTableAlias?: TableAlias;
46
+ superSetImplementationId?: string | undefined;
46
47
 
47
48
  constructor(
48
49
  id: InferableMappingElementIdValue,
@@ -58,6 +59,7 @@ export class RootRelationalInstanceSetImplementation
58
59
  distinct: observable,
59
60
  groupBy: observable,
60
61
  mainTableAlias: observable,
62
+ superSetImplementationId: observable,
61
63
  setPropertyMappings: action,
62
64
  hashCode: computed,
63
65
  });
@@ -77,10 +79,11 @@ export class RootRelationalInstanceSetImplementation
77
79
  return hashArray([
78
80
  CORE_HASH_STRUCTURE.ROOT_RELATIONAL_INSTANCE_SET_IMPLEMENTATION,
79
81
  super.hashCode,
80
- this.mainTableAlias.relation.pointerHashCode,
82
+ this.mainTableAlias?.relation.pointerHashCode ?? '',
81
83
  this.distinct?.toString() ?? '',
82
84
  hashArray(this.groupBy?.columns ?? []),
83
85
  this.filter ?? '',
86
+ this.superSetImplementationId ?? '',
84
87
  ]);
85
88
  }
86
89
  }
@@ -39,6 +39,7 @@ import type {
39
39
  } from './SimpleFunctionExpression';
40
40
  import type { INTERNAL__UnknownValueSpecification } from './INTERNAL__UnknownValueSpecification';
41
41
  import type { VariableExpression } from './VariableExpression';
42
+ import { makeObservable, observable, action } from 'mobx';
42
43
 
43
44
  export interface ValueSpecificationVisitor<T> {
44
45
  visit_RootGraphFetchTreeInstanceValue(
@@ -83,10 +84,18 @@ export abstract class ValueSpecification {
83
84
  multiplicity: Multiplicity,
84
85
  genericTypeReference?: GenericTypeReference,
85
86
  ) {
87
+ makeObservable<ValueSpecification>(this, {
88
+ multiplicity: observable,
89
+ setMultiplicity: action,
90
+ });
86
91
  this.multiplicity = multiplicity;
87
92
  this.genericType = genericTypeReference;
88
93
  }
89
94
 
95
+ setMultiplicity(val: Multiplicity): void {
96
+ this.multiplicity = val;
97
+ }
98
+
90
99
  abstract accept_ValueSpecificationVisitor<T>(
91
100
  visitor: ValueSpecificationVisitor<T>,
92
101
  ): T;
@@ -14,6 +14,8 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
+ import { makeObservable, observable, action } from 'mobx';
18
+ import type { GenericTypeReference } from '../packageableElements/domain/GenericTypeReference';
17
19
  import type { Multiplicity } from '../packageableElements/domain/Multiplicity';
18
20
  import type { ValueSpecificationVisitor } from './ValueSpecification';
19
21
  import { ValueSpecification } from './ValueSpecification';
@@ -21,9 +23,23 @@ import { ValueSpecification } from './ValueSpecification';
21
23
  export class VariableExpression extends ValueSpecification {
22
24
  name: string;
23
25
 
24
- constructor(name: string, multiplicity: Multiplicity) {
26
+ constructor(
27
+ name: string,
28
+ multiplicity: Multiplicity,
29
+ genericType?: GenericTypeReference | undefined,
30
+ ) {
25
31
  super(multiplicity);
32
+ makeObservable<VariableExpression>(this, {
33
+ name: observable,
34
+ genericType: observable,
35
+ setName: action,
36
+ });
26
37
  this.name = name;
38
+ this.genericType = genericType;
39
+ }
40
+
41
+ setName(val: string): void {
42
+ this.name = val;
27
43
  }
28
44
 
29
45
  accept_ValueSpecificationVisitor<T>(
@@ -0,0 +1,53 @@
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 { PlainObject } from '@finos/legend-shared';
18
+ import type { Connection } from '../../metamodels/pure/packageableElements/connection/Connection';
19
+ import { PureProtocolProcessorPlugin } from './PureProtocolProcessorPlugin';
20
+ import type { V1_Connection } from '../pure/v1/model/packageableElements/connection/V1_Connection';
21
+ import type { V1_GraphTransformerContext } from './v1/transformation/pureGraph/from/V1_GraphTransformerContext';
22
+ import type { V1_GraphBuilderContext } from './v1/transformation/pureGraph/to/V1_GraphBuilderContext';
23
+ import type { Store } from '../../metamodels/pure/packageableElements/store/Store';
24
+ import type { PackageableElementReference } from '../../metamodels/pure/packageableElements/PackageableElementReference';
25
+
26
+ export type V1_ConnectionBuilder = (
27
+ connection: V1_Connection,
28
+ context: V1_GraphBuilderContext,
29
+ store?: PackageableElementReference<Store> | undefined,
30
+ ) => Connection | undefined;
31
+
32
+ export type V1_ConnectionTransformer = (
33
+ metamodel: Connection,
34
+ context: V1_GraphTransformerContext,
35
+ ) => V1_Connection | undefined;
36
+
37
+ export type V1_ConnectionProtocolSerializer = (
38
+ connection: V1_Connection,
39
+ ) => PlainObject<V1_Connection> | undefined;
40
+
41
+ export type V1_ConnectionProtocolDeserializer = (
42
+ json: PlainObject<V1_Connection>,
43
+ ) => V1_Connection | undefined;
44
+
45
+ export abstract class DSLMapping_PureProtocolProcessorPlugin_Extension extends PureProtocolProcessorPlugin {
46
+ V1_getExtraConnectionBuilders?(): V1_ConnectionBuilder[];
47
+
48
+ V1_getExtraConnectionTransformers?(): V1_ConnectionTransformer[];
49
+
50
+ V1_getExtraConnectionProtocolSerializers?(): V1_ConnectionProtocolSerializer[];
51
+
52
+ V1_getExtraConnectionProtocolDeserializers?(): V1_ConnectionProtocolDeserializer[];
53
+ }
@@ -119,7 +119,7 @@ import type { V1_RawLambda } from './model/rawValueSpecification/V1_RawLambda';
119
119
  import { V1_ExecuteInput } from './engine/execution/V1_ExecuteInput';
120
120
  import type { V1_PureModelContextGenerationInput } from './engine/import/V1_PureModelContextGenerationInput';
121
121
  import { V1_buildValueSpecification } from './transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper';
122
- import { V1_ValueSpecificationTransformer } from './transformation/pureGraph/from/V1_ValueSpecificationTransformer';
122
+ import { V1_transformRootValueSpecification } from './transformation/pureGraph/from/V1_ValueSpecificationTransformer';
123
123
  import { V1_Profile } from './model/packageableElements/domain/V1_Profile';
124
124
  import { V1_Class } from './model/packageableElements/domain/V1_Class';
125
125
  import { V1_Enumeration } from './model/packageableElements/domain/V1_Enumeration';
@@ -148,6 +148,7 @@ import {
148
148
  V1_DatabaseBuilderConfig,
149
149
  V1_DatabaseBuilderInput,
150
150
  V1_DatabasePattern,
151
+ V1_setupDatabaseBuilderInputSerialization,
151
152
  V1_TargetDatabase,
152
153
  } from './engine/generation/V1_DatabaseBuilderInput';
153
154
  import { V1_transformRelationalDatabaseConnection } from './transformation/pureGraph/from/V1_ConnectionTransformer';
@@ -157,6 +158,10 @@ import { V1_ServiceStore } from './model/packageableElements/store/relational/V1
157
158
  import type { V1_Multiplicity } from './model/packageableElements/domain/V1_Multiplicity';
158
159
  import type { V1_RawVariable } from './model/rawValueSpecification/V1_RawVariable';
159
160
  import { V1_setupDatabaseSerialization } from './transformation/pureProtocol/serializationHelpers/V1_DatabaseSerializationHelper';
161
+ import {
162
+ V1_setupEngineRuntimeSerialization,
163
+ V1_setupLegacyRuntimeSerialization,
164
+ } from './transformation/pureProtocol/serializationHelpers/V1_RuntimeSerializationHelper';
160
165
  import type { DSLGenerationSpecification_PureProtocolProcessorPlugin_Extension } from '../DSLGenerationSpecification_PureProtocolProcessorPlugin_Extension';
161
166
  import type { RawRelationalOperationElement } from '../../../metamodels/pure/packageableElements/store/relational/model/RawRelationalOperationElement';
162
167
  import { V1_GraphTransformerContextBuilder } from './transformation/pureGraph/from/V1_GraphTransformerContext';
@@ -379,13 +384,22 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
379
384
  this.extensions = new V1_GraphBuilderExtensions(
380
385
  this.pluginManager.getPureProtocolProcessorPlugins(),
381
386
  );
382
- // setup (de)serializer using plugins
387
+ // setup serialization plugins
383
388
  V1_setupPureModelContextDataSerialization(
384
389
  this.pluginManager.getPureProtocolProcessorPlugins(),
385
390
  );
386
391
  V1_setupDatabaseSerialization(
387
392
  this.pluginManager.getPureProtocolProcessorPlugins(),
388
393
  );
394
+ V1_setupEngineRuntimeSerialization(
395
+ this.pluginManager.getPureProtocolProcessorPlugins(),
396
+ );
397
+ V1_setupLegacyRuntimeSerialization(
398
+ this.pluginManager.getPureProtocolProcessorPlugins(),
399
+ );
400
+ V1_setupDatabaseBuilderInputSerialization(
401
+ this.pluginManager.getPureProtocolProcessorPlugins(),
402
+ );
389
403
  }
390
404
 
391
405
  TEMP__getEngineConfig(): TEMP__AbstractEngineConfig {
@@ -1661,14 +1675,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1661
1675
  valueSpecification: ValueSpecification,
1662
1676
  ): Record<PropertyKey, unknown> {
1663
1677
  return V1_serializeValueSpecification(
1664
- valueSpecification.accept_ValueSpecificationVisitor(
1665
- new V1_ValueSpecificationTransformer(
1666
- [],
1667
- new Map<string, unknown[]>(),
1668
- true,
1669
- false,
1670
- ),
1671
- ),
1678
+ V1_transformRootValueSpecification(valueSpecification),
1672
1679
  ) as Record<PropertyKey, unknown>;
1673
1680
  }
1674
1681
 
@@ -1942,7 +1949,8 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1942
1949
  async registerService(
1943
1950
  graph: PureModel,
1944
1951
  service: Service,
1945
- projectId: string,
1952
+ groupdId: string,
1953
+ artifactId: string,
1946
1954
  server: string,
1947
1955
  executionMode: ServiceExecutionMode,
1948
1956
  version: string | undefined,
@@ -1962,7 +1970,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1962
1970
  break;
1963
1971
  }
1964
1972
  case ServiceExecutionMode.SEMI_INTERACTIVE: {
1965
- const sdlcInfo = new V1_AlloySdlc(projectId, version);
1973
+ const sdlcInfo = new V1_AlloySdlc(groupdId, artifactId, version);
1966
1974
  const pointer = new V1_PureModelContextPointer(protocol, sdlcInfo);
1967
1975
  // data
1968
1976
  const data = new V1_PureModelContextData();
@@ -1988,7 +1996,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1988
1996
  break;
1989
1997
  }
1990
1998
  case ServiceExecutionMode.PROD: {
1991
- const sdlcInfo = new V1_AlloySdlc(projectId, version);
1999
+ const sdlcInfo = new V1_AlloySdlc(groupdId, artifactId, version);
1992
2000
  const pointer = new V1_PureModelContextPointer(protocol, sdlcInfo);
1993
2001
  sdlcInfo.packageableElementPointers = [
1994
2002
  new V1_PackageableElementPointer(
@@ -2029,17 +2037,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2029
2037
  /* @MARKER: NEW ELEMENT TYPE SUPPORT --- consider adding new element type handler here whenever support for a new element type is added to the app */
2030
2038
  const prunedGraphData = new V1_PureModelContextData();
2031
2039
  prunedGraphData.elements = graphData.elements.filter(
2032
- (element) =>
2033
- element instanceof V1_Class ||
2034
- element instanceof V1_Enumeration ||
2035
- element instanceof V1_Profile ||
2036
- element instanceof V1_Association ||
2037
- element instanceof V1_ConcreteFunctionDefinition ||
2038
- element instanceof V1_Measure ||
2039
- element instanceof V1_Store ||
2040
- element instanceof V1_PackageableConnection ||
2041
- element instanceof V1_Mapping ||
2042
- element instanceof V1_PackageableRuntime,
2040
+ (element) => !(element instanceof V1_Service),
2043
2041
  );
2044
2042
  prunedGraphData.elements.push(this.elementToProtocol<V1_Service>(service));
2045
2043
  return prunedGraphData;
@@ -81,6 +81,7 @@ import { V1_ServiceStorage } from './service/V1_ServiceStorage';
81
81
  import { V1_ServiceRegistrationResult } from './service/V1_ServiceRegistrationResult';
82
82
  import type { V1_PureModelContext } from '../model/context/V1_PureModelContext';
83
83
  import { ServiceExecutionMode } from '../../../../../graphManager/action/service/ServiceExecutionMode';
84
+ import { serialize } from 'serializr';
84
85
 
85
86
  class V1_EngineConfig extends TEMP__AbstractEngineConfig {
86
87
  private engine: V1_Engine;
@@ -598,7 +599,7 @@ export class V1_Engine {
598
599
  ): Promise<V1_PureModelContextData> {
599
600
  return V1_deserializePureModelContextData(
600
601
  await this.engineServerClient.buildDatabase(
601
- V1_DatabaseBuilderInput.serialization.toJson(input),
602
+ serialize(V1_DatabaseBuilderInput, input),
602
603
  ),
603
604
  );
604
605
  }