@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
|
@@ -37,7 +37,6 @@ import {
|
|
|
37
37
|
addUniqueEntry,
|
|
38
38
|
uuid,
|
|
39
39
|
deleteEntry,
|
|
40
|
-
uniq,
|
|
41
40
|
IllegalStateError,
|
|
42
41
|
filterByType,
|
|
43
42
|
isString,
|
|
@@ -158,7 +157,6 @@ import {
|
|
|
158
157
|
V1_DatabaseBuilderConfig,
|
|
159
158
|
V1_DatabaseBuilderInput,
|
|
160
159
|
V1_DatabasePattern,
|
|
161
|
-
V1_setupDatabaseBuilderInputSerialization,
|
|
162
160
|
V1_TargetDatabase,
|
|
163
161
|
} from './engine/generation/V1_DatabaseBuilderInput.js';
|
|
164
162
|
import { V1_transformRelationalDatabaseConnection } from './transformation/pureGraph/from/V1_ConnectionTransformer.js';
|
|
@@ -301,7 +299,6 @@ import {
|
|
|
301
299
|
} from '../../../GraphData.js';
|
|
302
300
|
import type { DEPRECATED__MappingTest } from '../../../../graph/metamodel/pure/packageableElements/mapping/DEPRECATED__MappingTest.js';
|
|
303
301
|
import { DEPRECATED__validate_MappingTest } from '../../../action/validation/DSL_Mapping_ValidationHelper.js';
|
|
304
|
-
import { V1_SERVICE_ELEMENT_PROTOCOL_TYPE } from './transformation/pureProtocol/serializationHelpers/V1_ServiceSerializationHelper.js';
|
|
305
302
|
import { V1_INTERNAL__UnknownPackageableElement } from './model/packageableElements/V1_INTERNAL__UnknownPackageableElement.js';
|
|
306
303
|
import type { SourceInformation } from '../../../action/SourceInformation.js';
|
|
307
304
|
import type { V1_SourceInformation } from './model/V1_SourceInformation.js';
|
|
@@ -310,6 +307,10 @@ import { FunctionActivatorConfiguration } from '../../../action/functionActivato
|
|
|
310
307
|
import { V1_FunctionActivatorInput } from './engine/functionActivator/V1_FunctionActivatorInput.js';
|
|
311
308
|
import { V1_FunctionActivator } from './model/packageableElements/function/V1_FunctionActivator.js';
|
|
312
309
|
import { V1_INTERNAL__UnknownFunctionActivator } from './model/packageableElements/function/V1_INTERNAL__UnknownFunctionActivator.js';
|
|
310
|
+
import type { RelationalDatabaseConnection } from '../../../../STO_Relational_Exports.js';
|
|
311
|
+
import { V1_RawSQLExecuteInput } from './engine/execution/V1_RawSQLExecuteInput.js';
|
|
312
|
+
import type { SubtypeInfo } from '../../../action/protocol/ProtocolInfo.js';
|
|
313
|
+
import { V1_INTERNAL__UnknownStore } from './model/packageableElements/store/V1_INTERNAL__UnknownStore.js';
|
|
313
314
|
|
|
314
315
|
class V1_PureModelContextDataIndex {
|
|
315
316
|
elements: V1_PackageableElement[] = [];
|
|
@@ -355,10 +356,12 @@ const mergePureModelContextData = (
|
|
|
355
356
|
const mergedData = new V1_PureModelContextData();
|
|
356
357
|
for (const _data of data) {
|
|
357
358
|
mergedData.elements = mergedData.elements.concat(_data.elements);
|
|
358
|
-
|
|
359
|
-
mergedData.INTERNAL__rawDependencyEntities
|
|
360
|
-
|
|
361
|
-
|
|
359
|
+
const rawDependencyEntities = (
|
|
360
|
+
mergedData.INTERNAL__rawDependencyEntities ?? []
|
|
361
|
+
).concat(_data.INTERNAL__rawDependencyEntities ?? []);
|
|
362
|
+
mergedData.INTERNAL__rawDependencyEntities = rawDependencyEntities.length
|
|
363
|
+
? rawDependencyEntities
|
|
364
|
+
: undefined;
|
|
362
365
|
mergedData.serializer = _data.serializer ?? mergedData.serializer;
|
|
363
366
|
mergedData.origin = _data.origin ?? mergedData.origin;
|
|
364
367
|
}
|
|
@@ -509,6 +512,10 @@ interface ServiceRegistrationInput {
|
|
|
509
512
|
|
|
510
513
|
export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
511
514
|
private readonly elementClassifierPathMap = new Map<string, string>();
|
|
515
|
+
private readonly subtypeInfo: SubtypeInfo = {
|
|
516
|
+
storeSubtypes: [],
|
|
517
|
+
functionActivatorSubtypes: [],
|
|
518
|
+
};
|
|
512
519
|
|
|
513
520
|
// Pure Client Version represent the version of the pure protocol.
|
|
514
521
|
// Most Engine APIs will interrupt an undefined pure client version to mean
|
|
@@ -532,10 +539,33 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
532
539
|
this.graphBuilderExtensions = new V1_GraphBuilderExtensions(
|
|
533
540
|
this.pluginManager.getPureProtocolProcessorPlugins(),
|
|
534
541
|
);
|
|
542
|
+
}
|
|
543
|
+
|
|
544
|
+
TEMPORARY__getEngineConfig(): TEMPORARY__AbstractEngineConfig {
|
|
545
|
+
return this.engine.config;
|
|
546
|
+
}
|
|
547
|
+
|
|
548
|
+
async initialize(
|
|
549
|
+
config: TEMPORARY__EngineSetupConfig,
|
|
550
|
+
options?: {
|
|
551
|
+
tracerService?: TracerService | undefined;
|
|
552
|
+
},
|
|
553
|
+
): Promise<void> {
|
|
554
|
+
this.engine = new V1_Engine(config.clientConfig, this.logService);
|
|
555
|
+
this.engine
|
|
556
|
+
.getEngineServerClient()
|
|
557
|
+
.setTracerService(options?.tracerService ?? new TracerService());
|
|
558
|
+
|
|
559
|
+
await Promise.all([
|
|
560
|
+
this.engine.setup(config),
|
|
561
|
+
this.configureElementClassifierPathMap(config),
|
|
562
|
+
this.configureSubtypeInfoMap(config),
|
|
563
|
+
]);
|
|
535
564
|
|
|
536
565
|
// setup serialization plugins
|
|
537
566
|
V1_setupPureModelContextDataSerialization(
|
|
538
567
|
this.pluginManager.getPureProtocolProcessorPlugins(),
|
|
568
|
+
this.subtypeInfo,
|
|
539
569
|
);
|
|
540
570
|
V1_setupDatabaseSerialization(
|
|
541
571
|
this.pluginManager.getPureProtocolProcessorPlugins(),
|
|
@@ -546,27 +576,11 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
546
576
|
V1_setupLegacyRuntimeSerialization(
|
|
547
577
|
this.pluginManager.getPureProtocolProcessorPlugins(),
|
|
548
578
|
);
|
|
549
|
-
V1_setupDatabaseBuilderInputSerialization(
|
|
550
|
-
this.pluginManager.getPureProtocolProcessorPlugins(),
|
|
551
|
-
);
|
|
552
579
|
}
|
|
553
580
|
|
|
554
|
-
|
|
555
|
-
return this.engine.config;
|
|
556
|
-
}
|
|
557
|
-
|
|
558
|
-
async initialize(
|
|
581
|
+
private async configureElementClassifierPathMap(
|
|
559
582
|
config: TEMPORARY__EngineSetupConfig,
|
|
560
|
-
options?: {
|
|
561
|
-
tracerService?: TracerService | undefined;
|
|
562
|
-
},
|
|
563
583
|
): Promise<void> {
|
|
564
|
-
this.engine = new V1_Engine(config.clientConfig, this.logService);
|
|
565
|
-
this.engine
|
|
566
|
-
.getEngineServerClient()
|
|
567
|
-
.setTracerService(options?.tracerService ?? new TracerService());
|
|
568
|
-
await this.engine.setup(config);
|
|
569
|
-
|
|
570
584
|
const classifierPathMapEntries =
|
|
571
585
|
config.TEMPORARY__classifierPathMapping ??
|
|
572
586
|
(await this.engine.getClassifierPathMapping());
|
|
@@ -575,6 +589,18 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
575
589
|
});
|
|
576
590
|
}
|
|
577
591
|
|
|
592
|
+
private async configureSubtypeInfoMap(
|
|
593
|
+
config: TEMPORARY__EngineSetupConfig,
|
|
594
|
+
): Promise<void> {
|
|
595
|
+
const subtypeInfo =
|
|
596
|
+
config.TEMPORARY__subtypeInfo ?? (await this.engine.getSubtypeInfo());
|
|
597
|
+
this.subtypeInfo.storeSubtypes = subtypeInfo.storeSubtypes;
|
|
598
|
+
this.subtypeInfo.functionActivatorSubtypes =
|
|
599
|
+
subtypeInfo.functionActivatorSubtypes;
|
|
600
|
+
}
|
|
601
|
+
|
|
602
|
+
// --------------------------------------------- Generic ---------------------------------------------
|
|
603
|
+
|
|
578
604
|
getSupportedProtocolVersion(): string {
|
|
579
605
|
return PureClientVersion.V1_0_0;
|
|
580
606
|
}
|
|
@@ -703,6 +729,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
703
729
|
entitiesWithOrigin.entities,
|
|
704
730
|
projectModelData,
|
|
705
731
|
this.pluginManager.getPureProtocolProcessorPlugins(),
|
|
732
|
+
this.subtypeInfo,
|
|
706
733
|
);
|
|
707
734
|
},
|
|
708
735
|
),
|
|
@@ -781,6 +808,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
781
808
|
entities,
|
|
782
809
|
data,
|
|
783
810
|
this.pluginManager.getPureProtocolProcessorPlugins(),
|
|
811
|
+
this.subtypeInfo,
|
|
784
812
|
);
|
|
785
813
|
stopWatch.record(
|
|
786
814
|
GRAPH_MANAGER_EVENT.GRAPH_BUILDER_DESERIALIZE_ELEMENTS__SUCCESS,
|
|
@@ -866,6 +894,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
866
894
|
entities,
|
|
867
895
|
data,
|
|
868
896
|
this.pluginManager.getPureProtocolProcessorPlugins(),
|
|
897
|
+
this.subtypeInfo,
|
|
869
898
|
);
|
|
870
899
|
stopWatch.record(
|
|
871
900
|
GRAPH_MANAGER_EVENT.GRAPH_BUILDER_DESERIALIZE_ELEMENTS__SUCCESS,
|
|
@@ -957,6 +986,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
957
986
|
entities,
|
|
958
987
|
generatedData,
|
|
959
988
|
this.pluginManager.getPureProtocolProcessorPlugins(),
|
|
989
|
+
this.subtypeInfo,
|
|
960
990
|
);
|
|
961
991
|
},
|
|
962
992
|
),
|
|
@@ -2336,7 +2366,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
2336
2366
|
graphData: GraphData,
|
|
2337
2367
|
): V1_PureModelContext {
|
|
2338
2368
|
if (graphData instanceof InMemoryGraphData) {
|
|
2339
|
-
return this.
|
|
2369
|
+
return this.getFullGraphModelData(graphData.graph);
|
|
2340
2370
|
} else if (graphData instanceof GraphDataWithOrigin) {
|
|
2341
2371
|
return this.buildPureModelSDLCPointer(
|
|
2342
2372
|
graphData.origin,
|
|
@@ -2360,7 +2390,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
2360
2390
|
this.createExecutionInputWithPureModelContext(
|
|
2361
2391
|
graph.origin
|
|
2362
2392
|
? this.buildPureModelSDLCPointer(graph.origin, undefined)
|
|
2363
|
-
: this.
|
|
2393
|
+
: this.getFullGraphModelData(graph),
|
|
2364
2394
|
mapping,
|
|
2365
2395
|
lambda,
|
|
2366
2396
|
runtime,
|
|
@@ -2406,52 +2436,6 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
2406
2436
|
return executeInput;
|
|
2407
2437
|
};
|
|
2408
2438
|
|
|
2409
|
-
private buildExecutionInputGraphData(
|
|
2410
|
-
graph: PureModel,
|
|
2411
|
-
): V1_PureModelContextData {
|
|
2412
|
-
/**
|
|
2413
|
-
* NOTE: to lessen network load, we might need to think of a way to only include relevant part of the pure model context data here
|
|
2414
|
-
*
|
|
2415
|
-
* Graph data models can be classified based on dependency hieararchy:
|
|
2416
|
-
* 1. Building blocks: models that all other models depend on: e.g. domain models, connections, etc.
|
|
2417
|
-
* 2. Consumers: models that depends on other models: e.g. mapping, service, etc.
|
|
2418
|
-
* 3. Unrelated: models that depends on nothing and vice versa: e.g. text
|
|
2419
|
-
*
|
|
2420
|
-
* It would be great if we can provide a way to walk the mapping to select only relevant part, but the problem is we cannot really walk the lambda
|
|
2421
|
-
* object to identify relevant classes yet. so the more economical way to to base on the classification above and the knowledge about hierarchy between
|
|
2422
|
-
* models (e.g. service can use mapping, runtime, connection, store, etc.) we can roughly prune the graph model data by group. Following is an example
|
|
2423
|
-
* for mapping used for execution, but this can generalized if we introduce hierarchy/ranking for model type
|
|
2424
|
-
*/
|
|
2425
|
-
const graphData = this.getFullGraphModelData(graph);
|
|
2426
|
-
const prunedGraphData = this.prunePureModelContextData(
|
|
2427
|
-
graphData,
|
|
2428
|
-
(element) =>
|
|
2429
|
-
element instanceof V1_Class ||
|
|
2430
|
-
element instanceof V1_Enumeration ||
|
|
2431
|
-
element instanceof V1_Profile ||
|
|
2432
|
-
element instanceof V1_Association ||
|
|
2433
|
-
element instanceof V1_ConcreteFunctionDefinition ||
|
|
2434
|
-
element instanceof V1_FunctionActivator ||
|
|
2435
|
-
element instanceof V1_Measure ||
|
|
2436
|
-
element instanceof V1_Store ||
|
|
2437
|
-
element instanceof V1_PackageableConnection ||
|
|
2438
|
-
element instanceof V1_PackageableRuntime ||
|
|
2439
|
-
element instanceof V1_Mapping,
|
|
2440
|
-
undefined,
|
|
2441
|
-
);
|
|
2442
|
-
const extraExecutionElements = this.pluginManager
|
|
2443
|
-
.getPureProtocolProcessorPlugins()
|
|
2444
|
-
.flatMap(
|
|
2445
|
-
(element) => element.V1_getExtraExecutionInputCollectors?.() ?? [],
|
|
2446
|
-
)
|
|
2447
|
-
.flatMap((getter) => getter(graph, graphData));
|
|
2448
|
-
prunedGraphData.elements = uniq([
|
|
2449
|
-
...prunedGraphData.elements,
|
|
2450
|
-
...extraExecutionElements,
|
|
2451
|
-
]);
|
|
2452
|
-
return prunedGraphData;
|
|
2453
|
-
}
|
|
2454
|
-
|
|
2455
2439
|
async runQuery(
|
|
2456
2440
|
lambda: RawLambda,
|
|
2457
2441
|
mapping: Mapping,
|
|
@@ -2504,7 +2488,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
2504
2488
|
const stopWatch = new StopWatch();
|
|
2505
2489
|
const pureModelContext = graph.origin
|
|
2506
2490
|
? this.buildPureModelSDLCPointer(graph.origin, undefined)
|
|
2507
|
-
: this.
|
|
2491
|
+
: this.getFullGraphModelData(graph);
|
|
2508
2492
|
stopWatch.record(GRAPH_MANAGER_EVENT.V1_ENGINE_OPERATION_INPUT__SUCCESS);
|
|
2509
2493
|
await Promise.all(
|
|
2510
2494
|
tests.map((t) =>
|
|
@@ -2649,7 +2633,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
2649
2633
|
this.createExecutionInputWithPureModelContext(
|
|
2650
2634
|
graph.origin
|
|
2651
2635
|
? this.buildPureModelSDLCPointer(graph.origin, undefined)
|
|
2652
|
-
: this.
|
|
2636
|
+
: this.getFullGraphModelData(graph),
|
|
2653
2637
|
mapping,
|
|
2654
2638
|
lambda,
|
|
2655
2639
|
runtime,
|
|
@@ -2811,7 +2795,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
2811
2795
|
input.mapping = mapping.path;
|
|
2812
2796
|
input.model = graph.origin
|
|
2813
2797
|
? this.buildPureModelSDLCPointer(graph.origin, undefined)
|
|
2814
|
-
: this.
|
|
2798
|
+
: this.getFullGraphModelData(graph);
|
|
2815
2799
|
return V1_buildModelCoverageAnalysisResult(
|
|
2816
2800
|
await this.engine.analyzeMappingModelCoverage(input),
|
|
2817
2801
|
mapping,
|
|
@@ -2940,7 +2924,28 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
2940
2924
|
);
|
|
2941
2925
|
dbBuilderInput.config = config;
|
|
2942
2926
|
return this.pureModelContextDataToEntities(
|
|
2943
|
-
await this.engine.buildDatabase(
|
|
2927
|
+
await this.engine.buildDatabase(
|
|
2928
|
+
dbBuilderInput,
|
|
2929
|
+
this.pluginManager.getPureProtocolProcessorPlugins(),
|
|
2930
|
+
),
|
|
2931
|
+
);
|
|
2932
|
+
}
|
|
2933
|
+
|
|
2934
|
+
override async executeRawSQL(
|
|
2935
|
+
connection: RelationalDatabaseConnection,
|
|
2936
|
+
sql: string,
|
|
2937
|
+
): Promise<string> {
|
|
2938
|
+
const input = new V1_RawSQLExecuteInput();
|
|
2939
|
+
input.connection = V1_transformRelationalDatabaseConnection(
|
|
2940
|
+
connection,
|
|
2941
|
+
new V1_GraphTransformerContextBuilder(
|
|
2942
|
+
this.pluginManager.getPureProtocolProcessorPlugins(),
|
|
2943
|
+
).build(),
|
|
2944
|
+
);
|
|
2945
|
+
input.sql = sql;
|
|
2946
|
+
return this.engine.executeRawSQL(
|
|
2947
|
+
input,
|
|
2948
|
+
this.pluginManager.getPureProtocolProcessorPlugins(),
|
|
2944
2949
|
);
|
|
2945
2950
|
}
|
|
2946
2951
|
|
|
@@ -3052,8 +3057,10 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
3052
3057
|
);
|
|
3053
3058
|
switch (executionMode) {
|
|
3054
3059
|
case ServiceExecutionMode.FULL_INTERACTIVE: {
|
|
3055
|
-
const data = this.
|
|
3056
|
-
|
|
3060
|
+
const data = this.TEMPORARY__prepareGraphDataForServiceRegistration(
|
|
3061
|
+
this.getFullGraphModelData(graph),
|
|
3062
|
+
this.elementToProtocol<V1_Service>(service),
|
|
3063
|
+
);
|
|
3057
3064
|
data.origin = new V1_PureModelContextPointer(protocol);
|
|
3058
3065
|
input = data;
|
|
3059
3066
|
break;
|
|
@@ -3282,28 +3289,25 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
3282
3289
|
);
|
|
3283
3290
|
}
|
|
3284
3291
|
|
|
3285
|
-
// NOTE:
|
|
3286
|
-
//
|
|
3287
|
-
// service as a parameter outside the model
|
|
3288
|
-
private
|
|
3292
|
+
// NOTE: This is somewhat hacky: service registration the input expects only the first service in the graph data
|
|
3293
|
+
// to be the service used for registration.
|
|
3294
|
+
// TODO: the service registration API should be modified to accept service as a parameter outside the model
|
|
3295
|
+
private TEMPORARY__prepareGraphDataForServiceRegistration = (
|
|
3289
3296
|
graphData: V1_PureModelContextData,
|
|
3290
|
-
|
|
3291
|
-
this.prunePureModelContextData(
|
|
3292
|
-
graphData,
|
|
3293
|
-
(element: V1_PackageableElement) => !(element instanceof V1_Service),
|
|
3294
|
-
(entity: Entity) => {
|
|
3295
|
-
const content = entity.content as { _type: string };
|
|
3296
|
-
return content._type !== V1_SERVICE_ELEMENT_PROTOCOL_TYPE;
|
|
3297
|
-
},
|
|
3298
|
-
);
|
|
3299
|
-
|
|
3300
|
-
private createServiceRegistrationInputGraphData = (
|
|
3301
|
-
graph: PureModel,
|
|
3297
|
+
service: V1_Service,
|
|
3302
3298
|
): V1_PureModelContextData => {
|
|
3303
|
-
|
|
3304
|
-
|
|
3305
|
-
|
|
3306
|
-
|
|
3299
|
+
graphData.elements = graphData.elements.filter(
|
|
3300
|
+
(element) => element.path !== service.path,
|
|
3301
|
+
);
|
|
3302
|
+
// insert the service as the first element so it gets indexed first
|
|
3303
|
+
graphData.elements.unshift(service);
|
|
3304
|
+
if (graphData.INTERNAL__rawDependencyEntities) {
|
|
3305
|
+
graphData.INTERNAL__rawDependencyEntities =
|
|
3306
|
+
graphData.INTERNAL__rawDependencyEntities.filter(
|
|
3307
|
+
(entity) => entity.path !== service.path,
|
|
3308
|
+
);
|
|
3309
|
+
}
|
|
3310
|
+
return graphData;
|
|
3307
3311
|
};
|
|
3308
3312
|
|
|
3309
3313
|
private createBulkServiceRegistrationInput = (
|
|
@@ -3313,12 +3317,13 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
3313
3317
|
const graphData = this.getFullGraphModelData(graph);
|
|
3314
3318
|
const results: ServiceRegistrationInput[] = [];
|
|
3315
3319
|
services.forEach((service) => {
|
|
3316
|
-
|
|
3317
|
-
|
|
3318
|
-
|
|
3319
|
-
|
|
3320
|
-
|
|
3321
|
-
|
|
3320
|
+
results.push({
|
|
3321
|
+
service: service,
|
|
3322
|
+
context: this.TEMPORARY__prepareGraphDataForServiceRegistration(
|
|
3323
|
+
graphData,
|
|
3324
|
+
this.elementToProtocol<V1_Service>(service),
|
|
3325
|
+
),
|
|
3326
|
+
});
|
|
3322
3327
|
});
|
|
3323
3328
|
return results;
|
|
3324
3329
|
};
|
|
@@ -3352,6 +3357,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
3352
3357
|
entities,
|
|
3353
3358
|
pureModelContextData,
|
|
3354
3359
|
this.pluginManager.getPureProtocolProcessorPlugins(),
|
|
3360
|
+
this.subtypeInfo,
|
|
3355
3361
|
TEMPORARY__entityPathIndex,
|
|
3356
3362
|
);
|
|
3357
3363
|
await Promise.all(
|
|
@@ -3388,22 +3394,6 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
3388
3394
|
return entity;
|
|
3389
3395
|
};
|
|
3390
3396
|
|
|
3391
|
-
private prunePureModelContextData = (
|
|
3392
|
-
data: V1_PureModelContextData,
|
|
3393
|
-
elementFilter?: (val: V1_PackageableElement) => boolean,
|
|
3394
|
-
entityFilter?: (entity: Entity) => boolean,
|
|
3395
|
-
): V1_PureModelContextData => {
|
|
3396
|
-
const prunedGraphData = new V1_PureModelContextData();
|
|
3397
|
-
prunedGraphData.elements = data.elements.filter((element) =>
|
|
3398
|
-
elementFilter ? elementFilter(element) : true,
|
|
3399
|
-
);
|
|
3400
|
-
prunedGraphData.INTERNAL__rawDependencyEntities =
|
|
3401
|
-
data.INTERNAL__rawDependencyEntities.filter((entity) =>
|
|
3402
|
-
entityFilter ? entityFilter(entity) : true,
|
|
3403
|
-
);
|
|
3404
|
-
return prunedGraphData;
|
|
3405
|
-
};
|
|
3406
|
-
|
|
3407
3397
|
private buildPureModelSDLCPointer(
|
|
3408
3398
|
origin: GraphDataOrigin,
|
|
3409
3399
|
clientVersion: string | undefined,
|
|
@@ -3461,6 +3451,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
3461
3451
|
),
|
|
3462
3452
|
data,
|
|
3463
3453
|
this.pluginManager.getPureProtocolProcessorPlugins(),
|
|
3454
|
+
this.subtypeInfo,
|
|
3464
3455
|
);
|
|
3465
3456
|
const mainGraphBuilderInput: V1_PureGraphBuilderInput[] = [
|
|
3466
3457
|
{
|
|
@@ -3498,6 +3489,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
3498
3489
|
),
|
|
3499
3490
|
projectModelData,
|
|
3500
3491
|
this.pluginManager.getPureProtocolProcessorPlugins(),
|
|
3492
|
+
this.subtypeInfo,
|
|
3501
3493
|
);
|
|
3502
3494
|
},
|
|
3503
3495
|
),
|
|
@@ -3547,10 +3539,13 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
3547
3539
|
...contextData1.elements,
|
|
3548
3540
|
...contextData2.elements,
|
|
3549
3541
|
];
|
|
3550
|
-
|
|
3551
|
-
...contextData1.INTERNAL__rawDependencyEntities,
|
|
3552
|
-
...contextData2.INTERNAL__rawDependencyEntities,
|
|
3542
|
+
const rawDependencyEntities = [
|
|
3543
|
+
...(contextData1.INTERNAL__rawDependencyEntities ?? []),
|
|
3544
|
+
...(contextData2.INTERNAL__rawDependencyEntities ?? []),
|
|
3553
3545
|
];
|
|
3546
|
+
contextData1.INTERNAL__rawDependencyEntities = rawDependencyEntities.length
|
|
3547
|
+
? rawDependencyEntities
|
|
3548
|
+
: undefined;
|
|
3554
3549
|
return contextData1;
|
|
3555
3550
|
}
|
|
3556
3551
|
|
|
@@ -3580,6 +3575,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
3580
3575
|
entities,
|
|
3581
3576
|
graphData,
|
|
3582
3577
|
this.pluginManager.getPureProtocolProcessorPlugins(),
|
|
3578
|
+
this.subtypeInfo,
|
|
3583
3579
|
);
|
|
3584
3580
|
return graphData;
|
|
3585
3581
|
}
|
|
@@ -3606,7 +3602,8 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
3606
3602
|
): string => {
|
|
3607
3603
|
if (
|
|
3608
3604
|
protocol instanceof V1_INTERNAL__UnknownPackageableElement ||
|
|
3609
|
-
protocol instanceof V1_INTERNAL__UnknownFunctionActivator
|
|
3605
|
+
protocol instanceof V1_INTERNAL__UnknownFunctionActivator ||
|
|
3606
|
+
protocol instanceof V1_INTERNAL__UnknownStore
|
|
3610
3607
|
) {
|
|
3611
3608
|
const _type = protocol.content._type;
|
|
3612
3609
|
const classifierPath = isString(_type)
|
|
@@ -65,7 +65,10 @@ import {
|
|
|
65
65
|
V1_buildParserError,
|
|
66
66
|
} from './V1_EngineHelper.js';
|
|
67
67
|
import { V1_LightQuery, V1_Query } from './query/V1_Query.js';
|
|
68
|
-
import {
|
|
68
|
+
import {
|
|
69
|
+
type V1_DatabaseBuilderInput,
|
|
70
|
+
V1_serializeDatabaseBuilderInput,
|
|
71
|
+
} from './generation/V1_DatabaseBuilderInput.js';
|
|
69
72
|
import type { V1_ServiceConfigurationInfo } from './service/V1_ServiceConfiguration.js';
|
|
70
73
|
import {
|
|
71
74
|
V1_ExecuteInput,
|
|
@@ -113,10 +116,17 @@ import type { V1_SourceInformation } from '../model/V1_SourceInformation.js';
|
|
|
113
116
|
import { V1_INTERNAL__PackageableElementWithSourceInformation } from '../transformation/pureProtocol/serializationHelpers/V1_CoreSerializationHelper.js';
|
|
114
117
|
import { ELEMENT_PATH_DELIMITER } from '../../../../../graph/MetaModelConst.js';
|
|
115
118
|
import { V1_serializeExecutionResult } from './execution/V1_ExecutionHelper.js';
|
|
116
|
-
import type {
|
|
119
|
+
import type {
|
|
120
|
+
ClassifierPathMapping,
|
|
121
|
+
SubtypeInfo,
|
|
122
|
+
} from '../../../../action/protocol/ProtocolInfo.js';
|
|
117
123
|
import { V1_FunctionActivatorInfo } from './functionActivator/V1_FunctionActivatorInfo.js';
|
|
118
124
|
import { V1_FunctionActivatorError } from './functionActivator/V1_FunctionActivatorError.js';
|
|
119
125
|
import { V1_FunctionActivatorInput } from './functionActivator/V1_FunctionActivatorInput.js';
|
|
126
|
+
import {
|
|
127
|
+
V1_serializeRawSQLExecuteInput,
|
|
128
|
+
type V1_RawSQLExecuteInput,
|
|
129
|
+
} from './execution/V1_RawSQLExecuteInput.js';
|
|
120
130
|
|
|
121
131
|
class V1_EngineConfig extends TEMPORARY__AbstractEngineConfig {
|
|
122
132
|
private engine: V1_Engine;
|
|
@@ -228,6 +238,24 @@ export class V1_Engine {
|
|
|
228
238
|
}
|
|
229
239
|
}
|
|
230
240
|
|
|
241
|
+
async getSubtypeInfo(): Promise<SubtypeInfo> {
|
|
242
|
+
try {
|
|
243
|
+
return await this.engineServerClient.getSubtypeInfo();
|
|
244
|
+
} catch {
|
|
245
|
+
// NOTE: this is temporary until we have this API functional and released
|
|
246
|
+
// See https://github.com/finos/legend-engine/pull/1858
|
|
247
|
+
return {
|
|
248
|
+
functionActivatorSubtypes: ['snowflakeApp'],
|
|
249
|
+
storeSubtypes: [
|
|
250
|
+
'MongoDatabase',
|
|
251
|
+
'serviceStore',
|
|
252
|
+
'relational',
|
|
253
|
+
'binding',
|
|
254
|
+
],
|
|
255
|
+
};
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
|
|
231
259
|
// ------------------------------------------- Grammar -------------------------------------------
|
|
232
260
|
|
|
233
261
|
private extractElementSourceInformationIndexFromPureModelContextDataJSON(
|
|
@@ -859,14 +887,24 @@ export class V1_Engine {
|
|
|
859
887
|
|
|
860
888
|
async buildDatabase(
|
|
861
889
|
input: V1_DatabaseBuilderInput,
|
|
890
|
+
plugins: PureProtocolProcessorPlugin[],
|
|
862
891
|
): Promise<V1_PureModelContextData> {
|
|
863
892
|
return V1_deserializePureModelContextData(
|
|
864
893
|
await this.engineServerClient.buildDatabase(
|
|
865
|
-
|
|
894
|
+
V1_serializeDatabaseBuilderInput(input, plugins),
|
|
866
895
|
),
|
|
867
896
|
);
|
|
868
897
|
}
|
|
869
898
|
|
|
899
|
+
async executeRawSQL(
|
|
900
|
+
input: V1_RawSQLExecuteInput,
|
|
901
|
+
plugins: PureProtocolProcessorPlugin[],
|
|
902
|
+
): Promise<string> {
|
|
903
|
+
return this.engineServerClient.executeRawSQL(
|
|
904
|
+
V1_serializeRawSQLExecuteInput(input, plugins),
|
|
905
|
+
);
|
|
906
|
+
}
|
|
907
|
+
|
|
870
908
|
// ------------------------------------------- Function -------------------------------------------
|
|
871
909
|
|
|
872
910
|
async getAvailableFunctionActivators(): Promise<V1_FunctionActivatorInfo[]> {
|
|
@@ -63,10 +63,15 @@ import type {
|
|
|
63
63
|
V1_SurveyDatasetsResult,
|
|
64
64
|
} from './analytics/V1_StoreEntitlementAnalysis.js';
|
|
65
65
|
import type { V1_RunTestsResult } from './test/V1_RunTestsResult.js';
|
|
66
|
-
import type {
|
|
66
|
+
import type {
|
|
67
|
+
ClassifierPathMapping,
|
|
68
|
+
SubtypeInfo,
|
|
69
|
+
} from '../../../../action/protocol/ProtocolInfo.js';
|
|
67
70
|
import type { V1_FunctionActivatorInfo } from './functionActivator/V1_FunctionActivatorInfo.js';
|
|
68
71
|
import type { V1_FunctionActivatorError } from './functionActivator/V1_FunctionActivatorError.js';
|
|
69
72
|
import type { V1_FunctionActivatorInput } from './functionActivator/V1_FunctionActivatorInput.js';
|
|
73
|
+
import type { V1_DatabaseBuilderInput } from './generation/V1_DatabaseBuilderInput.js';
|
|
74
|
+
import type { V1_RawSQLExecuteInput } from './execution/V1_RawSQLExecuteInput.js';
|
|
70
75
|
|
|
71
76
|
enum CORE_ENGINE_ACTIVITY_TRACE {
|
|
72
77
|
GRAMMAR_TO_JSON = 'transform Pure code to protocol',
|
|
@@ -99,6 +104,9 @@ enum CORE_ENGINE_ACTIVITY_TRACE {
|
|
|
99
104
|
MAPPING_MODEL_COVERAGE_ANALYTICS = 'mapping model coverage analytics',
|
|
100
105
|
SURVEY_DATASET_ANALYTICS = 'survey dataset analytics',
|
|
101
106
|
STORE_ENTITLEMENT_ANALYTICS = 'store entitlement analytics',
|
|
107
|
+
|
|
108
|
+
DATABASE_SCHEMA_EXPLORATION = 'database schema exploration',
|
|
109
|
+
DATABASE_RAW_SQL_EXECUTION = 'database raw SQL execution',
|
|
102
110
|
}
|
|
103
111
|
|
|
104
112
|
type GrammarParserBatchInputEntry = {
|
|
@@ -165,6 +173,9 @@ export class V1_EngineServerClient extends AbstractServerClient {
|
|
|
165
173
|
getClassifierPathMap = (): Promise<ClassifierPathMapping[]> =>
|
|
166
174
|
this.get(`${this._pure()}/protocol/pure/getClassifierPathMap`);
|
|
167
175
|
|
|
176
|
+
getSubtypeInfo = (): Promise<SubtypeInfo> =>
|
|
177
|
+
this.get(`${this._pure()}/protocol/pure/getSubtypeInfo`);
|
|
178
|
+
|
|
168
179
|
// ------------------------------------------- Grammar -------------------------------------------
|
|
169
180
|
|
|
170
181
|
_grammarToJSON = (): string => `${this._pure()}/grammar/grammarToJson`;
|
|
@@ -622,15 +633,27 @@ export class V1_EngineServerClient extends AbstractServerClient {
|
|
|
622
633
|
);
|
|
623
634
|
|
|
624
635
|
_databaseUtilities = (): string => `${this._pure()}/utilities/database`;
|
|
636
|
+
|
|
625
637
|
buildDatabase = (
|
|
626
|
-
input: PlainObject<
|
|
638
|
+
input: PlainObject<V1_DatabaseBuilderInput>,
|
|
627
639
|
): Promise<PlainObject<V1_PureModelContextData>> =>
|
|
628
640
|
this.postWithTracing(
|
|
629
|
-
this.getTraceData(CORE_ENGINE_ACTIVITY_TRACE.
|
|
641
|
+
this.getTraceData(CORE_ENGINE_ACTIVITY_TRACE.DATABASE_SCHEMA_EXPLORATION),
|
|
630
642
|
`${this._databaseUtilities()}/schemaExploration`,
|
|
631
643
|
input,
|
|
632
644
|
);
|
|
633
645
|
|
|
646
|
+
executeRawSQL = (
|
|
647
|
+
input: PlainObject<V1_RawSQLExecuteInput>,
|
|
648
|
+
): Promise<string> =>
|
|
649
|
+
this.postWithTracing(
|
|
650
|
+
this.getTraceData(CORE_ENGINE_ACTIVITY_TRACE.DATABASE_RAW_SQL_EXECUTION),
|
|
651
|
+
`${this._databaseUtilities()}/executeRawSQL`,
|
|
652
|
+
input,
|
|
653
|
+
{},
|
|
654
|
+
{ [HttpHeader.ACCEPT]: ContentType.TEXT_PLAIN },
|
|
655
|
+
);
|
|
656
|
+
|
|
634
657
|
// ------------------------------------------- Function ---------------------------------------
|
|
635
658
|
|
|
636
659
|
_functionActivator = (): string => `${this.baseUrl}/functionActivator`;
|
|
@@ -0,0 +1,52 @@
|
|
|
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
|
+
createModelSchema,
|
|
19
|
+
primitive,
|
|
20
|
+
custom,
|
|
21
|
+
serialize,
|
|
22
|
+
type ModelSchema,
|
|
23
|
+
} from 'serializr';
|
|
24
|
+
import { type PlainObject } from '@finos/legend-shared';
|
|
25
|
+
import {
|
|
26
|
+
V1_serializeConnectionValue,
|
|
27
|
+
V1_deserializeConnectionValue,
|
|
28
|
+
} from '../../transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.js';
|
|
29
|
+
import type { V1_RelationalDatabaseConnection } from '../../model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.js';
|
|
30
|
+
import type { PureProtocolProcessorPlugin } from '../../../PureProtocolProcessorPlugin.js';
|
|
31
|
+
|
|
32
|
+
export class V1_RawSQLExecuteInput {
|
|
33
|
+
connection!: V1_RelationalDatabaseConnection;
|
|
34
|
+
sql!: string;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
const createRawSQLExecuteInpuModelSchema = (
|
|
38
|
+
plugins: PureProtocolProcessorPlugin[],
|
|
39
|
+
): ModelSchema<V1_RawSQLExecuteInput> =>
|
|
40
|
+
createModelSchema(V1_RawSQLExecuteInput, {
|
|
41
|
+
connection: custom(
|
|
42
|
+
(val) => V1_serializeConnectionValue(val, false, plugins),
|
|
43
|
+
(val) => V1_deserializeConnectionValue(val, false, plugins),
|
|
44
|
+
),
|
|
45
|
+
sql: primitive(),
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
export const V1_serializeRawSQLExecuteInput = (
|
|
49
|
+
value: V1_RawSQLExecuteInput,
|
|
50
|
+
plugins: PureProtocolProcessorPlugin[],
|
|
51
|
+
): PlainObject<V1_RawSQLExecuteInput> =>
|
|
52
|
+
serialize(createRawSQLExecuteInpuModelSchema(plugins), value);
|