@finos/legend-graph 29.0.5 → 30.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/graph/BasicModel.d.ts.map +1 -1
- package/lib/graph/BasicModel.js +11 -0
- package/lib/graph/BasicModel.js.map +1 -1
- package/lib/graph/Core_HashUtils.d.ts +3 -0
- package/lib/graph/Core_HashUtils.d.ts.map +1 -1
- package/lib/graph/Core_HashUtils.js +3 -0
- package/lib/graph/Core_HashUtils.js.map +1 -1
- package/lib/graph/__test-utils__/GraphTestUtils.d.ts.map +1 -1
- package/lib/graph/__test-utils__/GraphTestUtils.js +5 -0
- package/lib/graph/__test-utils__/GraphTestUtils.js.map +1 -1
- package/lib/graph/helpers/STO_Relational_Helper.d.ts +3 -1
- package/lib/graph/helpers/STO_Relational_Helper.d.ts.map +1 -1
- package/lib/graph/helpers/STO_Relational_Helper.js +3 -1
- package/lib/graph/helpers/STO_Relational_Helper.js.map +1 -1
- package/lib/graph/metamodel/pure/executionPlan/ExecutionPlan.d.ts +6 -0
- package/lib/graph/metamodel/pure/executionPlan/ExecutionPlan.d.ts.map +1 -1
- package/lib/graph/metamodel/pure/executionPlan/ExecutionPlan.js +6 -0
- package/lib/graph/metamodel/pure/executionPlan/ExecutionPlan.js.map +1 -1
- package/lib/graph/metamodel/pure/executionPlan/nodes/ExecutionNode.d.ts +6 -0
- package/lib/graph/metamodel/pure/executionPlan/nodes/ExecutionNode.d.ts.map +1 -1
- package/lib/graph/metamodel/pure/executionPlan/nodes/ExecutionNode.js +6 -0
- package/lib/graph/metamodel/pure/executionPlan/nodes/ExecutionNode.js.map +1 -1
- package/lib/graph/metamodel/pure/packageableElements/PackageableElement.d.ts +2 -0
- package/lib/graph/metamodel/pure/packageableElements/PackageableElement.d.ts.map +1 -1
- package/lib/graph/metamodel/pure/packageableElements/PackageableElement.js.map +1 -1
- package/lib/graph/metamodel/pure/packageableElements/mapping/INTERNAL__UnresolvedSetImplementation.d.ts +43 -0
- package/lib/graph/metamodel/pure/packageableElements/mapping/INTERNAL__UnresolvedSetImplementation.d.ts.map +1 -0
- package/lib/graph/metamodel/pure/packageableElements/mapping/{TEMPORARY__UnresolvedSetImplementation.js → INTERNAL__UnresolvedSetImplementation.js} +17 -7
- package/lib/graph/metamodel/pure/packageableElements/mapping/INTERNAL__UnresolvedSetImplementation.js.map +1 -0
- package/lib/graph/metamodel/pure/packageableElements/mapping/SetImplementation.d.ts +2 -2
- package/lib/graph/metamodel/pure/packageableElements/mapping/SetImplementation.d.ts.map +1 -1
- package/lib/graph/metamodel/pure/packageableElements/service/ServiceTestSuite.d.ts +1 -1
- package/lib/graph/metamodel/pure/packageableElements/service/ServiceTestSuite.d.ts.map +1 -1
- package/lib/graph/metamodel/pure/packageableElements/service/ServiceTestSuite.js +1 -1
- package/lib/graph/metamodel/pure/packageableElements/service/ServiceTestSuite.js.map +1 -1
- package/lib/graph/metamodel/pure/packageableElements/store/{INTERNAL__PseudoStore.d.ts → INTERNAL__UnknownStore.d.ts} +5 -5
- package/lib/graph/metamodel/pure/packageableElements/store/INTERNAL__UnknownStore.d.ts.map +1 -0
- package/lib/graph/metamodel/pure/packageableElements/store/{INTERNAL__PseudoStore.js → INTERNAL__UnknownStore.js} +12 -9
- package/lib/graph/metamodel/pure/packageableElements/store/INTERNAL__UnknownStore.js.map +1 -0
- package/lib/graph/metamodel/pure/valueSpecification/GraphFetchTree.d.ts +6 -0
- package/lib/graph/metamodel/pure/valueSpecification/GraphFetchTree.d.ts.map +1 -1
- package/lib/graph/metamodel/pure/valueSpecification/GraphFetchTree.js +16 -0
- package/lib/graph/metamodel/pure/valueSpecification/GraphFetchTree.js.map +1 -1
- package/lib/graph-manager/AbstractPureGraphManager.d.ts +12 -9
- package/lib/graph-manager/AbstractPureGraphManager.d.ts.map +1 -1
- package/lib/graph-manager/AbstractPureGraphManager.js.map +1 -1
- package/lib/graph-manager/__test-utils__/GraphManagerTestUtils.d.ts.map +1 -1
- package/lib/graph-manager/__test-utils__/GraphManagerTestUtils.js +10 -0
- package/lib/graph-manager/__test-utils__/GraphManagerTestUtils.js.map +1 -1
- package/lib/graph-manager/action/changeDetection/DSL_Mapping_ObserverHelper.d.ts +2 -0
- package/lib/graph-manager/action/changeDetection/DSL_Mapping_ObserverHelper.d.ts.map +1 -1
- package/lib/graph-manager/action/changeDetection/DSL_Mapping_ObserverHelper.js +9 -1
- package/lib/graph-manager/action/changeDetection/DSL_Mapping_ObserverHelper.js.map +1 -1
- package/lib/graph-manager/action/changeDetection/DSL_Service_ObserverHelper.d.ts.map +1 -1
- package/lib/graph-manager/action/changeDetection/DSL_Service_ObserverHelper.js +3 -1
- package/lib/graph-manager/action/changeDetection/DSL_Service_ObserverHelper.js.map +1 -1
- package/lib/graph-manager/action/changeDetection/PackageableElementObserver.d.ts.map +1 -1
- package/lib/graph-manager/action/changeDetection/PackageableElementObserver.js +4 -1
- package/lib/graph-manager/action/changeDetection/PackageableElementObserver.js.map +1 -1
- package/lib/graph-manager/action/generation/DatabaseBuilderInput.d.ts +1 -1
- package/lib/graph-manager/action/generation/DatabaseBuilderInput.d.ts.map +1 -1
- package/lib/graph-manager/action/generation/DatabaseBuilderInput.js +3 -2
- package/lib/graph-manager/action/generation/DatabaseBuilderInput.js.map +1 -1
- package/lib/graph-manager/action/protocol/{ClassifierPathMapping.d.ts → ProtocolInfo.d.ts} +5 -1
- package/lib/graph-manager/action/protocol/ProtocolInfo.d.ts.map +1 -0
- package/lib/graph-manager/action/protocol/{ClassifierPathMapping.js → ProtocolInfo.js} +1 -1
- package/lib/graph-manager/action/protocol/ProtocolInfo.js.map +1 -0
- package/lib/graph-manager/protocol/pure/PureProtocolProcessorPlugin.d.ts +0 -10
- package/lib/graph-manager/protocol/pure/PureProtocolProcessorPlugin.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/PureProtocolProcessorPlugin.js.map +1 -1
- package/lib/graph-manager/protocol/pure/extensions/DSL_ExternalFormat_PureProtocolProcessorPlugin.d.ts +1 -2
- package/lib/graph-manager/protocol/pure/extensions/DSL_ExternalFormat_PureProtocolProcessorPlugin.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/extensions/DSL_ExternalFormat_PureProtocolProcessorPlugin.js +0 -5
- package/lib/graph-manager/protocol/pure/extensions/DSL_ExternalFormat_PureProtocolProcessorPlugin.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.d.ts +6 -4
- package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.js +76 -89
- package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/engine/V1_Engine.d.ts +6 -3
- package/lib/graph-manager/protocol/pure/v1/engine/V1_Engine.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/engine/V1_Engine.js +25 -3
- package/lib/graph-manager/protocol/pure/v1/engine/V1_Engine.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/engine/V1_EngineServerClient.d.ts +6 -2
- package/lib/graph-manager/protocol/pure/v1/engine/V1_EngineServerClient.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/engine/V1_EngineServerClient.js +5 -1
- package/lib/graph-manager/protocol/pure/v1/engine/V1_EngineServerClient.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/engine/execution/V1_RawSQLExecuteInput.d.ts +24 -0
- package/lib/graph-manager/protocol/pure/v1/engine/execution/V1_RawSQLExecuteInput.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/engine/execution/V1_RawSQLExecuteInput.js +28 -0
- package/lib/graph-manager/protocol/pure/v1/engine/execution/V1_RawSQLExecuteInput.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/engine/generation/V1_DatabaseBuilderInput.d.ts +2 -2
- package/lib/graph-manager/protocol/pure/v1/engine/generation/V1_DatabaseBuilderInput.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/engine/generation/V1_DatabaseBuilderInput.js +8 -9
- package/lib/graph-manager/protocol/pure/v1/engine/generation/V1_DatabaseBuilderInput.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/context/V1_PureModelContextData.d.ts +2 -2
- package/lib/graph-manager/protocol/pure/v1/model/context/V1_PureModelContextData.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/context/V1_PureModelContextData.js +2 -2
- package/lib/graph-manager/protocol/pure/v1/model/context/V1_PureModelContextData.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/executionPlan/V1_SimpleExecutionPlan.d.ts +6 -0
- package/lib/graph-manager/protocol/pure/v1/model/executionPlan/V1_SimpleExecutionPlan.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/executionPlan/V1_SimpleExecutionPlan.js +6 -0
- package/lib/graph-manager/protocol/pure/v1/model/executionPlan/V1_SimpleExecutionPlan.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/executionPlan/nodes/V1_ExecutionNode.d.ts +6 -0
- package/lib/graph-manager/protocol/pure/v1/model/executionPlan/nodes/V1_ExecutionNode.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/executionPlan/nodes/V1_ExecutionNode.js +6 -0
- package/lib/graph-manager/protocol/pure/v1/model/executionPlan/nodes/V1_ExecutionNode.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/V1_PackageableElement.d.ts +2 -0
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/V1_PackageableElement.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/V1_PackageableElement.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/service/V1_ServiceTestSuite.d.ts +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/service/V1_ServiceTestSuite.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/service/V1_ServiceTestSuite.js +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/service/V1_ServiceTestSuite.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/store/V1_INTERNAL__UnknownStore.d.ts +24 -0
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/store/V1_INTERNAL__UnknownStore.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/store/V1_INTERNAL__UnknownStore.js +32 -0
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/store/V1_INTERNAL__UnknownStore.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/model/valueSpecification/raw/classInstance/graph/V1_GraphFetchTree.d.ts +3 -0
- package/lib/graph-manager/protocol/pure/v1/model/valueSpecification/raw/classInstance/graph/V1_GraphFetchTree.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/valueSpecification/raw/classInstance/graph/V1_GraphFetchTree.js +1 -0
- package/lib/graph-manager/protocol/pure/v1/model/valueSpecification/raw/classInstance/graph/V1_GraphFetchTree.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/valueSpecification/raw/classInstance/graph/V1_SubTypeGraphFetchTree.d.ts +21 -0
- package/lib/graph-manager/protocol/pure/v1/model/valueSpecification/raw/classInstance/graph/V1_SubTypeGraphFetchTree.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/model/valueSpecification/raw/classInstance/graph/V1_SubTypeGraphFetchTree.js +23 -0
- package/lib/graph-manager/protocol/pure/v1/model/valueSpecification/raw/classInstance/graph/V1_SubTypeGraphFetchTree.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_ConnectionTransformer.js +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_ConnectionTransformer.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.d.ts +2 -2
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.js +7 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_ServiceTransformer.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_ServiceTransformer.js +3 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_ServiceTransformer.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.js +9 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/executionPlan/V1_ExecutionPlanTransformer.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/executionPlan/V1_ExecutionPlanTransformer.js +2 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/executionPlan/V1_ExecutionPlanTransformer.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFifthPassBuilder.d.ts +2 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFifthPassBuilder.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFifthPassBuilder.js +3 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFifthPassBuilder.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFirstPassBuilder.d.ts +2 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFirstPassBuilder.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFirstPassBuilder.js +12 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFirstPassBuilder.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFourthPassBuilder.d.ts +2 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFourthPassBuilder.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFourthPassBuilder.js +3 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFourthPassBuilder.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementSecondPassBuilder.d.ts +2 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementSecondPassBuilder.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementSecondPassBuilder.js +3 -15
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementSecondPassBuilder.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementThirdPassBuilder.d.ts +2 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementThirdPassBuilder.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementThirdPassBuilder.js +3 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementThirdPassBuilder.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.js +3 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_PropertyMappingBuilder.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_PropertyMappingBuilder.js +46 -23
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_PropertyMappingBuilder.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ConnectionBuilderHelper.d.ts +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ConnectionBuilderHelper.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ConnectionBuilderHelper.js +12 -3
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ConnectionBuilderHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.d.ts +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js +11 -10
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.js +3 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.js +16 -3
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.d.ts +2 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.js +21 -3
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.d.ts +3 -2
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.js +5 -5
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.js +4 -2
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_MappingSerializationHelper.js +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_MappingSerializationHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ServiceSerializationHelper.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ServiceSerializationHelper.js +2 -2
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ServiceSerializationHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ValueSpecificationSerializer.d.ts +1 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ValueSpecificationSerializer.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ValueSpecificationSerializer.js +13 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ValueSpecificationSerializer.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/executionPlan/V1_ExecutionPlanSerializationHelper.d.ts +3 -3
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/executionPlan/V1_ExecutionPlanSerializationHelper.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/executionPlan/V1_ExecutionPlanSerializationHelper.js +5 -4
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/executionPlan/V1_ExecutionPlanSerializationHelper.js.map +1 -1
- package/lib/index.d.ts +4 -4
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +4 -4
- package/lib/index.js.map +1 -1
- package/lib/package.json +1 -1
- package/package.json +4 -4
- package/src/graph/BasicModel.ts +10 -0
- package/src/graph/Core_HashUtils.ts +3 -0
- package/src/graph/__test-utils__/GraphTestUtils.ts +5 -0
- package/src/graph/helpers/STO_Relational_Helper.ts +13 -0
- package/src/graph/metamodel/pure/executionPlan/ExecutionPlan.ts +6 -5
- package/src/graph/metamodel/pure/executionPlan/nodes/ExecutionNode.ts +6 -1
- package/src/graph/metamodel/pure/packageableElements/PackageableElement.ts +2 -0
- package/src/graph/metamodel/pure/packageableElements/mapping/{TEMPORARY__UnresolvedSetImplementation.ts → INTERNAL__UnresolvedSetImplementation.ts} +16 -6
- package/src/graph/metamodel/pure/packageableElements/mapping/SetImplementation.ts +4 -4
- package/src/graph/metamodel/pure/packageableElements/service/ServiceTestSuite.ts +2 -2
- package/src/graph/metamodel/pure/packageableElements/store/{INTERNAL__PseudoStore.ts → INTERNAL__UnknownStore.ts} +18 -7
- package/src/graph/metamodel/pure/valueSpecification/GraphFetchTree.ts +19 -1
- package/src/graph-manager/AbstractPureGraphManager.ts +23 -12
- package/src/graph-manager/__test-utils__/GraphManagerTestUtils.ts +10 -0
- package/src/graph-manager/action/changeDetection/DSL_Mapping_ObserverHelper.ts +17 -3
- package/src/graph-manager/action/changeDetection/DSL_Service_ObserverHelper.ts +3 -1
- package/src/graph-manager/action/changeDetection/PackageableElementObserver.ts +6 -0
- package/src/graph-manager/action/generation/DatabaseBuilderInput.ts +8 -3
- package/src/graph-manager/action/protocol/{ClassifierPathMapping.ts → ProtocolInfo.ts} +5 -0
- package/src/graph-manager/protocol/pure/PureProtocolProcessorPlugin.ts +0 -23
- package/src/graph-manager/protocol/pure/extensions/DSL_ExternalFormat_PureProtocolProcessorPlugin.ts +0 -15
- package/src/graph-manager/protocol/pure/v1/V1_PureGraphManager.ts +121 -124
- package/src/graph-manager/protocol/pure/v1/engine/V1_Engine.ts +41 -3
- package/src/graph-manager/protocol/pure/v1/engine/V1_EngineServerClient.ts +26 -3
- package/src/graph-manager/protocol/pure/v1/engine/execution/V1_RawSQLExecuteInput.ts +52 -0
- package/src/graph-manager/protocol/pure/v1/engine/generation/V1_DatabaseBuilderInput.ts +15 -4
- package/src/graph-manager/protocol/pure/v1/model/context/V1_PureModelContextData.ts +2 -2
- package/src/graph-manager/protocol/pure/v1/model/executionPlan/V1_SimpleExecutionPlan.ts +6 -1
- package/src/graph-manager/protocol/pure/v1/model/executionPlan/nodes/V1_ExecutionNode.ts +6 -1
- package/src/graph-manager/protocol/pure/v1/model/packageableElements/V1_PackageableElement.ts +2 -0
- package/src/graph-manager/protocol/pure/v1/model/packageableElements/service/V1_ServiceTestSuite.ts +2 -2
- package/src/graph-manager/protocol/pure/v1/model/packageableElements/store/V1_INTERNAL__UnknownStore.ts +45 -0
- package/src/graph-manager/protocol/pure/v1/model/valueSpecification/raw/classInstance/graph/V1_GraphFetchTree.ts +3 -0
- package/src/graph-manager/protocol/pure/v1/model/valueSpecification/raw/classInstance/graph/V1_SubTypeGraphFetchTree.ts +28 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_ConnectionTransformer.ts +1 -1
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.ts +3 -3
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.ts +11 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_ServiceTransformer.ts +3 -1
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.ts +27 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/from/executionPlan/V1_ExecutionPlanTransformer.ts +2 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFifthPassBuilder.ts +5 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFirstPassBuilder.ts +29 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFourthPassBuilder.ts +5 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementSecondPassBuilder.ts +5 -15
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementThirdPassBuilder.ts +5 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.ts +3 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_PropertyMappingBuilder.ts +84 -40
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ConnectionBuilderHelper.ts +16 -6
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.ts +12 -13
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.ts +3 -1
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.ts +44 -2
- package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.ts +29 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.ts +6 -2
- package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.ts +11 -2
- package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_MappingSerializationHelper.ts +1 -1
- package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ServiceSerializationHelper.ts +2 -1
- package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ValueSpecificationSerializer.ts +28 -1
- package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/executionPlan/V1_ExecutionPlanSerializationHelper.ts +10 -7
- package/src/index.ts +2 -4
- package/tsconfig.json +6 -3
- package/lib/graph/metamodel/pure/packageableElements/mapping/TEMPORARY__UnresolvedSetImplementation.d.ts +0 -33
- package/lib/graph/metamodel/pure/packageableElements/mapping/TEMPORARY__UnresolvedSetImplementation.d.ts.map +0 -1
- package/lib/graph/metamodel/pure/packageableElements/mapping/TEMPORARY__UnresolvedSetImplementation.js.map +0 -1
- package/lib/graph/metamodel/pure/packageableElements/store/INTERNAL__PseudoStore.d.ts.map +0 -1
- package/lib/graph/metamodel/pure/packageableElements/store/INTERNAL__PseudoStore.js.map +0 -1
- package/lib/graph-manager/action/protocol/ClassifierPathMapping.d.ts.map +0 -1
- package/lib/graph-manager/action/protocol/ClassifierPathMapping.js.map +0 -1
package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_PropertyMappingBuilder.ts
CHANGED
|
@@ -82,6 +82,7 @@ import { V1_transformRelationalOperationElement } from '../from/V1_DatabaseTrans
|
|
|
82
82
|
import { V1_GraphTransformerContextBuilder } from '../from/V1_GraphTransformerContext.js';
|
|
83
83
|
import {
|
|
84
84
|
getAllEnumerationMappings,
|
|
85
|
+
getAllIncludedMappings,
|
|
85
86
|
getClassMappingById,
|
|
86
87
|
getClassMappingsByClass,
|
|
87
88
|
} from '../../../../../../../graph/helpers/DSL_Mapping_Helper.js';
|
|
@@ -90,7 +91,7 @@ import type { AbstractProperty } from '../../../../../../../graph/metamodel/pure
|
|
|
90
91
|
import { BindingTransformer } from '../../../../../../../graph/metamodel/pure/packageableElements/externalFormat/store/DSL_ExternalFormat_BindingTransformer.js';
|
|
91
92
|
import type { Mapping } from '../../../../../../../graph/metamodel/pure/packageableElements/mapping/Mapping.js';
|
|
92
93
|
import { V1_resolveBinding } from './V1_DSL_ExternalFormat_GraphBuilderHelper.js';
|
|
93
|
-
import {
|
|
94
|
+
import { INTERNAL__UnresolvedSetImplementation } from '../../../../../../../graph/metamodel/pure/packageableElements/mapping/INTERNAL__UnresolvedSetImplementation.js';
|
|
94
95
|
import {
|
|
95
96
|
getAssociatedPropertyClass,
|
|
96
97
|
getOwnProperty,
|
|
@@ -103,8 +104,9 @@ import type { V1_FlatDataAssociationPropertyMapping } from '../../../model/packa
|
|
|
103
104
|
import { FlatDataAssociationPropertyMapping } from '../../../../../../../graph/metamodel/pure/packageableElements/store/flatData/mapping/FlatDataAssociationPropertyMapping.js';
|
|
104
105
|
import type { V1_INTERNAL__UnknownPropertyMapping } from '../../../model/packageableElements/mapping/V1_INTERNAL__UnknownPropertyMapping.js';
|
|
105
106
|
import { INTERNAL__UnknownPropertyMapping } from '../../../../../../../graph/metamodel/pure/packageableElements/mapping/INTERNAL__UnknownPropertyMapping.js';
|
|
107
|
+
import { INTERNAL__PseudoMapping } from '../../../../../../../graph/metamodel/pure/packageableElements/mapping/INTERNAL__PseudoMapping.js';
|
|
106
108
|
|
|
107
|
-
const
|
|
109
|
+
const TEMPORARY__resolveSetImplementationByID = (
|
|
108
110
|
mapping: Mapping,
|
|
109
111
|
id: string,
|
|
110
112
|
context: V1_GraphBuilderContext,
|
|
@@ -112,27 +114,34 @@ const TEMPORARY__getClassMappingByIdOrReturnUnresolved = (
|
|
|
112
114
|
const classMapping = returnUndefOnError(() =>
|
|
113
115
|
getClassMappingById(mapping, id),
|
|
114
116
|
);
|
|
117
|
+
const isMappingWithUnknownMappingIncludes = getAllIncludedMappings(
|
|
118
|
+
mapping,
|
|
119
|
+
).includes(INTERNAL__PseudoMapping.INSTANCE);
|
|
115
120
|
|
|
116
121
|
if (!classMapping) {
|
|
117
122
|
const message = `Can't find class mapping with ID '${id}' in mapping '${mapping.path}'`;
|
|
118
123
|
/**
|
|
119
|
-
*
|
|
124
|
+
* If the mapping has unknown mapping includes, this kind of problems
|
|
125
|
+
* might be due to the fact that the class mapping is not reachable due to the system
|
|
126
|
+
* not knowing how to analyze the unknown mapping include, as such, we will not throw
|
|
127
|
+
* errors, otherwise, we should in strict-mode
|
|
128
|
+
*
|
|
120
129
|
* See https://github.com/finos/legend-studio/issues/880
|
|
121
130
|
* See https://github.com/finos/legend-studio/issues/941
|
|
122
131
|
*
|
|
123
132
|
* @discrepancy graph-building
|
|
124
133
|
*/
|
|
125
|
-
if (context.options?.strict) {
|
|
134
|
+
if (context.options?.strict && !isMappingWithUnknownMappingIncludes) {
|
|
126
135
|
throw new GraphBuilderError(message);
|
|
127
136
|
}
|
|
128
137
|
context.logService.warn(LogEvent.create(message));
|
|
129
|
-
return new
|
|
138
|
+
return new INTERNAL__UnresolvedSetImplementation(id, mapping);
|
|
130
139
|
}
|
|
131
140
|
|
|
132
141
|
return classMapping;
|
|
133
142
|
};
|
|
134
143
|
|
|
135
|
-
const
|
|
144
|
+
const resolvePropertyMappingSourceImplementation = (
|
|
136
145
|
immediateParent: PropertyMappingsImplementation,
|
|
137
146
|
value: V1_PropertyMapping,
|
|
138
147
|
topParent: InstanceSetImplementation | undefined,
|
|
@@ -140,7 +149,7 @@ const resolvePropertyMappingSource = (
|
|
|
140
149
|
): SetImplementation | undefined => {
|
|
141
150
|
if (immediateParent instanceof AssociationImplementation) {
|
|
142
151
|
if (value.source) {
|
|
143
|
-
return
|
|
152
|
+
return TEMPORARY__resolveSetImplementationByID(
|
|
144
153
|
immediateParent._PARENT,
|
|
145
154
|
value.source,
|
|
146
155
|
context,
|
|
@@ -278,12 +287,11 @@ export class V1_PropertyMappingBuilder
|
|
|
278
287
|
const topParent = guaranteeNonNullable(this.topParent);
|
|
279
288
|
if (propertyType instanceof Class) {
|
|
280
289
|
if (protocol.target) {
|
|
281
|
-
targetSetImplementation =
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
);
|
|
290
|
+
targetSetImplementation = TEMPORARY__resolveSetImplementationByID(
|
|
291
|
+
topParent._PARENT,
|
|
292
|
+
protocol.target,
|
|
293
|
+
this.context,
|
|
294
|
+
);
|
|
287
295
|
} else {
|
|
288
296
|
// NOTE: if no there is one non-root class mapping, auto-nominate that as the target set implementation
|
|
289
297
|
targetSetImplementation = getClassMappingsByClass(
|
|
@@ -293,7 +301,7 @@ export class V1_PropertyMappingBuilder
|
|
|
293
301
|
}
|
|
294
302
|
}
|
|
295
303
|
const sourceSetImplementation = protocol.source
|
|
296
|
-
?
|
|
304
|
+
? TEMPORARY__resolveSetImplementationByID(
|
|
297
305
|
topParent._PARENT,
|
|
298
306
|
protocol.source,
|
|
299
307
|
this.context,
|
|
@@ -385,7 +393,7 @@ export class V1_PropertyMappingBuilder
|
|
|
385
393
|
const propertyType = property.genericType.value.rawType;
|
|
386
394
|
if (propertyType instanceof Class && protocol.target) {
|
|
387
395
|
targetSetImplementation = this.topParent
|
|
388
|
-
?
|
|
396
|
+
? TEMPORARY__resolveSetImplementationByID(
|
|
389
397
|
this.topParent._PARENT,
|
|
390
398
|
protocol.target,
|
|
391
399
|
this.context,
|
|
@@ -615,7 +623,7 @@ export class V1_PropertyMappingBuilder
|
|
|
615
623
|
}
|
|
616
624
|
if (protocol.target) {
|
|
617
625
|
targetSetImplementation = parentMapping
|
|
618
|
-
?
|
|
626
|
+
? TEMPORARY__resolveSetImplementationByID(
|
|
619
627
|
parentMapping,
|
|
620
628
|
protocol.target,
|
|
621
629
|
this.context,
|
|
@@ -631,7 +639,7 @@ export class V1_PropertyMappingBuilder
|
|
|
631
639
|
}
|
|
632
640
|
}
|
|
633
641
|
const sourceSetImplementation = guaranteeNonNullable(
|
|
634
|
-
|
|
642
|
+
resolvePropertyMappingSourceImplementation(
|
|
635
643
|
this.immediateParent,
|
|
636
644
|
protocol,
|
|
637
645
|
this.topParent,
|
|
@@ -757,12 +765,11 @@ export class V1_PropertyMappingBuilder
|
|
|
757
765
|
const parentMapping = this.immediateParent._PARENT;
|
|
758
766
|
|
|
759
767
|
if (protocol.target) {
|
|
760
|
-
targetSetImplementation =
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
);
|
|
768
|
+
targetSetImplementation = TEMPORARY__resolveSetImplementationByID(
|
|
769
|
+
parentMapping,
|
|
770
|
+
protocol.target,
|
|
771
|
+
this.context,
|
|
772
|
+
);
|
|
766
773
|
} else {
|
|
767
774
|
targetSetImplementation = getClassMappingsByClass(
|
|
768
775
|
parentMapping,
|
|
@@ -771,7 +778,7 @@ export class V1_PropertyMappingBuilder
|
|
|
771
778
|
}
|
|
772
779
|
}
|
|
773
780
|
const sourceSetImplementation = guaranteeNonNullable(
|
|
774
|
-
|
|
781
|
+
resolvePropertyMappingSourceImplementation(
|
|
775
782
|
this.immediateParent,
|
|
776
783
|
protocol,
|
|
777
784
|
this.topParent,
|
|
@@ -869,12 +876,11 @@ export class V1_PropertyMappingBuilder
|
|
|
869
876
|
InferableMappingElementIdExplicitValue.create(id, ''),
|
|
870
877
|
undefined,
|
|
871
878
|
);
|
|
872
|
-
inline.inlineSetImplementation =
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
);
|
|
879
|
+
inline.inlineSetImplementation = TEMPORARY__resolveSetImplementationByID(
|
|
880
|
+
topParent._PARENT,
|
|
881
|
+
protocol.setImplementationId,
|
|
882
|
+
this.context,
|
|
883
|
+
);
|
|
878
884
|
return inline;
|
|
879
885
|
}
|
|
880
886
|
|
|
@@ -1043,12 +1049,30 @@ export class V1_PropertyMappingBuilder
|
|
|
1043
1049
|
const _association = xStoreParent.association.value;
|
|
1044
1050
|
const property = getOwnProperty(_association, protocol.property.property);
|
|
1045
1051
|
const sourceSetImplementation = guaranteeNonNullable(
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1052
|
+
resolvePropertyMappingSourceImplementation(
|
|
1053
|
+
this.immediateParent,
|
|
1054
|
+
protocol,
|
|
1055
|
+
this.topParent,
|
|
1056
|
+
this.context,
|
|
1057
|
+
),
|
|
1051
1058
|
);
|
|
1059
|
+
let targetSetImplementation: SetImplementation | undefined;
|
|
1060
|
+
const propertyType = property.genericType.value.rawType;
|
|
1061
|
+
if (propertyType instanceof Class) {
|
|
1062
|
+
const parentMapping = this.immediateParent._PARENT;
|
|
1063
|
+
if (protocol.target) {
|
|
1064
|
+
targetSetImplementation = TEMPORARY__resolveSetImplementationByID(
|
|
1065
|
+
parentMapping,
|
|
1066
|
+
protocol.target,
|
|
1067
|
+
this.context,
|
|
1068
|
+
);
|
|
1069
|
+
} else {
|
|
1070
|
+
targetSetImplementation = getClassMappingsByClass(
|
|
1071
|
+
parentMapping,
|
|
1072
|
+
guaranteeType(propertyType, Class),
|
|
1073
|
+
)[0];
|
|
1074
|
+
}
|
|
1075
|
+
}
|
|
1052
1076
|
const xStorePropertyMapping = new XStorePropertyMapping(
|
|
1053
1077
|
xStoreParent,
|
|
1054
1078
|
PropertyImplicitReference.create(
|
|
@@ -1106,12 +1130,32 @@ export class V1_PropertyMappingBuilder
|
|
|
1106
1130
|
propertyMapping?.property ??
|
|
1107
1131
|
this.context.resolveProperty(protocol.property);
|
|
1108
1132
|
|
|
1109
|
-
const sourceSetImplementation =
|
|
1110
|
-
(
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1133
|
+
const sourceSetImplementation = guaranteeNonNullable(
|
|
1134
|
+
resolvePropertyMappingSourceImplementation(
|
|
1135
|
+
this.immediateParent,
|
|
1136
|
+
protocol,
|
|
1137
|
+
this.topParent,
|
|
1138
|
+
this.context,
|
|
1139
|
+
),
|
|
1114
1140
|
);
|
|
1141
|
+
let targetSetImplementation: SetImplementation | undefined;
|
|
1142
|
+
const propertyType = property.value.genericType.value.rawType;
|
|
1143
|
+
if (propertyType instanceof Class) {
|
|
1144
|
+
const parentMapping = this.immediateParent._PARENT;
|
|
1145
|
+
|
|
1146
|
+
if (protocol.target) {
|
|
1147
|
+
targetSetImplementation = TEMPORARY__resolveSetImplementationByID(
|
|
1148
|
+
parentMapping,
|
|
1149
|
+
protocol.target,
|
|
1150
|
+
this.context,
|
|
1151
|
+
);
|
|
1152
|
+
} else {
|
|
1153
|
+
targetSetImplementation = getClassMappingsByClass(
|
|
1154
|
+
parentMapping,
|
|
1155
|
+
guaranteeType(propertyType, Class),
|
|
1156
|
+
)[0];
|
|
1157
|
+
}
|
|
1158
|
+
}
|
|
1115
1159
|
|
|
1116
1160
|
const aggregationAwarePropertyMapping = new AggregationAwarePropertyMapping(
|
|
1117
1161
|
this.topParent ?? this.immediateParent,
|
|
@@ -32,14 +32,13 @@ import {
|
|
|
32
32
|
import { JsonModelConnection } from '../../../../../../../../graph/metamodel/pure/packageableElements/store/modelToModel/connection/JsonModelConnection.js';
|
|
33
33
|
import { XmlModelConnection } from '../../../../../../../../graph/metamodel/pure/packageableElements/store/modelToModel/connection/XmlModelConnection.js';
|
|
34
34
|
import { FlatDataConnection } from '../../../../../../../../graph/metamodel/pure/packageableElements/store/flatData/connection/FlatDataConnection.js';
|
|
35
|
-
import
|
|
35
|
+
import { Store } from '../../../../../../../../graph/metamodel/pure/packageableElements/store/Store.js';
|
|
36
36
|
import { FlatData } from '../../../../../../../../graph/metamodel/pure/packageableElements/store/flatData/model/FlatData.js';
|
|
37
37
|
import { Database } from '../../../../../../../../graph/metamodel/pure/packageableElements/store/relational/model/Database.js';
|
|
38
38
|
import { ModelStore } from '../../../../../../../../graph/metamodel/pure/packageableElements/store/modelToModel/model/ModelStore.js';
|
|
39
39
|
import {
|
|
40
40
|
type PackageableElementReference,
|
|
41
41
|
PackageableElementImplicitReference,
|
|
42
|
-
PackageableElementExplicitReference,
|
|
43
42
|
} from '../../../../../../../../graph/metamodel/pure/packageableElements/PackageableElementReference.js';
|
|
44
43
|
import { ModelChainConnection } from '../../../../../../../../graph/metamodel/pure/packageableElements/store/modelToModel/connection/ModelChainConnection.js';
|
|
45
44
|
import type { V1_GraphBuilderContext } from '../V1_GraphBuilderContext.js';
|
|
@@ -60,7 +59,6 @@ import type { DSL_Mapping_PureProtocolProcessorPlugin_Extension } from '../../..
|
|
|
60
59
|
import type { V1_ModelChainConnection } from '../../../../model/packageableElements/store/modelToModel/connection/V1_ModelChainConnection.js';
|
|
61
60
|
import { V1_buildPostProcessor } from './V1_PostProcessorBuilderHelper.js';
|
|
62
61
|
import type { V1_INTERNAL__UnknownConnection } from '../../../../model/packageableElements/connection/V1_INTERNAL__UnknownConnection.js';
|
|
63
|
-
import { INTERNAL__PseudoStore } from '../../../../../../../../graph/metamodel/pure/packageableElements/store/INTERNAL__PseudoStore.js';
|
|
64
62
|
import { INTERNAL__UnknownConnection } from '../../../../../../../../graph/metamodel/pure/packageableElements/connection/INTERNAL__UnknownConnection.js';
|
|
65
63
|
|
|
66
64
|
class V1_ConnectionBuilder implements V1_ConnectionVisitor<Connection> {
|
|
@@ -99,9 +97,21 @@ class V1_ConnectionBuilder implements V1_ConnectionVisitor<Connection> {
|
|
|
99
97
|
connection: V1_INTERNAL__UnknownConnection,
|
|
100
98
|
): Connection {
|
|
101
99
|
const metamodel = new INTERNAL__UnknownConnection(
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
100
|
+
!this.embeddedConnectionStore
|
|
101
|
+
? this.context.resolveStore(
|
|
102
|
+
guaranteeNonNullable(
|
|
103
|
+
connection.store,
|
|
104
|
+
`Connection 'store' field is missing`,
|
|
105
|
+
),
|
|
106
|
+
)
|
|
107
|
+
: connection.store
|
|
108
|
+
? this.context.resolveStore(connection.store)
|
|
109
|
+
: ((): PackageableElementReference<Store> => {
|
|
110
|
+
if (this.embeddedConnectionStore.value instanceof Store) {
|
|
111
|
+
return this.embeddedConnectionStore;
|
|
112
|
+
}
|
|
113
|
+
throw new Error(`Connection store must be a store`);
|
|
114
|
+
})(),
|
|
105
115
|
);
|
|
106
116
|
metamodel.content = connection.content;
|
|
107
117
|
return metamodel;
|
|
@@ -215,26 +215,25 @@ export const V1_buildEnumerationMapping = (
|
|
|
215
215
|
};
|
|
216
216
|
|
|
217
217
|
export const V1_buildMappingInclude = (
|
|
218
|
-
|
|
218
|
+
protocol: V1_MappingInclude,
|
|
219
219
|
context: V1_GraphBuilderContext,
|
|
220
220
|
parentMapping: Mapping,
|
|
221
221
|
): MappingInclude => {
|
|
222
|
-
if (
|
|
223
|
-
|
|
224
|
-
|
|
222
|
+
if (protocol instanceof V1_INTERNAL__UnknownMappingInclude) {
|
|
223
|
+
const metamodel = new INTERNAL__UnknownMappingInclude(parentMapping);
|
|
224
|
+
metamodel.content = protocol.content;
|
|
225
|
+
return metamodel;
|
|
226
|
+
} else if (protocol instanceof V1_MappingIncludeMapping) {
|
|
225
227
|
const includedMapping = new MappingIncludeMapping(
|
|
226
228
|
parentMapping,
|
|
227
|
-
context.resolveMapping(
|
|
229
|
+
context.resolveMapping(protocol.includedMapping),
|
|
228
230
|
);
|
|
229
|
-
if (
|
|
230
|
-
mappingInclude.sourceDatabasePath &&
|
|
231
|
-
mappingInclude.targetDatabasePath
|
|
232
|
-
) {
|
|
231
|
+
if (protocol.sourceDatabasePath && protocol.targetDatabasePath) {
|
|
233
232
|
includedMapping.storeSubstitutions.push(
|
|
234
233
|
new SubstituteStore(
|
|
235
234
|
includedMapping,
|
|
236
|
-
context.resolveStore(
|
|
237
|
-
context.resolveStore(
|
|
235
|
+
context.resolveStore(protocol.sourceDatabasePath),
|
|
236
|
+
context.resolveStore(protocol.targetDatabasePath),
|
|
238
237
|
),
|
|
239
238
|
);
|
|
240
239
|
}
|
|
@@ -247,14 +246,14 @@ export const V1_buildMappingInclude = (
|
|
|
247
246
|
).V1_getExtraMappingIncludeBuilders?.() ?? [],
|
|
248
247
|
);
|
|
249
248
|
for (const builder of extraIncludeMappingBuilders) {
|
|
250
|
-
const builtInclude = builder(
|
|
249
|
+
const builtInclude = builder(protocol, parentMapping, context);
|
|
251
250
|
if (builtInclude) {
|
|
252
251
|
return builtInclude;
|
|
253
252
|
}
|
|
254
253
|
}
|
|
255
254
|
throw new UnsupportedOperationError(
|
|
256
255
|
`Can't transform mapping include: no compatible transformer available from plugins`,
|
|
257
|
-
|
|
256
|
+
protocol,
|
|
258
257
|
);
|
|
259
258
|
};
|
|
260
259
|
|
|
@@ -166,7 +166,9 @@ export const V1_buildServiceTestSuite = (
|
|
|
166
166
|
): ServiceTestSuite => {
|
|
167
167
|
const serviceTestSuite = new ServiceTestSuite();
|
|
168
168
|
serviceTestSuite.id = element.id;
|
|
169
|
-
serviceTestSuite.testData =
|
|
169
|
+
serviceTestSuite.testData = element.testData
|
|
170
|
+
? buildTestData(element.testData, context)
|
|
171
|
+
: undefined;
|
|
170
172
|
serviceTestSuite.tests = element.tests.map((test) =>
|
|
171
173
|
V1_buildServiceTest(
|
|
172
174
|
guaranteeType(test, V1_ServiceTest),
|
|
@@ -38,6 +38,7 @@ import {
|
|
|
38
38
|
type GraphFetchTree,
|
|
39
39
|
PropertyGraphFetchTree,
|
|
40
40
|
RootGraphFetchTree,
|
|
41
|
+
SubTypeGraphFetchTree,
|
|
41
42
|
GraphFetchTreeInstanceValue,
|
|
42
43
|
} from '../../../../../../../../graph/metamodel/pure/valueSpecification/GraphFetchTree.js';
|
|
43
44
|
import { ValueSpecification } from '../../../../../../../../graph/metamodel/pure/valueSpecification/ValueSpecification.js';
|
|
@@ -99,6 +100,7 @@ import {
|
|
|
99
100
|
KeyExpression,
|
|
100
101
|
KeyExpressionInstanceValue,
|
|
101
102
|
} from '../../../../../../../../graph/metamodel/pure/valueSpecification/KeyExpressionInstanceValue.js';
|
|
103
|
+
import { V1_SubTypeGraphFetchTree } from '../../../../model/valueSpecification/raw/classInstance/graph/V1_SubTypeGraphFetchTree.js';
|
|
102
104
|
|
|
103
105
|
const buildPrimtiveInstanceValue = (
|
|
104
106
|
type: PRIMITIVE_TYPE,
|
|
@@ -691,6 +693,13 @@ export function V1_buildGraphFetchTree(
|
|
|
691
693
|
openVariables,
|
|
692
694
|
processingContext,
|
|
693
695
|
);
|
|
696
|
+
} else if (graphFetchTree instanceof V1_SubTypeGraphFetchTree) {
|
|
697
|
+
return buildSubTypeGraphFetchTree(
|
|
698
|
+
graphFetchTree,
|
|
699
|
+
context,
|
|
700
|
+
openVariables,
|
|
701
|
+
processingContext,
|
|
702
|
+
);
|
|
694
703
|
}
|
|
695
704
|
throw new UnsupportedOperationError(
|
|
696
705
|
`Can't build graph fetch tree`,
|
|
@@ -791,7 +800,7 @@ function buildRootGraphFetchTree(
|
|
|
791
800
|
processingContext: V1_ProcessingContext,
|
|
792
801
|
): RootGraphFetchTree {
|
|
793
802
|
const _class = context.resolveClass(rootGraphFetchTree.class);
|
|
794
|
-
const
|
|
803
|
+
const subTreeChildren = rootGraphFetchTree.subTrees.map((subTree) =>
|
|
795
804
|
V1_buildGraphFetchTree(
|
|
796
805
|
subTree,
|
|
797
806
|
context,
|
|
@@ -800,9 +809,42 @@ function buildRootGraphFetchTree(
|
|
|
800
809
|
processingContext,
|
|
801
810
|
),
|
|
802
811
|
);
|
|
812
|
+
const subTypeTreeChildren = rootGraphFetchTree.subTypeTrees.map(
|
|
813
|
+
(subTypeTree) =>
|
|
814
|
+
buildSubTypeGraphFetchTree(
|
|
815
|
+
subTypeTree,
|
|
816
|
+
context,
|
|
817
|
+
openVariables,
|
|
818
|
+
processingContext,
|
|
819
|
+
),
|
|
820
|
+
);
|
|
803
821
|
const _rootGraphFetchTree = new RootGraphFetchTree(
|
|
804
822
|
PackageableElementExplicitReference.create(_class.value),
|
|
805
823
|
);
|
|
806
|
-
_rootGraphFetchTree.subTrees =
|
|
824
|
+
_rootGraphFetchTree.subTrees = subTreeChildren;
|
|
825
|
+
_rootGraphFetchTree.subTypeTrees = subTypeTreeChildren;
|
|
807
826
|
return _rootGraphFetchTree;
|
|
808
827
|
}
|
|
828
|
+
|
|
829
|
+
function buildSubTypeGraphFetchTree(
|
|
830
|
+
subTypeGraphFetchTree: V1_SubTypeGraphFetchTree,
|
|
831
|
+
context: V1_GraphBuilderContext,
|
|
832
|
+
openVariables: string[],
|
|
833
|
+
processingContext: V1_ProcessingContext,
|
|
834
|
+
): SubTypeGraphFetchTree {
|
|
835
|
+
const subTypeClass = context.resolveClass(subTypeGraphFetchTree.subTypeClass);
|
|
836
|
+
const children = subTypeGraphFetchTree.subTrees.map((subTree) =>
|
|
837
|
+
V1_buildGraphFetchTree(
|
|
838
|
+
subTree,
|
|
839
|
+
context,
|
|
840
|
+
subTypeClass.value,
|
|
841
|
+
openVariables,
|
|
842
|
+
processingContext,
|
|
843
|
+
),
|
|
844
|
+
);
|
|
845
|
+
const _subTypeGraphFetchTree = new SubTypeGraphFetchTree(
|
|
846
|
+
PackageableElementExplicitReference.create(subTypeClass.value),
|
|
847
|
+
);
|
|
848
|
+
_subTypeGraphFetchTree.subTrees = children;
|
|
849
|
+
return _subTypeGraphFetchTree;
|
|
850
|
+
}
|
|
@@ -20,6 +20,7 @@ import {
|
|
|
20
20
|
UnsupportedOperationError,
|
|
21
21
|
assertErrorThrown,
|
|
22
22
|
guaranteeIsString,
|
|
23
|
+
isString,
|
|
23
24
|
} from '@finos/legend-shared';
|
|
24
25
|
import type { V1_PackageableConnection } from '../../model/packageableElements/connection/V1_PackageableConnection.js';
|
|
25
26
|
import type { V1_Association } from '../../model/packageableElements/domain/V1_Association.js';
|
|
@@ -89,6 +90,7 @@ import {
|
|
|
89
90
|
V1_MEASURE_ELEMENT_PROTOCOL_TYPE,
|
|
90
91
|
V1_profileModelSchema,
|
|
91
92
|
V1_PROFILE_ELEMENT_PROTOCOL_TYPE,
|
|
93
|
+
V1_INTERNAL__UnknownFunctionActivatorModelSchema,
|
|
92
94
|
} from './serializationHelpers/V1_DomainSerializationHelper.js';
|
|
93
95
|
import type {
|
|
94
96
|
PureProtocolProcessorPlugin,
|
|
@@ -107,6 +109,8 @@ import {
|
|
|
107
109
|
import type { V1_ExecutionEnvironmentInstance } from '../../model/packageableElements/service/V1_ExecutionEnvironmentInstance.js';
|
|
108
110
|
import { V1_INTERNAL__UnknownPackageableElement } from '../../model/packageableElements/V1_INTERNAL__UnknownPackageableElement.js';
|
|
109
111
|
import type { V1_INTERNAL__UnknownFunctionActivator } from '../../model/packageableElements/function/V1_INTERNAL__UnknownFunctionActivator.js';
|
|
112
|
+
import type { SubtypeInfo } from '../../../../../action/protocol/ProtocolInfo.js';
|
|
113
|
+
import { V1_INTERNAL__UnknownStore } from '../../model/packageableElements/store/V1_INTERNAL__UnknownStore.js';
|
|
110
114
|
|
|
111
115
|
class V1_PackageableElementSerializer
|
|
112
116
|
implements V1_PackageableElementVisitor<PlainObject<V1_PackageableElement>>
|
|
@@ -147,6 +151,12 @@ class V1_PackageableElementSerializer
|
|
|
147
151
|
return element.content;
|
|
148
152
|
}
|
|
149
153
|
|
|
154
|
+
visit_INTERNAL__UnknownStore(
|
|
155
|
+
element: V1_INTERNAL__UnknownStore,
|
|
156
|
+
): PlainObject<V1_PackageableElement> {
|
|
157
|
+
return element.content;
|
|
158
|
+
}
|
|
159
|
+
|
|
150
160
|
visit_Profile(element: V1_Profile): PlainObject<V1_PackageableElement> {
|
|
151
161
|
return serialize(V1_profileModelSchema, element);
|
|
152
162
|
}
|
|
@@ -257,6 +267,7 @@ export const V1_serializePackageableElement = (
|
|
|
257
267
|
export const V1_deserializePackageableElement = (
|
|
258
268
|
json: PlainObject<V1_PackageableElement>,
|
|
259
269
|
plugins: PureProtocolProcessorPlugin[],
|
|
270
|
+
subtypeInfo?: SubtypeInfo | undefined,
|
|
260
271
|
): V1_PackageableElement => {
|
|
261
272
|
const packagePath = guaranteeIsString(
|
|
262
273
|
json.package,
|
|
@@ -315,6 +326,24 @@ export const V1_deserializePackageableElement = (
|
|
|
315
326
|
}
|
|
316
327
|
}
|
|
317
328
|
|
|
329
|
+
if (subtypeInfo && isString(json._type)) {
|
|
330
|
+
if (subtypeInfo.functionActivatorSubtypes.includes(json._type)) {
|
|
331
|
+
const protocol = deserialize(
|
|
332
|
+
V1_INTERNAL__UnknownFunctionActivatorModelSchema,
|
|
333
|
+
json,
|
|
334
|
+
);
|
|
335
|
+
protocol.content = json;
|
|
336
|
+
return protocol;
|
|
337
|
+
}
|
|
338
|
+
if (subtypeInfo.storeSubtypes.includes(json._type)) {
|
|
339
|
+
const protocol = new V1_INTERNAL__UnknownStore();
|
|
340
|
+
protocol.name = name;
|
|
341
|
+
protocol.package = packagePath;
|
|
342
|
+
protocol.content = json;
|
|
343
|
+
return protocol;
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
|
|
318
347
|
// Fall back to create unknown stub if not supported
|
|
319
348
|
const protocol = new V1_INTERNAL__UnknownPackageableElement();
|
|
320
349
|
protocol.name = name;
|
|
@@ -48,6 +48,7 @@ import type { PureProtocolProcessorPlugin } from '../../../PureProtocolProcessor
|
|
|
48
48
|
import type { Entity } from '@finos/legend-storage';
|
|
49
49
|
import { GraphDataDeserializationError } from '../../../../../../graph-manager/GraphManagerUtils.js';
|
|
50
50
|
import { V1_PureModelContextText } from '../../model/context/V1_PureModelContextText.js';
|
|
51
|
+
import type { SubtypeInfo } from '../../../../../action/protocol/ProtocolInfo.js';
|
|
51
52
|
|
|
52
53
|
enum V1_SDLCType {
|
|
53
54
|
ALLOY = 'alloy',
|
|
@@ -64,6 +65,7 @@ export const V1_entitiesToPureModelContextData = async (
|
|
|
64
65
|
entities: Entity[] | undefined,
|
|
65
66
|
graph: V1_PureModelContextData,
|
|
66
67
|
plugins: PureProtocolProcessorPlugin[],
|
|
68
|
+
subtypeInfo?: SubtypeInfo | undefined,
|
|
67
69
|
/**
|
|
68
70
|
* FIXME: to be deleted when most users have migrated to using full function signature as function name
|
|
69
71
|
* Currently, SDLC store many functions in legacy form (entity path does
|
|
@@ -87,6 +89,7 @@ export const V1_entitiesToPureModelContextData = async (
|
|
|
87
89
|
const element = V1_deserializePackageableElement(
|
|
88
90
|
entity.content as PlainObject<V1_PackageableElement>,
|
|
89
91
|
plugins,
|
|
92
|
+
subtypeInfo,
|
|
90
93
|
);
|
|
91
94
|
TEMPORARY__entityPathIndex?.set(element.path, entity.path);
|
|
92
95
|
return element;
|
|
@@ -164,6 +167,7 @@ const V1_pureModelContextCompositeModelSchema = createModelSchema(
|
|
|
164
167
|
|
|
165
168
|
export const V1_setupPureModelContextDataSerialization = (
|
|
166
169
|
plugins: PureProtocolProcessorPlugin[],
|
|
170
|
+
subtypeInfo?: SubtypeInfo | undefined,
|
|
167
171
|
): void => {
|
|
168
172
|
createModelSchema(V1_PureModelContextData, {
|
|
169
173
|
_type: usingConstantValueSchema(V1_PureModelContextType.DATA),
|
|
@@ -173,7 +177,7 @@ export const V1_setupPureModelContextDataSerialization = (
|
|
|
173
177
|
(element: V1_PackageableElement) =>
|
|
174
178
|
V1_serializePackageableElement(element, plugins),
|
|
175
179
|
(element: PlainObject<V1_PackageableElement>) =>
|
|
176
|
-
V1_deserializePackageableElement(element, plugins),
|
|
180
|
+
V1_deserializePackageableElement(element, plugins, subtypeInfo),
|
|
177
181
|
),
|
|
178
182
|
),
|
|
179
183
|
serializer: usingModelSchema(V1_Protocol.serialization.schema),
|
|
@@ -196,7 +200,7 @@ export const V1_serializePureModelContext = (
|
|
|
196
200
|
return serialize(V1_pureModelContextPointerModelSchema, pureModelContext);
|
|
197
201
|
} else if (pureModelContext instanceof V1_PureModelContextData) {
|
|
198
202
|
const rawPMCD = V1_serializePureModelContextData(pureModelContext);
|
|
199
|
-
if (pureModelContext.INTERNAL__rawDependencyEntities
|
|
203
|
+
if (pureModelContext.INTERNAL__rawDependencyEntities?.length) {
|
|
200
204
|
rawPMCD.elements = [
|
|
201
205
|
...(rawPMCD as { elements: PlainObject[] }).elements,
|
|
202
206
|
...pureModelContext.INTERNAL__rawDependencyEntities.map(
|
|
@@ -630,6 +630,13 @@ export const V1_deserializeAuthenticationStrategy = (
|
|
|
630
630
|
}
|
|
631
631
|
};
|
|
632
632
|
|
|
633
|
+
const V1_INTERNAL__UnknownConnectionModelSchema = createModelSchema(
|
|
634
|
+
V1_INTERNAL__UnknownConnection,
|
|
635
|
+
{
|
|
636
|
+
store: alias('element', optional(primitive())),
|
|
637
|
+
},
|
|
638
|
+
);
|
|
639
|
+
|
|
633
640
|
export const V1_serializeConnectionValue = (
|
|
634
641
|
protocol: V1_Connection,
|
|
635
642
|
allowPointer: boolean,
|
|
@@ -711,8 +718,10 @@ export const V1_deserializeConnectionValue = (
|
|
|
711
718
|
}
|
|
712
719
|
|
|
713
720
|
// Fall back to create unknown stub if not supported
|
|
714
|
-
const protocol =
|
|
715
|
-
|
|
721
|
+
const protocol = deserialize(
|
|
722
|
+
V1_INTERNAL__UnknownConnectionModelSchema,
|
|
723
|
+
json,
|
|
724
|
+
);
|
|
716
725
|
protocol.content = json;
|
|
717
726
|
return protocol;
|
|
718
727
|
}
|
|
@@ -267,8 +267,8 @@ const rootRelationalClassMappingModelSchema = createModelSchema(
|
|
|
267
267
|
{
|
|
268
268
|
_type: usingConstantValueSchema(V1_ClassMappingType.ROOT_RELATIONAL),
|
|
269
269
|
class: primitive(),
|
|
270
|
-
extendsClassMappingId: optional(primitive()),
|
|
271
270
|
distinct: primitive(),
|
|
271
|
+
extendsClassMappingId: optional(primitive()),
|
|
272
272
|
filter: usingModelSchema(V1_filterMappingModelSchema),
|
|
273
273
|
groupBy: customList(
|
|
274
274
|
V1_serializeRelationalOperationElement,
|
|
@@ -34,6 +34,7 @@ import {
|
|
|
34
34
|
customListWithSchema,
|
|
35
35
|
customEquivalentList,
|
|
36
36
|
customList,
|
|
37
|
+
optionalCustomUsingModelSchema,
|
|
37
38
|
} from '@finos/legend-shared';
|
|
38
39
|
import {
|
|
39
40
|
type V1_ServiceExecution,
|
|
@@ -164,7 +165,7 @@ export const V1_serviceTestSuiteModelSchema = (
|
|
|
164
165
|
createModelSchema(V1_ServiceTestSuite, {
|
|
165
166
|
_type: usingConstantValueSchema(V1_TestSuiteType.SERVICE_TEST_SUITE),
|
|
166
167
|
id: primitive(),
|
|
167
|
-
testData:
|
|
168
|
+
testData: optionalCustomUsingModelSchema(V1_testDataModelSchema(plugins)),
|
|
168
169
|
tests: list(
|
|
169
170
|
custom(
|
|
170
171
|
(val) => V1_serializeAtomicTest(val, plugins),
|