@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.
- package/CHANGELOG.md +24 -0
- package/lib/DSLMapping_Exports.d.ts +4 -1
- package/lib/DSLMapping_Exports.d.ts.map +1 -1
- package/lib/DSLMapping_Exports.js +2 -1
- package/lib/DSLMapping_Exports.js.map +1 -1
- package/lib/MetaModelConst.d.ts +1 -0
- package/lib/MetaModelConst.d.ts.map +1 -1
- package/lib/MetaModelConst.js +1 -0
- package/lib/MetaModelConst.js.map +1 -1
- package/lib/graphManager/AbstractPureGraphManager.d.ts +1 -1
- package/lib/graphManager/AbstractPureGraphManager.d.ts.map +1 -1
- package/lib/graphManager/AbstractPureGraphManager.js.map +1 -1
- package/lib/helpers/MappingHelper.d.ts +4 -0
- package/lib/helpers/MappingHelper.d.ts.map +1 -1
- package/lib/helpers/MappingHelper.js +15 -3
- package/lib/helpers/MappingHelper.js.map +1 -1
- package/lib/helpers/MappingResolutionHelper.d.ts +7 -1
- package/lib/helpers/MappingResolutionHelper.d.ts.map +1 -1
- package/lib/helpers/MappingResolutionHelper.js +11 -5
- package/lib/helpers/MappingResolutionHelper.js.map +1 -1
- package/lib/index.d.ts +2 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +2 -0
- package/lib/index.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/connection/Connection.d.ts +1 -0
- package/lib/models/metamodels/pure/packageableElements/connection/Connection.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/connection/Connection.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/domain/Multiplicity.d.ts +2 -0
- package/lib/models/metamodels/pure/packageableElements/domain/Multiplicity.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/domain/Multiplicity.js +9 -1
- package/lib/models/metamodels/pure/packageableElements/domain/Multiplicity.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/Mapping.d.ts +2 -2
- package/lib/models/metamodels/pure/packageableElements/mapping/Mapping.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/Mapping.js +4 -6
- package/lib/models/metamodels/pure/packageableElements/mapping/Mapping.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMappingsImplementation.d.ts +1 -0
- package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMappingsImplementation.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.d.ts +10 -0
- package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.js +35 -0
- package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/InlineEmbeddedRelationalInstanceSetImplementation.d.ts +1 -0
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/InlineEmbeddedRelationalInstanceSetImplementation.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/InlineEmbeddedRelationalInstanceSetImplementation.js +9 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/InlineEmbeddedRelationalInstanceSetImplementation.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RootRelationalInstanceSetImplementation.d.ts +2 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RootRelationalInstanceSetImplementation.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RootRelationalInstanceSetImplementation.js +4 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RootRelationalInstanceSetImplementation.js.map +1 -1
- package/lib/models/metamodels/pure/valueSpecification/ValueSpecification.d.ts +1 -0
- package/lib/models/metamodels/pure/valueSpecification/ValueSpecification.d.ts.map +1 -1
- package/lib/models/metamodels/pure/valueSpecification/ValueSpecification.js +8 -0
- package/lib/models/metamodels/pure/valueSpecification/ValueSpecification.js.map +1 -1
- package/lib/models/metamodels/pure/valueSpecification/VariableExpression.d.ts +3 -1
- package/lib/models/metamodels/pure/valueSpecification/VariableExpression.d.ts.map +1 -1
- package/lib/models/metamodels/pure/valueSpecification/VariableExpression.js +11 -1
- package/lib/models/metamodels/pure/valueSpecification/VariableExpression.js.map +1 -1
- package/lib/models/protocols/pure/DSLMapping_PureProtocolProcessorPlugin_Extension.d.ts +34 -0
- package/lib/models/protocols/pure/DSLMapping_PureProtocolProcessorPlugin_Extension.d.ts.map +1 -0
- package/lib/models/protocols/pure/DSLMapping_PureProtocolProcessorPlugin_Extension.js +19 -0
- package/lib/models/protocols/pure/DSLMapping_PureProtocolProcessorPlugin_Extension.js.map +1 -0
- package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts +1 -1
- package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/V1_PureGraphManager.js +12 -17
- package/lib/models/protocols/pure/v1/V1_PureGraphManager.js.map +1 -1
- package/lib/models/protocols/pure/v1/engine/V1_Engine.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/engine/V1_Engine.js +2 -1
- package/lib/models/protocols/pure/v1/engine/V1_Engine.js.map +1 -1
- package/lib/models/protocols/pure/v1/engine/V1_EngineHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/engine/V1_EngineHelper.js +30 -30
- package/lib/models/protocols/pure/v1/engine/V1_EngineHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/engine/V1_ExecutionHelper.js +4 -4
- package/lib/models/protocols/pure/v1/engine/V1_ExecutionHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/engine/generation/V1_DatabaseBuilderInput.d.ts +2 -1
- package/lib/models/protocols/pure/v1/engine/generation/V1_DatabaseBuilderInput.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/engine/generation/V1_DatabaseBuilderInput.js +6 -4
- package/lib/models/protocols/pure/v1/engine/generation/V1_DatabaseBuilderInput.js.map +1 -1
- package/lib/models/protocols/pure/v1/model/context/V1_AlloySdlc.d.ts +3 -2
- package/lib/models/protocols/pure/v1/model/context/V1_AlloySdlc.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/model/context/V1_AlloySdlc.js +5 -3
- package/lib/models/protocols/pure/v1/model/context/V1_AlloySdlc.js.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.d.ts +3 -2
- package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.js +1 -0
- package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.js.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.d.ts +1 -0
- package/lib/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.js.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_ClassMapping.d.ts +1 -0
- package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_ClassMapping.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_ClassMapping.js +1 -0
- package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_ClassMapping.js.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.d.ts +5 -0
- package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.js +10 -0
- package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.js.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/mapping/V1_InlineEmbeddedPropertyMapping.d.ts +1 -0
- package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/mapping/V1_InlineEmbeddedPropertyMapping.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/mapping/V1_InlineEmbeddedPropertyMapping.js +9 -0
- package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/mapping/V1_InlineEmbeddedPropertyMapping.js.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/mapping/V1_RootRelationalClassMapping.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/mapping/V1_RootRelationalClassMapping.js +1 -0
- package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/mapping/V1_RootRelationalClassMapping.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ConnectionTransformer.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ConnectionTransformer.js +15 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ConnectionTransformer.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js +6 -5
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.d.ts +6 -33
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.js +22 -5
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.js +2 -2
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.js +5 -5
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.js +17 -17
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.js +11 -11
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingSecondPassBuilder.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingSecondPassBuilder.js +22 -17
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingSecondPassBuilder.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.d.ts +2 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.js +25 -14
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.js +28 -28
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.js +8 -8
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.js +28 -28
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.js +14 -14
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.js +15 -15
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_FlatDataStoreBuilderHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_FlatDataStoreBuilderHelper.js +7 -7
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_FlatDataStoreBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_GenerationSpecificationBuilderHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_GenerationSpecificationBuilderHelper.js +3 -3
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_GenerationSpecificationBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js +18 -15
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.js +4 -2
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalConnectionBuilderHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalConnectionBuilderHelper.js +24 -19
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalConnectionBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.js +3 -3
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.js +15 -15
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.d.ts +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.js +4 -2
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.js +4 -3
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.d.ts +9 -8
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.js +25 -5
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_CoreSerializationHelper.d.ts +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_CoreSerializationHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_CoreSerializationHelper.js +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_CoreSerializationHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_GenerationSpecificationSerializationHelper.js +2 -2
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_GenerationSpecificationSerializationHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_MappingSerializationHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_MappingSerializationHelper.js +7 -6
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_MappingSerializationHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RuntimeSerializationHelper.d.ts +4 -5
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RuntimeSerializationHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RuntimeSerializationHelper.js +26 -22
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RuntimeSerializationHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ServiceSerializationHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ServiceSerializationHelper.js +5 -5
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ServiceSerializationHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ValueSpecificationSerializer.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ValueSpecificationSerializer.js +3 -2
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ValueSpecificationSerializer.js.map +1 -1
- package/package.json +5 -5
- package/src/DSLMapping_Exports.ts +4 -1
- package/src/MetaModelConst.ts +1 -0
- package/src/graphManager/AbstractPureGraphManager.ts +2 -1
- package/src/helpers/MappingHelper.ts +43 -3
- package/src/helpers/MappingResolutionHelper.ts +14 -5
- package/src/index.ts +5 -0
- package/src/models/metamodels/pure/packageableElements/connection/Connection.ts +1 -0
- package/src/models/metamodels/pure/packageableElements/domain/Multiplicity.ts +11 -1
- package/src/models/metamodels/pure/packageableElements/mapping/Mapping.ts +4 -6
- package/src/models/metamodels/pure/packageableElements/mapping/PropertyMappingsImplementation.ts +1 -0
- package/src/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.ts +40 -0
- package/src/models/metamodels/pure/packageableElements/store/relational/mapping/InlineEmbeddedRelationalInstanceSetImplementation.ts +10 -1
- package/src/models/metamodels/pure/packageableElements/store/relational/mapping/RootRelationalInstanceSetImplementation.ts +5 -2
- package/src/models/metamodels/pure/valueSpecification/ValueSpecification.ts +9 -0
- package/src/models/metamodels/pure/valueSpecification/VariableExpression.ts +17 -1
- package/src/models/protocols/pure/DSLMapping_PureProtocolProcessorPlugin_Extension.ts +53 -0
- package/src/models/protocols/pure/v1/V1_PureGraphManager.ts +22 -24
- package/src/models/protocols/pure/v1/engine/V1_Engine.ts +2 -1
- package/src/models/protocols/pure/v1/engine/V1_EngineHelper.ts +55 -34
- package/src/models/protocols/pure/v1/engine/V1_ExecutionHelper.ts +4 -4
- package/src/models/protocols/pure/v1/engine/generation/V1_DatabaseBuilderInput.ts +14 -11
- package/src/models/protocols/pure/v1/model/context/V1_AlloySdlc.ts +9 -3
- package/src/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.ts +3 -2
- package/src/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.ts +1 -0
- package/src/models/protocols/pure/v1/model/packageableElements/mapping/V1_ClassMapping.ts +1 -0
- package/src/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.ts +10 -0
- package/src/models/protocols/pure/v1/model/packageableElements/store/relational/mapping/V1_InlineEmbeddedPropertyMapping.ts +10 -0
- package/src/models/protocols/pure/v1/model/packageableElements/store/relational/mapping/V1_RootRelationalClassMapping.ts +1 -0
- package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_ConnectionTransformer.ts +25 -0
- package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.ts +8 -7
- package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.ts +34 -10
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.ts +8 -2
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.ts +5 -5
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.ts +41 -17
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.ts +11 -11
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingSecondPassBuilder.ts +26 -17
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.ts +48 -14
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.ts +112 -28
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.ts +20 -8
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.ts +28 -28
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.ts +44 -14
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.ts +42 -15
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_FlatDataStoreBuilderHelper.ts +19 -7
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_GenerationSpecificationBuilderHelper.ts +6 -3
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.ts +23 -15
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.ts +4 -2
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalConnectionBuilderHelper.ts +24 -19
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.ts +3 -3
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.ts +18 -15
- package/src/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.ts +7 -2
- package/src/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.ts +4 -3
- package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.ts +42 -8
- package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_CoreSerializationHelper.ts +5 -3
- package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_GenerationSpecificationSerializationHelper.ts +2 -2
- package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_MappingSerializationHelper.ts +6 -5
- package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RuntimeSerializationHelper.ts +42 -38
- package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ServiceSerializationHelper.ts +4 -6
- package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ValueSpecificationSerializer.ts +3 -5
- package/tsconfig.json +1 -0
- 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 {
|
|
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 =
|
|
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 =
|
|
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 =
|
|
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
|
-
|
|
56
|
-
|
|
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
|
-
|
|
96
|
-
get allClassMappings(): SetImplementation[] {
|
|
95
|
+
get allOwnClassMappings(): SetImplementation[] {
|
|
97
96
|
return this.classMappings;
|
|
98
97
|
}
|
|
99
98
|
|
|
100
|
-
|
|
101
|
-
get allEnumerationMappings(): EnumerationMapping[] {
|
|
99
|
+
get allOwnEnumerationMappings(): EnumerationMapping[] {
|
|
102
100
|
return this.enumerationMappings;
|
|
103
101
|
}
|
|
104
102
|
|
|
@@ -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
|
|
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
|
|
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(
|
|
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 {
|
|
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
|
|
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
|
|
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
|
-
|
|
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(
|
|
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(
|
|
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
|
|
602
|
+
serialize(V1_DatabaseBuilderInput, input),
|
|
602
603
|
),
|
|
603
604
|
);
|
|
604
605
|
}
|