@finos/legend-graph 8.0.3 → 9.0.0
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/lib/DSLMapping_Exports.d.ts +2 -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 +0 -1
- package/lib/MetaModelConst.d.ts.map +1 -1
- package/lib/MetaModelConst.js +0 -1
- package/lib/MetaModelConst.js.map +1 -1
- package/lib/MetaModelUtils.d.ts +9 -4
- package/lib/MetaModelUtils.d.ts.map +1 -1
- package/lib/MetaModelUtils.js +23 -9
- package/lib/MetaModelUtils.js.map +1 -1
- package/lib/graphManager/AbstractPureGraphManager.d.ts +16 -3
- package/lib/graphManager/AbstractPureGraphManager.d.ts.map +1 -1
- package/lib/graphManager/AbstractPureGraphManager.js.map +1 -1
- package/lib/graphManager/DSLMapping_PureGraphManagerPlugin_Extension.d.ts +6 -0
- package/lib/graphManager/DSLMapping_PureGraphManagerPlugin_Extension.d.ts.map +1 -1
- package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.d.ts +3 -1
- package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.d.ts.map +1 -1
- package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.js +25 -8
- package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.js.map +1 -1
- package/lib/graphManager/action/creation/DSLMapping_ModelCreatorHelper.d.ts.map +1 -1
- package/lib/graphManager/action/creation/DSLMapping_ModelCreatorHelper.js +2 -1
- package/lib/graphManager/action/creation/DSLMapping_ModelCreatorHelper.js.map +1 -1
- package/lib/graphManager/action/validation/DSLMapping_ValidationHelper.d.ts.map +1 -1
- package/lib/graphManager/action/validation/DSLMapping_ValidationHelper.js +2 -4
- package/lib/graphManager/action/validation/DSLMapping_ValidationHelper.js.map +1 -1
- package/lib/index.d.ts +5 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +6 -2
- package/lib/index.js.map +1 -1
- package/lib/models/metamodels/pure/data/EmbeddedData.js +1 -1
- package/lib/models/metamodels/pure/data/EmbeddedData.js.map +1 -1
- package/lib/models/metamodels/pure/executionPlan/nodes/ExecutionNode.d.ts +1 -0
- package/lib/models/metamodels/pure/executionPlan/nodes/ExecutionNode.d.ts.map +1 -1
- package/lib/models/metamodels/pure/executionPlan/nodes/ExecutionNode.js +2 -0
- package/lib/models/metamodels/pure/executionPlan/nodes/ExecutionNode.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/PackageableElementReference.d.ts +1 -2
- package/lib/models/metamodels/pure/packageableElements/PackageableElementReference.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/PackageableElementReference.js +1 -4
- package/lib/models/metamodels/pure/packageableElements/PackageableElementReference.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/connection/Connection.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/connection/Connection.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/domain/Class.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/domain/Class.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/domain/Class.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/domain/ConcreteFunctionDefinition.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/domain/ConcreteFunctionDefinition.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/domain/DerivedProperty.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/domain/DerivedProperty.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/domain/Property.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/domain/Property.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/domain/PropertyReference.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/domain/PropertyReference.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/domain/StereotypeReference.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/domain/StereotypeReference.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/domain/TagReference.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/domain/TagReference.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/externalFormat/connection/DSLExternalFormat_ExternalFormatConnection.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/externalFormat/connection/DSLExternalFormat_ExternalFormatConnection.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_BindingTransformer.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_BindingTransformer.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_ModelUnit.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_ModelUnit.js +2 -2
- package/lib/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_ModelUnit.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/fileGeneration/FileGenerationSpecification.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/fileGeneration/FileGenerationSpecification.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/generationSpecification/GenerationSpecification.js +2 -2
- package/lib/models/metamodels/pure/packageableElements/generationSpecification/GenerationSpecification.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/AssociationImplementation.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/AssociationImplementation.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/EnumValueMapping.d.ts +3 -2
- package/lib/models/metamodels/pure/packageableElements/mapping/EnumValueMapping.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/EnumValueMapping.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.d.ts +32 -0
- package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.d.ts.map +1 -0
- package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.js +41 -0
- package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.js.map +1 -0
- package/lib/models/metamodels/pure/packageableElements/mapping/LocalMappingPropertyInfo.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/LocalMappingPropertyInfo.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/MappingInclude.js +5 -5
- package/lib/models/metamodels/pure/packageableElements/mapping/MappingInclude.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMapping.d.ts +1 -0
- package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMapping.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementation.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementation.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/runtime/Runtime.js +3 -3
- package/lib/models/metamodels/pure/packageableElements/runtime/Runtime.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/section/Section.js +2 -2
- package/lib/models/metamodels/pure/packageableElements/section/Section.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/service/ServiceExecution.js +2 -2
- package/lib/models/metamodels/pure/packageableElements/service/ServiceExecution.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/flatData/connection/FlatDataConnection.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/flatData/connection/FlatDataConnection.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.js +1 -0
- package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataInputData.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataInputData.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataInstanceSetImplementation.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataInstanceSetImplementation.js +2 -1
- package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataInstanceSetImplementation.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataPropertyMapping.d.ts +2 -2
- package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataPropertyMapping.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataPropertyMapping.js +3 -3
- package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataPropertyMapping.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/flatData/model/FlatData.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/flatData/model/FlatData.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/flatData/model/FlatData.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/flatData/model/FlatDataSectionReference.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/flatData/model/FlatDataSectionReference.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/connection/JsonModelConnection.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/connection/JsonModelConnection.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/connection/ModelChainConnection.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/connection/ModelChainConnection.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/connection/XmlModelConnection.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/connection/XmlModelConnection.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/ObjectInputData.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/ObjectInputData.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PureInstanceSetImplementation.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PureInstanceSetImplementation.js +1 -0
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PureInstanceSetImplementation.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PurePropertyMapping.d.ts +2 -2
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PurePropertyMapping.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PurePropertyMapping.js +3 -3
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PurePropertyMapping.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.d.ts +7 -0
- package/lib/models/metamodels/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.js +8 -3
- package/lib/models/metamodels/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.js +2 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/FilterMapping.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/FilterMapping.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalInputData.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalInputData.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalInstanceSetImplementation.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalInstanceSetImplementation.js +1 -0
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalInstanceSetImplementation.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.d.ts +2 -2
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.js +3 -3
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/model/Database.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/model/Database.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/model/Database.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/model/TableReference.js +2 -2
- package/lib/models/metamodels/pure/packageableElements/store/relational/model/TableReference.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/model/ViewReference.js +2 -2
- package/lib/models/metamodels/pure/packageableElements/store/relational/model/ViewReference.js.map +1 -1
- package/lib/models/metamodels/pure/rawValueSpecification/RawPrimitiveInstanceValue.js +1 -1
- package/lib/models/metamodels/pure/rawValueSpecification/RawPrimitiveInstanceValue.js.map +1 -1
- package/lib/models/metamodels/pure/rawValueSpecification/RawVariableExpression.js +1 -1
- package/lib/models/metamodels/pure/rawValueSpecification/RawVariableExpression.js.map +1 -1
- package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.d.ts +0 -1
- package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.d.ts.map +1 -1
- package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.js +6 -10
- package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.js.map +1 -1
- package/lib/models/protocols/pure/DSLMapping_PureProtocolProcessorPlugin_Extension.d.ts +12 -0
- package/lib/models/protocols/pure/DSLMapping_PureProtocolProcessorPlugin_Extension.d.ts.map +1 -1
- package/lib/models/protocols/pure/PureProtocolProcessorPlugin.d.ts +0 -5
- package/lib/models/protocols/pure/PureProtocolProcessorPlugin.d.ts.map +1 -1
- package/lib/models/protocols/pure/PureProtocolProcessorPlugin.js.map +1 -1
- package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts +9 -14
- package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/V1_PureGraphManager.js +119 -150
- 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 +12 -11
- package/lib/models/protocols/pure/v1/engine/V1_Engine.js.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_PropertyMapping.d.ts +1 -0
- package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_PropertyMapping.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.d.ts +7 -0
- package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.js +7 -2
- package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.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 +8 -7
- 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_CoreTransformerHelper.d.ts +1 -3
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_CoreTransformerHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_CoreTransformerHelper.js +0 -2
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_CoreTransformerHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_DatabaseTransformer.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_DatabaseTransformer.js +2 -2
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_DatabaseTransformer.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_DomainTransformer.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_DomainTransformer.js +5 -4
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_DomainTransformer.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_GenerationSpecificationTransformer.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_GenerationSpecificationTransformer.js +3 -2
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_GenerationSpecificationTransformer.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 +61 -79
- 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_RawValueSpecificationTransformer.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_RawValueSpecificationTransformer.js +3 -3
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_RawValueSpecificationTransformer.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_RuntimeTransformer.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_RuntimeTransformer.js +2 -2
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_RuntimeTransformer.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_SectionIndexTransformer.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_SectionIndexTransformer.js +4 -4
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_SectionIndexTransformer.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ServiceTransformer.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ServiceTransformer.js +3 -3
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ServiceTransformer.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.js +2 -2
- 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_ProtocolToMetaModelPropertyMappingBuilder.d.ts +2 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.js +18 -4
- 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_MappingBuilderHelper.js +2 -2
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js.map +1 -1
- package/lib/package.json +2 -2
- package/package.json +5 -5
- package/src/DSLMapping_Exports.ts +2 -4
- package/src/MetaModelConst.ts +0 -1
- package/src/MetaModelUtils.ts +28 -8
- package/src/graphManager/AbstractPureGraphManager.ts +24 -14
- package/src/graphManager/DSLMapping_PureGraphManagerPlugin_Extension.ts +14 -0
- package/src/graphManager/action/changeDetection/DSLMapping_ObserverHelper.ts +47 -13
- package/src/graphManager/action/creation/DSLMapping_ModelCreatorHelper.ts +2 -1
- package/src/graphManager/action/validation/DSLMapping_ValidationHelper.ts +2 -4
- package/src/index.ts +6 -5
- package/src/models/metamodels/pure/data/EmbeddedData.ts +1 -1
- package/src/models/metamodels/pure/executionPlan/nodes/ExecutionNode.ts +3 -0
- package/src/models/metamodels/pure/packageableElements/PackageableElementReference.ts +1 -5
- package/src/models/metamodels/pure/packageableElements/connection/Connection.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/domain/Class.ts +3 -1
- package/src/models/metamodels/pure/packageableElements/domain/ConcreteFunctionDefinition.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/domain/DerivedProperty.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/domain/Property.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/domain/PropertyReference.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/domain/StereotypeReference.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/domain/TagReference.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/externalFormat/connection/DSLExternalFormat_ExternalFormatConnection.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_BindingTransformer.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_ModelUnit.ts +6 -2
- package/src/models/metamodels/pure/packageableElements/fileGeneration/FileGenerationSpecification.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/generationSpecification/GenerationSpecification.ts +2 -2
- package/src/models/metamodels/pure/packageableElements/mapping/AssociationImplementation.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/mapping/EnumValueMapping.ts +4 -2
- package/src/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.ts +61 -0
- package/src/models/metamodels/pure/packageableElements/mapping/LocalMappingPropertyInfo.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/mapping/MappingInclude.ts +5 -5
- package/src/models/metamodels/pure/packageableElements/mapping/PropertyMapping.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/mapping/SetImplementation.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/runtime/Runtime.ts +3 -3
- package/src/models/metamodels/pure/packageableElements/section/Section.ts +2 -2
- package/src/models/metamodels/pure/packageableElements/service/ServiceExecution.ts +2 -2
- package/src/models/metamodels/pure/packageableElements/store/flatData/connection/FlatDataConnection.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.ts +1 -0
- package/src/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataInputData.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataInstanceSetImplementation.ts +2 -1
- package/src/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataPropertyMapping.ts +3 -4
- package/src/models/metamodels/pure/packageableElements/store/flatData/model/FlatData.ts +3 -1
- package/src/models/metamodels/pure/packageableElements/store/flatData/model/FlatDataSectionReference.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/store/modelToModel/connection/JsonModelConnection.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/store/modelToModel/connection/ModelChainConnection.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/store/modelToModel/connection/XmlModelConnection.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/store/modelToModel/mapping/ObjectInputData.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PureInstanceSetImplementation.ts +1 -0
- package/src/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PurePropertyMapping.ts +3 -4
- package/src/models/metamodels/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.ts +8 -3
- package/src/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.ts +2 -1
- package/src/models/metamodels/pure/packageableElements/store/relational/mapping/FilterMapping.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalInputData.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalInstanceSetImplementation.ts +1 -0
- package/src/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.ts +3 -4
- package/src/models/metamodels/pure/packageableElements/store/relational/model/Database.ts +3 -1
- package/src/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.ts +1 -1
- package/src/models/metamodels/pure/packageableElements/store/relational/model/TableReference.ts +2 -2
- package/src/models/metamodels/pure/packageableElements/store/relational/model/ViewReference.ts +2 -2
- package/src/models/metamodels/pure/rawValueSpecification/RawPrimitiveInstanceValue.ts +1 -1
- package/src/models/metamodels/pure/rawValueSpecification/RawVariableExpression.ts +1 -1
- package/src/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.ts +8 -14
- package/src/models/protocols/pure/DSLMapping_PureProtocolProcessorPlugin_Extension.ts +26 -0
- package/src/models/protocols/pure/PureProtocolProcessorPlugin.ts +0 -6
- package/src/models/protocols/pure/v1/V1_PureGraphManager.ts +151 -194
- package/src/models/protocols/pure/v1/engine/V1_Engine.ts +10 -12
- package/src/models/protocols/pure/v1/model/packageableElements/mapping/V1_PropertyMapping.ts +1 -1
- package/src/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.ts +7 -2
- package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_ConnectionTransformer.ts +10 -12
- package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_CoreTransformerHelper.ts +1 -14
- package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_DatabaseTransformer.ts +4 -5
- package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_DomainTransformer.ts +4 -6
- package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_GenerationSpecificationTransformer.ts +2 -4
- package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.ts +80 -128
- package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_RawValueSpecificationTransformer.ts +3 -8
- package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_RuntimeTransformer.ts +1 -2
- package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_SectionIndexTransformer.ts +7 -10
- package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_ServiceTransformer.ts +3 -6
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.ts +2 -2
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.ts +29 -3
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.ts +2 -2
- package/tsconfig.json +1 -0
|
@@ -24,18 +24,26 @@ import type { PureGraphManagerPlugin } from './PureGraphManagerPlugin.js';
|
|
|
24
24
|
export type PureGrammarConnectionLabeler = (
|
|
25
25
|
connection: Connection,
|
|
26
26
|
) => string | undefined;
|
|
27
|
+
|
|
27
28
|
export type ConnectionObserver = (
|
|
28
29
|
connection: Connection,
|
|
29
30
|
context: ObserverContext,
|
|
30
31
|
) => Connection | undefined;
|
|
32
|
+
|
|
31
33
|
export type SetImplementationObserver = (
|
|
32
34
|
setImplementation: SetImplementation,
|
|
33
35
|
context: ObserverContext,
|
|
34
36
|
) => SetImplementation | undefined;
|
|
37
|
+
|
|
35
38
|
export type PropertyMappingObserver = (
|
|
36
39
|
propertyMapping: PropertyMapping,
|
|
37
40
|
context: ObserverContext,
|
|
38
41
|
) => PropertyMapping | undefined;
|
|
42
|
+
|
|
43
|
+
export type PropertyMappingStubChecker = (
|
|
44
|
+
propertyMapping: PropertyMapping,
|
|
45
|
+
) => boolean | undefined;
|
|
46
|
+
|
|
39
47
|
export type MappingTestInputDataObserver = (
|
|
40
48
|
inputData: InputData,
|
|
41
49
|
context: ObserverContext,
|
|
@@ -55,4 +63,10 @@ export interface DSLMapping_PureGraphManagerPlugin_Extension
|
|
|
55
63
|
getExtraPropertyMappingObservers?(): PropertyMappingObserver[];
|
|
56
64
|
|
|
57
65
|
getExtraConnectionObservers?(): ConnectionObserver[];
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Get the list of checkers which can verify if the specified property mapping is
|
|
69
|
+
* stubbed (potentially prunable) or not
|
|
70
|
+
*/
|
|
71
|
+
getExtraPropertyMappingStubCheckers?(): PropertyMappingStubChecker[];
|
|
58
72
|
}
|
|
@@ -25,6 +25,7 @@ import type { AggregationAwarePropertyMapping } from '../../../models/metamodels
|
|
|
25
25
|
import type { AggregationAwareSetImplementation } from '../../../models/metamodels/pure/packageableElements/mapping/aggregationAware/AggregationAwareSetImplementation.js';
|
|
26
26
|
import type { AssociationImplementation } from '../../../models/metamodels/pure/packageableElements/mapping/AssociationImplementation.js';
|
|
27
27
|
import type { EnumerationMapping } from '../../../models/metamodels/pure/packageableElements/mapping/EnumerationMapping.js';
|
|
28
|
+
import type { OptionalEnumerationMappingReference } from '../../../models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.js';
|
|
28
29
|
import type {
|
|
29
30
|
EnumValueMapping,
|
|
30
31
|
SourceValue,
|
|
@@ -130,6 +131,33 @@ export const observe_Abstract_Store = (metamodel: Store): void => {
|
|
|
130
131
|
|
|
131
132
|
// ------------------------------------- Mapping -------------------------------------
|
|
132
133
|
|
|
134
|
+
export const observe_OptionalEnumerationMappingReference = skipObserved(
|
|
135
|
+
(
|
|
136
|
+
metamodel: OptionalEnumerationMappingReference,
|
|
137
|
+
): OptionalEnumerationMappingReference => {
|
|
138
|
+
makeObservable(metamodel, {
|
|
139
|
+
value: observable,
|
|
140
|
+
valueForSerialization: computed,
|
|
141
|
+
});
|
|
142
|
+
|
|
143
|
+
observe_OptionalPackageableElementReference(metamodel.ownerReference);
|
|
144
|
+
|
|
145
|
+
return metamodel;
|
|
146
|
+
},
|
|
147
|
+
);
|
|
148
|
+
|
|
149
|
+
export const observe_SetImplementationReference = skipObserved(
|
|
150
|
+
(metamodel: SetImplementationReference): SetImplementationReference => {
|
|
151
|
+
makeObservable(metamodel, {
|
|
152
|
+
value: observable,
|
|
153
|
+
});
|
|
154
|
+
|
|
155
|
+
observe_PackageableElementReference(metamodel.ownerReference);
|
|
156
|
+
|
|
157
|
+
return metamodel;
|
|
158
|
+
},
|
|
159
|
+
);
|
|
160
|
+
|
|
133
161
|
export const observe_LocalMappingPropertyInfo = skipObserved(
|
|
134
162
|
(metamodel: LocalMappingPropertyInfo): LocalMappingPropertyInfo => {
|
|
135
163
|
makeObservable(metamodel, {
|
|
@@ -174,7 +202,7 @@ export const observe_PurePropertyMapping = skipObservedWithContext(
|
|
|
174
202
|
hashCode: computed,
|
|
175
203
|
});
|
|
176
204
|
|
|
177
|
-
|
|
205
|
+
observe_OptionalEnumerationMappingReference(metamodel.transformer);
|
|
178
206
|
observe_RawLambda(metamodel.transform);
|
|
179
207
|
|
|
180
208
|
return metamodel;
|
|
@@ -188,6 +216,24 @@ class PropertyMappingObserver implements PropertyMappingVisitor<void> {
|
|
|
188
216
|
this.observerContext = observerContext;
|
|
189
217
|
}
|
|
190
218
|
|
|
219
|
+
visit_PropertyMapping(propertyMapping: PropertyMapping): void {
|
|
220
|
+
const extraPropertyMappingObservers = this.observerContext.plugins.flatMap(
|
|
221
|
+
(plugin) =>
|
|
222
|
+
(
|
|
223
|
+
plugin as DSLMapping_PureGraphManagerPlugin_Extension
|
|
224
|
+
).getExtraPropertyMappingObservers?.() ?? [],
|
|
225
|
+
);
|
|
226
|
+
for (const observer of extraPropertyMappingObservers) {
|
|
227
|
+
const observedPropertyMapping = observer(
|
|
228
|
+
propertyMapping,
|
|
229
|
+
this.observerContext,
|
|
230
|
+
);
|
|
231
|
+
if (observedPropertyMapping) {
|
|
232
|
+
return;
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
|
|
191
237
|
visit_PurePropertyMapping(propertyMapping: PurePropertyMapping): void {
|
|
192
238
|
observe_PurePropertyMapping(propertyMapping, this.observerContext);
|
|
193
239
|
}
|
|
@@ -319,18 +365,6 @@ export const observe_Abstract_InstanceSetImplementation = (
|
|
|
319
365
|
);
|
|
320
366
|
};
|
|
321
367
|
|
|
322
|
-
export const observe_SetImplementationReference = skipObserved(
|
|
323
|
-
(metamodel: SetImplementationReference): SetImplementationReference => {
|
|
324
|
-
makeObservable(metamodel, {
|
|
325
|
-
value: observable,
|
|
326
|
-
});
|
|
327
|
-
|
|
328
|
-
observe_PackageableElementReference(metamodel.ownerReference);
|
|
329
|
-
|
|
330
|
-
return metamodel;
|
|
331
|
-
},
|
|
332
|
-
);
|
|
333
|
-
|
|
334
368
|
export const observe_SetImplementationContainer = skipObserved(
|
|
335
369
|
(metamodel: SetImplementationContainer): SetImplementationContainer => {
|
|
336
370
|
makeObservable(metamodel, {});
|
|
@@ -23,7 +23,8 @@ import type { StoreConnections } from '../../../models/metamodels/pure/packageab
|
|
|
23
23
|
export const stub_Mapping = (): Mapping => new Mapping('');
|
|
24
24
|
|
|
25
25
|
export const isStubbed_EnumValueMapping = (value: EnumValueMapping): boolean =>
|
|
26
|
-
!value.sourceValues.filter(isNonNullable)
|
|
26
|
+
!value.sourceValues.filter((sourceValue) => isNonNullable(sourceValue.value))
|
|
27
|
+
.length;
|
|
27
28
|
|
|
28
29
|
export const isStubbed_StoreConnections = (value: StoreConnections): boolean =>
|
|
29
30
|
!value.storeConnections.length;
|
|
@@ -47,8 +47,7 @@ export const DEPRECATED__validate_MappingTestAssert = (
|
|
|
47
47
|
])
|
|
48
48
|
: undefined;
|
|
49
49
|
}
|
|
50
|
-
|
|
51
|
-
// TODO: we might need to modularize this
|
|
50
|
+
// NOTE: technically we need to modularize these, but they are deprecated, so we will leave them alone for now
|
|
52
51
|
return undefined;
|
|
53
52
|
};
|
|
54
53
|
|
|
@@ -84,8 +83,7 @@ export const DEPRECATED__validate_InputData = (
|
|
|
84
83
|
} else if (metamodel instanceof FlatDataInputData) {
|
|
85
84
|
return DEPRECATED__validate_FlatDataInputData(metamodel);
|
|
86
85
|
}
|
|
87
|
-
|
|
88
|
-
// TODO: we might need to modularize this
|
|
86
|
+
// NOTE: technically we need to modularize these, but they are deprecated, so we will leave them alone for now
|
|
89
87
|
return undefined;
|
|
90
88
|
};
|
|
91
89
|
|
package/src/index.ts
CHANGED
|
@@ -239,10 +239,7 @@ export { V1_RawLambda } from './models/protocols/pure/v1/model/rawValueSpecifica
|
|
|
239
239
|
export { V1_ProcessingContext } from './models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ProcessingContext.js';
|
|
240
240
|
export { V1_ProtocolToMetaModelConnectionBuilder } from './models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.js';
|
|
241
241
|
export * from './models/protocols/pure/v1/transformation/pureGraph/from/V1_GraphTransformerContext.js';
|
|
242
|
-
export
|
|
243
|
-
V1_initPackageableElement,
|
|
244
|
-
V1_transformElementReference,
|
|
245
|
-
} from './models/protocols/pure/v1/transformation/pureGraph/from/V1_CoreTransformerHelper.js';
|
|
242
|
+
export * from './models/protocols/pure/v1/transformation/pureGraph/from/V1_CoreTransformerHelper.js';
|
|
246
243
|
export {
|
|
247
244
|
V1_RawValueSpecificationTransformer,
|
|
248
245
|
V1_transformRawLambda,
|
|
@@ -324,7 +321,11 @@ export * from './graphManager/action/creation/DSLMapping_ModelCreatorHelper.js';
|
|
|
324
321
|
export * from './graphManager/action/creation/RawValueSpecificationCreatorHelper.js';
|
|
325
322
|
export * from './graphManager/action/creation/StoreRelational_ModelCreatorHelper.js';
|
|
326
323
|
|
|
327
|
-
// ---------------------------------------------
|
|
324
|
+
// --------------------------------------------- DSL --------------------------------------------------
|
|
325
|
+
/**
|
|
326
|
+
* @modularize
|
|
327
|
+
* See https://github.com/finos/legend-studio/issues/65
|
|
328
|
+
*/
|
|
328
329
|
|
|
329
330
|
export * from './DSLMapping_Exports.js';
|
|
330
331
|
export * from './DSLService_Exports.js';
|
|
@@ -41,7 +41,7 @@ export class DataElementReference extends EmbeddedData implements Hashable {
|
|
|
41
41
|
get hashCode(): string {
|
|
42
42
|
return hashArray([
|
|
43
43
|
CORE_HASH_STRUCTURE.DATA_ELEMENT_REFERENCE,
|
|
44
|
-
this.dataElement.
|
|
44
|
+
this.dataElement.valueForSerialization ?? '',
|
|
45
45
|
]);
|
|
46
46
|
}
|
|
47
47
|
accept_EmbeddedDataVisitor<T>(visitor: EmbeddedDataVisitor<T>): T {
|
|
@@ -14,10 +14,13 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
|
+
import { uuid } from '@finos/legend-shared';
|
|
17
18
|
import type { Multiplicity } from '../../packageableElements/domain/Multiplicity.js';
|
|
18
19
|
import type { ResultType } from '../result/ResultType.js';
|
|
19
20
|
|
|
20
21
|
export class ExecutionNode {
|
|
22
|
+
readonly _UUID = uuid();
|
|
23
|
+
|
|
21
24
|
// fromCluster : ClusteredValueSpecification[0..1];
|
|
22
25
|
resultType!: ResultType;
|
|
23
26
|
resultSizeRange?: Multiplicity | undefined;
|
|
@@ -30,10 +30,6 @@ export abstract class PackageableElementReference<
|
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
abstract get valueForSerialization(): string | undefined;
|
|
33
|
-
|
|
34
|
-
get hashValue(): string {
|
|
35
|
-
return this.valueForSerialization ?? '';
|
|
36
|
-
}
|
|
37
33
|
}
|
|
38
34
|
|
|
39
35
|
export class PackageableElementExplicitReference<
|
|
@@ -252,7 +248,7 @@ export class OptionalPackageableElementImplicitReference<
|
|
|
252
248
|
}
|
|
253
249
|
}
|
|
254
250
|
|
|
255
|
-
export const
|
|
251
|
+
export const optionalizePackageableElementReference = <
|
|
256
252
|
V extends PackageableElement,
|
|
257
253
|
>(
|
|
258
254
|
reference: PackageableElementReference<V> | undefined,
|
|
@@ -67,7 +67,7 @@ export class ConnectionPointer extends Connection implements Hashable {
|
|
|
67
67
|
get hashCode(): string {
|
|
68
68
|
return hashArray([
|
|
69
69
|
CORE_HASH_STRUCTURE.CONNECTION_POINTER,
|
|
70
|
-
this.packageableConnection.
|
|
70
|
+
this.packageableConnection.valueForSerialization ?? '',
|
|
71
71
|
]);
|
|
72
72
|
}
|
|
73
73
|
|
|
@@ -81,7 +81,9 @@ export class Class extends Type implements Hashable {
|
|
|
81
81
|
hashArray(this.properties),
|
|
82
82
|
hashArray(this.derivedProperties),
|
|
83
83
|
hashArray(
|
|
84
|
-
this.generalizations.map(
|
|
84
|
+
this.generalizations.map(
|
|
85
|
+
(gen) => gen.ownerReference.valueForSerialization ?? '',
|
|
86
|
+
),
|
|
85
87
|
),
|
|
86
88
|
hashArray(this.constraints),
|
|
87
89
|
hashArray(this.stereotypes.map((val) => val.pointerHashCode)),
|
|
@@ -58,7 +58,7 @@ export class ConcreteFunctionDefinition
|
|
|
58
58
|
CORE_HASH_STRUCTURE.FUNCTION,
|
|
59
59
|
this.path,
|
|
60
60
|
hashArray(this.parameters),
|
|
61
|
-
this.returnType.
|
|
61
|
+
this.returnType.valueForSerialization ?? '',
|
|
62
62
|
hashArray(this.taggedValues),
|
|
63
63
|
hashArray(this.stereotypes.map((val) => val.pointerHashCode)),
|
|
64
64
|
hashRawLambda(undefined, this.expressionSequence),
|
|
@@ -65,7 +65,7 @@ export class DerivedProperty
|
|
|
65
65
|
CORE_HASH_STRUCTURE.DERIVED_PROPERTY,
|
|
66
66
|
this.name,
|
|
67
67
|
this.multiplicity,
|
|
68
|
-
this.genericType.ownerReference.
|
|
68
|
+
this.genericType.ownerReference.valueForSerialization ?? '',
|
|
69
69
|
hashArray(this.stereotypes.map((val) => val.pointerHashCode)),
|
|
70
70
|
hashArray(this.taggedValues),
|
|
71
71
|
hashRawLambda(this.parameters, this.body),
|
|
@@ -50,7 +50,7 @@ export class Property implements AbstractProperty, AnnotatedElement, Hashable {
|
|
|
50
50
|
CORE_HASH_STRUCTURE.PROPERTY,
|
|
51
51
|
this.name,
|
|
52
52
|
this.multiplicity,
|
|
53
|
-
this.genericType.ownerReference.
|
|
53
|
+
this.genericType.ownerReference.valueForSerialization ?? '',
|
|
54
54
|
hashArray(this.stereotypes.map((val) => val.pointerHashCode)),
|
|
55
55
|
hashArray(this.taggedValues),
|
|
56
56
|
]);
|
|
@@ -46,7 +46,7 @@ export abstract class PropertyReference extends ReferenceWithOwner {
|
|
|
46
46
|
return [
|
|
47
47
|
CORE_HASH_STRUCTURE.PROPERTY_POINTER,
|
|
48
48
|
this.value.name,
|
|
49
|
-
this.ownerReference.
|
|
49
|
+
this.ownerReference.valueForSerialization ?? '',
|
|
50
50
|
]
|
|
51
51
|
.map(hashString)
|
|
52
52
|
.join(',');
|
|
@@ -42,7 +42,7 @@ export abstract class StereotypeReference extends ReferenceWithOwner {
|
|
|
42
42
|
return [
|
|
43
43
|
CORE_HASH_STRUCTURE.STEREOTYPE_POINTER,
|
|
44
44
|
this.value.value,
|
|
45
|
-
this.ownerReference.
|
|
45
|
+
this.ownerReference.valueForSerialization ?? '',
|
|
46
46
|
]
|
|
47
47
|
.map(hashString)
|
|
48
48
|
.join(',');
|
|
@@ -31,7 +31,7 @@ export class ExternalFormatConnection extends Connection implements Hashable {
|
|
|
31
31
|
get hashCode(): string {
|
|
32
32
|
return hashArray([
|
|
33
33
|
DSL_EXTERNAL_FORMAT_HASH_STRUCTURE.EXTERNAL_FORMAT_CONNECTION,
|
|
34
|
-
this.store.
|
|
34
|
+
this.store.valueForSerialization ?? '',
|
|
35
35
|
this.externalSource,
|
|
36
36
|
]);
|
|
37
37
|
}
|
|
@@ -29,10 +29,14 @@ export class ModelUnit implements Hashable {
|
|
|
29
29
|
return hashArray([
|
|
30
30
|
DSL_EXTERNAL_FORMAT_HASH_STRUCTURE.MODEL_UNIT,
|
|
31
31
|
hashArray(
|
|
32
|
-
this.packageableElementIncludes.map(
|
|
32
|
+
this.packageableElementIncludes.map(
|
|
33
|
+
(element) => element.valueForSerialization ?? '',
|
|
34
|
+
),
|
|
33
35
|
),
|
|
34
36
|
hashArray(
|
|
35
|
-
this.packageableElementExcludes.map(
|
|
37
|
+
this.packageableElementExcludes.map(
|
|
38
|
+
(element) => element.valueForSerialization ?? '',
|
|
39
|
+
),
|
|
36
40
|
),
|
|
37
41
|
]);
|
|
38
42
|
}
|
|
@@ -44,7 +44,7 @@ export class GenerationTreeNode implements Hashable {
|
|
|
44
44
|
get hashCode(): string {
|
|
45
45
|
return hashArray([
|
|
46
46
|
CORE_HASH_STRUCTURE.GENERATION_TREE_NODE,
|
|
47
|
-
this.generationElement.
|
|
47
|
+
this.generationElement.valueForSerialization ?? '',
|
|
48
48
|
this.id,
|
|
49
49
|
]);
|
|
50
50
|
}
|
|
@@ -72,7 +72,7 @@ export class GenerationSpecification
|
|
|
72
72
|
this.fileGenerations.map((fileGeneration) =>
|
|
73
73
|
hashElementPointer(
|
|
74
74
|
PackageableElementPointerType.FILE_GENERATION,
|
|
75
|
-
fileGeneration.
|
|
75
|
+
fileGeneration.valueForSerialization ?? '',
|
|
76
76
|
),
|
|
77
77
|
),
|
|
78
78
|
),
|
|
@@ -52,7 +52,7 @@ export abstract class AssociationImplementation
|
|
|
52
52
|
CORE_HASH_STRUCTURE.ASSOCIATION_IMPLEMENTATION,
|
|
53
53
|
this.association.value.path,
|
|
54
54
|
this.id.valueForSerialization ?? '',
|
|
55
|
-
hashArray(this.stores.map((e) => e.
|
|
55
|
+
hashArray(this.stores.map((e) => e.valueForSerialization ?? '')),
|
|
56
56
|
]);
|
|
57
57
|
}
|
|
58
58
|
}
|
|
@@ -25,12 +25,14 @@ import { CORE_HASH_STRUCTURE } from '../../../../../MetaModelConst.js';
|
|
|
25
25
|
import { Enum } from '../domain/Enum.js';
|
|
26
26
|
import type { EnumValueReference } from '../domain/EnumValueReference.js';
|
|
27
27
|
|
|
28
|
+
export type SourceValueType = Enum | string | number | undefined;
|
|
29
|
+
|
|
28
30
|
export class SourceValue {
|
|
29
31
|
readonly _UUID = uuid();
|
|
30
32
|
|
|
31
|
-
value:
|
|
33
|
+
value: SourceValueType;
|
|
32
34
|
|
|
33
|
-
constructor(value:
|
|
35
|
+
constructor(value: SourceValueType) {
|
|
34
36
|
this.value = value;
|
|
35
37
|
}
|
|
36
38
|
}
|
|
@@ -50,7 +50,7 @@ export class EnumerationMapping implements Hashable {
|
|
|
50
50
|
return hashArray([
|
|
51
51
|
CORE_HASH_STRUCTURE.ENUMERATION_MAPPING,
|
|
52
52
|
this.id.valueForSerialization ?? '',
|
|
53
|
-
this.enumeration.
|
|
53
|
+
this.enumeration.valueForSerialization ?? '',
|
|
54
54
|
// If there are no enum value mapping, source type means nothing since it's not in the protocol anyway
|
|
55
55
|
this.enumValueMappings.filter(
|
|
56
56
|
// TODO: use `isStubbed_EnumValueMapping` when we refactor hashing
|
|
@@ -0,0 +1,61 @@
|
|
|
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 {
|
|
18
|
+
type OptionalPackageableElementReference,
|
|
19
|
+
OptionalPackageableElementExplicitReference,
|
|
20
|
+
} from '../PackageableElementReference.js';
|
|
21
|
+
import type { Mapping } from './Mapping.js';
|
|
22
|
+
import type { EnumerationMapping } from './EnumerationMapping.js';
|
|
23
|
+
import { OptionalReferenceWithOwner } from '../../Reference.js';
|
|
24
|
+
|
|
25
|
+
export abstract class OptionalEnumerationMappingReference extends OptionalReferenceWithOwner {
|
|
26
|
+
override readonly ownerReference: OptionalPackageableElementReference<Mapping>;
|
|
27
|
+
value?: EnumerationMapping | undefined;
|
|
28
|
+
|
|
29
|
+
protected constructor(
|
|
30
|
+
ownerReference: OptionalPackageableElementReference<Mapping>,
|
|
31
|
+
value: EnumerationMapping | undefined,
|
|
32
|
+
) {
|
|
33
|
+
super(ownerReference);
|
|
34
|
+
this.ownerReference = ownerReference;
|
|
35
|
+
this.value = value;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
abstract get valueForSerialization(): string | undefined;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export class OptionalEnumerationMappingExplicitReference extends OptionalEnumerationMappingReference {
|
|
42
|
+
override readonly ownerReference: OptionalPackageableElementReference<Mapping>;
|
|
43
|
+
|
|
44
|
+
private constructor(value: EnumerationMapping | undefined) {
|
|
45
|
+
const ownerReference = OptionalPackageableElementExplicitReference.create(
|
|
46
|
+
value?._PARENT,
|
|
47
|
+
);
|
|
48
|
+
super(ownerReference, value);
|
|
49
|
+
this.ownerReference = ownerReference;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
static create(
|
|
53
|
+
value: EnumerationMapping | undefined,
|
|
54
|
+
): OptionalEnumerationMappingExplicitReference {
|
|
55
|
+
return new OptionalEnumerationMappingExplicitReference(value);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
get valueForSerialization(): string | undefined {
|
|
59
|
+
return this.value?.id.value;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
@@ -28,7 +28,7 @@ export class LocalMappingPropertyInfo implements Hashable {
|
|
|
28
28
|
get hashCode(): string {
|
|
29
29
|
return hashArray([
|
|
30
30
|
CORE_HASH_STRUCTURE.LOCAL_MAPPING_PROPERTY,
|
|
31
|
-
this.localMappingPropertyType.
|
|
31
|
+
this.localMappingPropertyType.valueForSerialization ?? '',
|
|
32
32
|
this.localMappingPropertyMultiplicity,
|
|
33
33
|
]);
|
|
34
34
|
}
|
|
@@ -34,11 +34,11 @@ export class MappingInclude {
|
|
|
34
34
|
get hashCode(): string {
|
|
35
35
|
return hashArray([
|
|
36
36
|
CORE_HASH_STRUCTURE.MAPPING_INCLUDE,
|
|
37
|
-
this.included.
|
|
38
|
-
getNullableFirstElement(this.storeSubstitutions)?.original
|
|
39
|
-
'',
|
|
40
|
-
getNullableFirstElement(this.storeSubstitutions)?.substitute
|
|
41
|
-
'',
|
|
37
|
+
this.included.valueForSerialization ?? '',
|
|
38
|
+
getNullableFirstElement(this.storeSubstitutions)?.original
|
|
39
|
+
.valueForSerialization ?? '',
|
|
40
|
+
getNullableFirstElement(this.storeSubstitutions)?.substitute
|
|
41
|
+
.valueForSerialization ?? '',
|
|
42
42
|
]);
|
|
43
43
|
}
|
|
44
44
|
}
|
|
@@ -30,8 +30,8 @@ import type { AggregationAwarePropertyMapping } from './aggregationAware/Aggrega
|
|
|
30
30
|
import type { XStorePropertyMapping } from './xStore/XStorePropertyMapping.js';
|
|
31
31
|
import type { LocalMappingPropertyInfo } from './LocalMappingPropertyInfo.js';
|
|
32
32
|
|
|
33
|
-
/* @MARKER: NEW CLASS MAPPING TYPE SUPPORT --- consider adding class mapping type handler here whenever support for a new one is added to the app */
|
|
34
33
|
export interface PropertyMappingVisitor<T> {
|
|
34
|
+
visit_PropertyMapping(propertyMapping: PropertyMapping): T;
|
|
35
35
|
visit_PurePropertyMapping(propertyMapping: PurePropertyMapping): T;
|
|
36
36
|
visit_FlatDataPropertyMapping(propertyMapping: FlatDataPropertyMapping): T;
|
|
37
37
|
visit_EmbeddedFlatDataPropertyMapping(
|
|
@@ -92,7 +92,7 @@ export abstract class SetImplementation
|
|
|
92
92
|
return hashArray([
|
|
93
93
|
CORE_HASH_STRUCTURE.SET_IMPLEMENTATION,
|
|
94
94
|
this.id.valueForSerialization ?? '',
|
|
95
|
-
this.class.
|
|
95
|
+
this.class.valueForSerialization ?? '',
|
|
96
96
|
this.root.valueForSerialization.toString(),
|
|
97
97
|
this.superSetImplementationId ?? '',
|
|
98
98
|
]);
|
|
@@ -59,7 +59,7 @@ export class StoreConnections implements Hashable {
|
|
|
59
59
|
CORE_HASH_STRUCTURE.STORE_CONNECTIONS,
|
|
60
60
|
hashElementPointer(
|
|
61
61
|
PackageableElementPointerType.STORE,
|
|
62
|
-
this.store.
|
|
62
|
+
this.store.valueForSerialization ?? '',
|
|
63
63
|
),
|
|
64
64
|
hashArray(this.storeConnections),
|
|
65
65
|
]);
|
|
@@ -81,7 +81,7 @@ export class EngineRuntime extends Runtime implements Hashable {
|
|
|
81
81
|
this.mappings.map((mapping) =>
|
|
82
82
|
hashElementPointer(
|
|
83
83
|
PackageableElementPointerType.MAPPING,
|
|
84
|
-
mapping.
|
|
84
|
+
mapping.valueForSerialization ?? '',
|
|
85
85
|
),
|
|
86
86
|
),
|
|
87
87
|
),
|
|
@@ -108,7 +108,7 @@ export class RuntimePointer extends Runtime implements Hashable {
|
|
|
108
108
|
get hashCode(): string {
|
|
109
109
|
return hashArray([
|
|
110
110
|
CORE_HASH_STRUCTURE.RUNTIME_POINTER,
|
|
111
|
-
this.packageableRuntime.
|
|
111
|
+
this.packageableRuntime.valueForSerialization ?? '',
|
|
112
112
|
]);
|
|
113
113
|
}
|
|
114
114
|
}
|
|
@@ -36,7 +36,7 @@ export abstract class Section implements Hashable {
|
|
|
36
36
|
return hashArray([
|
|
37
37
|
CORE_HASH_STRUCTURE.SECTION,
|
|
38
38
|
this.parserName,
|
|
39
|
-
hashArray(this.elements.map((e) => e.
|
|
39
|
+
hashArray(this.elements.map((e) => e.valueForSerialization ?? '')),
|
|
40
40
|
]);
|
|
41
41
|
}
|
|
42
42
|
}
|
|
@@ -48,7 +48,7 @@ export class ImportAwareCodeSection extends Section {
|
|
|
48
48
|
return hashArray([
|
|
49
49
|
CORE_HASH_STRUCTURE.IMPORT_AWARE_CODE_SECTION,
|
|
50
50
|
super.hashCode,
|
|
51
|
-
hashArray(this.imports.map((e) => e.
|
|
51
|
+
hashArray(this.imports.map((e) => e.valueForSerialization ?? '')),
|
|
52
52
|
]);
|
|
53
53
|
}
|
|
54
54
|
}
|
|
@@ -66,7 +66,7 @@ export class PureSingleExecution extends PureExecution implements Hashable {
|
|
|
66
66
|
return hashArray([
|
|
67
67
|
CORE_HASH_STRUCTURE.SERVICE_PURE_SINGLE_EXECUTION,
|
|
68
68
|
super.hashCode,
|
|
69
|
-
this.mapping.
|
|
69
|
+
this.mapping.valueForSerialization ?? '',
|
|
70
70
|
this.runtime,
|
|
71
71
|
]);
|
|
72
72
|
}
|
|
@@ -93,7 +93,7 @@ export class KeyedExecutionParameter implements Hashable {
|
|
|
93
93
|
return hashArray([
|
|
94
94
|
CORE_HASH_STRUCTURE.SERVICE_KEYED_EXECUTION_PARAMETER,
|
|
95
95
|
this.key,
|
|
96
|
-
this.mapping.
|
|
96
|
+
this.mapping.valueForSerialization ?? '',
|
|
97
97
|
this.runtime,
|
|
98
98
|
]);
|
|
99
99
|
}
|
|
@@ -43,7 +43,7 @@ export class FlatDataConnection extends Connection implements Hashable {
|
|
|
43
43
|
get hashCode(): string {
|
|
44
44
|
return hashArray([
|
|
45
45
|
CORE_HASH_STRUCTURE.FLAT_DATA_CONNECTION,
|
|
46
|
-
this.store.
|
|
46
|
+
this.store.valueForSerialization ?? '',
|
|
47
47
|
this.url,
|
|
48
48
|
]);
|
|
49
49
|
}
|
|
@@ -88,6 +88,7 @@ export class EmbeddedFlatDataPropertyMapping
|
|
|
88
88
|
this.propertyMappings.filter(
|
|
89
89
|
// TODO: we should also handle of other property mapping types
|
|
90
90
|
// using some form of extension mechanism
|
|
91
|
+
// This is a rather optimistic check as we make assumption on the type of property mapping included here
|
|
91
92
|
(propertyMapping) => {
|
|
92
93
|
if (propertyMapping instanceof FlatDataPropertyMapping) {
|
|
93
94
|
// TODO: use `isStubbed_RawLambda` when we move this out of the metamodel
|
package/src/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataInputData.ts
CHANGED
|
@@ -42,7 +42,7 @@ export class FlatDataInputData extends InputData implements Hashable {
|
|
|
42
42
|
CORE_HASH_STRUCTURE.FLAT_DATA_INPUT_DATA,
|
|
43
43
|
hashElementPointer(
|
|
44
44
|
PackageableElementPointerType.STORE,
|
|
45
|
-
this.sourceFlatData.
|
|
45
|
+
this.sourceFlatData.valueForSerialization ?? '',
|
|
46
46
|
),
|
|
47
47
|
this.data,
|
|
48
48
|
]);
|
|
@@ -56,13 +56,14 @@ export class FlatDataInstanceSetImplementation
|
|
|
56
56
|
return hashArray([
|
|
57
57
|
CORE_HASH_STRUCTURE.FLAT_DATA_INSTANCE_SET_IMPLEMENTATION,
|
|
58
58
|
super.hashCode,
|
|
59
|
-
this.sourceRootRecordType.ownerReference.
|
|
59
|
+
this.sourceRootRecordType.ownerReference.valueForSerialization ?? '',
|
|
60
60
|
this.sourceRootRecordType.value._OWNER.name,
|
|
61
61
|
this.filter ?? '',
|
|
62
62
|
hashArray(
|
|
63
63
|
this.propertyMappings.filter(
|
|
64
64
|
// TODO: we should also handle of other property mapping types
|
|
65
65
|
// using some form of extension mechanism
|
|
66
|
+
// This is a rather optimistic check as we make assumption on the type of property mapping included here
|
|
66
67
|
(propertyMapping) => {
|
|
67
68
|
if (propertyMapping instanceof FlatDataPropertyMapping) {
|
|
68
69
|
// TODO: use `isStubbed_RawLambda` when we move this out of the metamodel
|