From e768970cf285373b238a08e78dbe8e3fc9a4014f Mon Sep 17 00:00:00 2001 From: Pierre De Belen Date: Sat, 16 Mar 2024 10:45:56 -0400 Subject: [PATCH] Upgrade to latest Legend-pure. Clean modules. (#2704) * Start splitting relational out. Extract external format from core Java binding * Continue modularization * Upgrade Pure * Fix Pure IDE Light POM * Fix POM * Clean External Format * reorg * split rest from execution-plan * Clean Config * Merge * Split config again * Merge * Set the proper Legend version --- .gitignore | 1 + .run/Server External.run.xml | 4 +- .../pom.xml | 23 +- ...reConfigurationCodeRepositoryProvider.java | 0 ...lesystem.repository.CodeRepositoryProvider | 0 .../core_configuration.definition.json | 1 + .../core_configuration/coreExtensions.pure | 0 .../core/Test_Pure_Core_Configuration.java | 0 .../pom.xml | 58 + .../LegendPlanGeneratorExtension.java | 1 - .../extension}/VersionPlanTransformer.java | 3 +- ...eneration.extension.PlanGeneratorExtension | 0 .../legend-engine-configuration/pom.xml | 38 +- .../pom.xml | 100 -- .../pom.xml | 18 +- .../collection/generation/TestExtensions.java | 4 +- .../legend-engine-repl-client/pom.xml | 59 +- .../engine/repl/autocomplete/Completer.java | 50 +- .../repl/autocomplete/CompleterExtension.java | 22 + .../legend/engine/repl/client/Client.java | 139 +- .../repl/client/jline3/JLine3Completer.java | 2 +- .../engine/repl/{client => core}/Command.java | 2 +- .../engine/repl/core/ReplExtension.java | 52 + .../repl/{client => core}/commands/Debug.java | 12 +- .../{client => core}/commands/Execute.java | 68 +- .../repl/{client => core}/commands/Ext.java | 6 +- .../repl/{client => core}/commands/Graph.java | 16 +- .../repl/{client => core}/commands/Help.java | 10 +- .../legend/LegendInterface.java} | 4 +- .../legend/LocalLegendInterface.java} | 5 +- .../legend/engine/repl/TestCompleter.java | 170 --- .../legend-engine-repl-relational/pom.xml | 114 ++ .../relational/RelationalReplExtension.java | 113 ++ .../RelationalCompleterExtension.java | 74 ++ .../repl/relational/client/RClient.java | 28 + .../engine/repl/relational}/commands/DB.java | 19 +- .../repl/relational}/commands/Load.java | 21 +- .../engine/repl/relational}/grid/Grid.java | 3 +- .../repl/relational/schema}/Column.java | 2 +- .../relational/schema}/MetadataReader.java | 2 +- .../engine/repl/relational/schema}/Table.java | 3 +- .../legend/engine/repl/TestCompleter.java | 204 +++ .../legend-engine-repl/pom.xml | 1 + .../config/config.json | 0 .../pom.xml | 2 +- .../AbstractMiddleTierExecutionTest.java | 0 ...estExecutionWithMiddleTierConnections.java | 0 ...ExecutionWithoutMiddleTierConnections.java | 0 ...TestParameterizedValueSpecWithGrammar.java | 0 .../planWithSingleMiddleTierConnection.json | 0 .../planWithoutMiddleTierConnections.json | 0 .../Dockerfile | 0 .../config/config.json | 0 .../legend-engine-server-rest/pom.xml | 1116 +++++++++++++++++ .../finos/legend/engine/server/Server.java | 0 .../engine/server/ServerConfiguration.java | 0 .../engine/server/core/BodySpanDecorator.java | 0 .../engine/server/core/ServerShared.java | 0 .../engine/server/core/api/CurrentUser.java | 0 .../legend/engine/server/core/api/Info.java | 0 .../legend/engine/server/core/api/Memory.java | 0 .../core/bundles/ErrorHandlingBundle.java | 0 .../DeploymentConfiguration.java | 0 .../ErrorHandlingConfiguration.java | 0 .../OpenTracingConfiguration.java | 0 .../CatchAllExceptionMapper.java | 0 .../JsonInformationExceptionMapper.java | 0 .../core/session/SessionAttributeBundle.java | 0 .../server/core/session/SessionInfo.java | 0 .../server/core/session/SessionTracker.java | 0 ...StoreExecutableManagerSessionListener.java | 0 .../server/core/session/api/SessionInfo.java | 0 .../main/resources/docker/config/config.json | 0 .../resources/docker/config/vault.properties | 0 .../src/main/resources/web/legend_index.html | 0 .../src/main/resources/web/login.html | 0 .../src/main/resources/web/style.css | 0 .../legend/engine/server/PrintExtensions.java | 0 .../core/session/TestSessionTracker.java | 0 .../test/extensions/TestExtensions.java | 0 ...atform_CodeGeneration_UsingPureClient.java | 0 ...tionPlan_JavaPlatform_UsingPureClient.java | 0 .../other/Test_Engine_UsingPureClient.java | 0 ...ternalFormat_UsingPureClientTestSuite.java | 0 .../Test_LoadMappings_UsingPureClient.java | 0 .../Test_M2M_UsingPureClientTestSuite.java | 0 ...etchParallel_UsingPureClientTestSuite.java | 0 ...t_Relational_UsingPureClientTestSuite.java | 0 .../shared/MetadataTestServerResource.java | 0 .../server/test/shared/PureTestHelper.java | 0 .../test/shared/ServerTestServerResource.java | 0 .../engine/server/test/shared/TestInfo.java | 0 .../test/shared/TestMetaDataServer.java | 0 .../test/shared/execute/PureFunctions.java | 0 .../src/test/resources/log4j.properties | 0 .../engine/server/test/userTestConfig.json | 0 .../userTestConfigParallelizationEnabled.json | 0 .../test/userTestConfig_withFlowProvider.json | 0 ...erTestConfig_withMetadataFromIDELight.json | 0 .../server/test/userTestConfig_withVault.json | 0 .../legend-engine-server-support-core/pom.xml | 2 +- .../server/support/server/BaseServer.java | 0 .../config/BaseServerConfiguration.java | 0 .../server/config/CORSConfiguration.java | 0 .../config/ErrorHandlingConfiguration.java | 0 .../server/exception/ServerException.java | 0 .../monitoring/ServerMetricsHandler.java | 0 .../server/resources/BaseResource.java | 0 .../support/server/tools/StringTools.java | 0 .../legend-engine-server/pom.xml | 1097 +--------------- legend-engine-config/pom.xml | 4 - .../pom.xml | 0 .../ExecutionPlanDependenciesFilter.java | 0 .../plan/compilation/GeneratePureConfig.java | 0 .../domain/dataQuality/BasicChecked.java | 0 .../domain/dataQuality/BasicDefect.java | 0 .../dataQuality/BasicRelativePathNode.java | 0 .../domain/dataQuality/Constrained.java | 0 .../domain/dataQuality/EnforcementLevel.java | 0 .../domain/dataQuality/GraphContext.java | 0 .../domain/dataQuality/IChecked.java | 0 .../domain/dataQuality/IDefect.java | 0 .../domain/dataQuality/RelativePathNode.java | 0 .../domain/dataQuality/RuleType.java | 0 .../dependencies/domain/date/DayOfWeek.java | 0 .../domain/date/DurationUnit.java | 0 .../plan/dependencies/domain/date/Month.java | 0 .../dependencies/domain/date/PureDate.java | 0 .../dependencies/domain/date/Quarter.java | 0 .../domain/graphFetch/IGraphInstance.java | 0 .../store/inMemory/DataParsingException.java | 0 .../IGraphFetchM2MExecutionNodeContext.java | 0 .../store/inMemory/IStoreStreamReader.java | 0 ...toreStreamReadingExecutionNodeContext.java | 0 ...StoreGraphFetchExecutionNodeSpecifics.java | 0 ...pertyGraphFetchExecutionNodeSpecifics.java | 0 ...yRootGraphFetchExecutionNodeSpecifics.java | 0 ...GraphFetchMergeExecutionNodeSpecifics.java | 0 ...reStreamReadingExecutionNodeSpecifics.java | 0 .../store/platform/IGraphSerializer.java | 0 ...ExecutionNodeGraphFetchMergeSpecifics.java | 0 ...ExecutionNodeGraphFetchUnionSpecifics.java | 0 ...essionExecutionNodeSerializeSpecifics.java | 0 .../store/platform/ISerializationWriter.java | 0 .../store/platform/PredefinedExpressions.java | 0 ...LocalGraphFetchExecutionNodeSpecifics.java | 0 ...pulateTempTableExecutionNodeSpecifics.java | 0 .../store/relational/IRelationalResult.java | 0 ...ationalClassInstantiationNodeExecutor.java | 0 .../IRelationalChildGraphNodeExecutor.java | 0 ...TableGraphFetchExecutionNodeSpecifics.java | 0 ...IRelationalCrossRootGraphNodeExecutor.java | 0 ...TableGraphFetchExecutionNodeSpecifics.java | 0 .../IRelationalGraphNodeExecutor.java | 0 ...QueryGraphFetchExecutionNodeSpecifics.java | 0 .../IRelationalRootGraphNodeExecutor.java | 0 ...TableGraphFetchExecutionNodeSpecifics.java | 0 ...etersResolutionExecutionNodeSpecifics.java | 0 .../store/shared/IConstantResult.java | 0 .../store/shared/IExecutionNodeContext.java | 0 .../store/shared/IReferencedObject.java | 0 .../dependencies/store/shared/IResult.java | 0 .../plan/dependencies/util/Library.java | 0 .../plan/dependencies/util/TestLibrary.java | 0 .../pom.xml | 0 .../plan/execution/api/ExecutePlan.java | 0 .../plan/execution/api/ExecutePlanLegacy.java | 0 .../execution/api/ExecutePlanStrategic.java | 0 ...ncurrentExecutionNodeExecutorPoolInfo.java | 0 ...elGraphFetchExecutionExecutorPoolInfo.java | 0 .../api/request/ExecutionRequest.java | 0 .../api/request/RequestContextHelper.java | 0 .../execution/api/result/ResultManager.java | 0 .../api/request/RequestContextHelperTest.java | 0 .../api/result/TestResultManager.java | 0 .../pom.xml | 0 .../authorization/ExecutionAuthorization.java | 0 .../PlanExecutionAuthorizer.java | 0 .../PlanExecutionAuthorizerInput.java | 0 .../PlanExecutionAuthorizerOutput.java | 0 ...RootMiddleTierPlanExecutionAuthorizer.java | 0 .../pom.xml | 0 .../GraphFetchM2MExecutionNodeContext.java | 0 .../stores/inMemory/plugin/InMemory.java | 0 .../plugin/InMemoryExecutionNodeExecutor.java | 0 .../plugin/InMemoryStoreExecutionState.java | 0 .../plugin/InMemoryStoreExecutor.java | 0 .../plugin/InMemoryStoreExecutorBuilder.java | 0 .../inMemory/plugin/InMemoryStoreState.java | 0 .../plugin/StoreStreamReaderBuilder.java | 0 ...toreStreamReadingExecutionNodeContext.java | 0 .../StoreStreamReadingObjectsIterator.java | 0 .../graphFetch/StoreStreamReadingResult.java | 0 .../utils/InMemoryGraphFetchUtils.java | 0 ...plan.execution.stores.StoreExecutorBuilder | 0 .../stores/inMemory/TestPlanExecutor.java | 0 ...rtyMappingWithoutExplicitClassMapping.java | 0 .../stores/inMemory/union/TestUnion.java | 0 .../stores/inMemory/utils/TestUtils.java | 0 .../FakeRelationalStoreExecutorBuilder.java | 0 .../FakeServiceStoreExecutorBuilder.java | 0 ...plan.execution.stores.StoreExecutorBuilder | 0 .../complexPropertyAutoMappingTest.pure | 0 .../src/test/resources/log4j.properties | 0 .../src/test/resources/plans/plan1.json | 0 .../src/test/resources/union/unionTest.pure | 0 .../pom.xml | 12 +- .../plan/execution/PlanExecutionContext.java | 0 .../engine/plan/execution/PlanExecutor.java | 0 .../plan/execution/PlanExecutorInfo.java | 0 .../plan/execution/cache/ExecutionCache.java | 0 .../cache/ExecutionCacheBuilder.java | 0 .../execution/cache/ExecutionCacheStats.java | 0 .../executionPlan/ExecutionPlanCache.java | 0 .../ExecutionPlanCacheBuilder.java | 0 .../cache/executionPlan/PlanCacheKey.java | 0 .../cache/graphFetch/GraphFetchCache.java | 0 .../GraphFetchCacheByEqualityKeys.java | 0 .../GraphFetchCacheByTargetCrossKeys.java | 0 .../cache/graphFetch/GraphFetchCacheKey.java | 0 .../GraphFetchCrossAssociationKeys.java | 0 .../ConcurrentExecutionNodeExecutorPool.java | 0 ...ntExecutionNodeExecutorPoolSerializer.java | 0 ...rallelGraphFetchExecutionExecutorPool.java | 0 ...hFetchExecutionExecutorPoolSerializer.java | 0 .../PlanExecutorConfiguration.java | 0 .../debug/PersistGeneratedJavaClasses.java | 0 .../extension/ExecutionExtension.java | 0 .../extension/ExecutionExtensionLoader.java | 0 .../graphFetch/AdaptiveBatching.java | 0 .../graphFetch/AdaptiveGraphBatchStats.java | 0 .../GraphFetchExecutionConfiguration.java | 0 .../ParallelGraphFetchExecutionConfig.java | 0 .../graphFetch/StoreGraphFetchExecutor.java | 0 .../nodes/ExecutionNodeExecutor.java | 0 ...cuteNodeParameterTransformationHelper.java | 0 .../ExecutionNodeClassResultHelper.java | 0 ...ExecutionNodePartialClassResultHelper.java | 0 .../helpers/ExecutionNodeResultHelper.java | 0 .../ExecutionNodeSerializerHelper.java | 0 .../helpers/ExecutionNodeTDSResultHelper.java | 0 .../freemarker/FreeMarkerExecutor.java | 0 .../FreemarkerInstanceOfMethod.java | 0 .../platform/DefaultExecutionNodeContext.java | 0 .../platform/ExecutionNodeContext.java | 0 .../ExecutionNodeJavaPlatformHelper.java | 0 .../ExecutionPlanJavaCompilerExtension.java | 0 ...cutionPlanJavaCompilerExtensionLoader.java | 0 .../nodes/helpers/platform/JavaHelper.java | 0 .../execution/nodes/state/ExecutionState.java | 0 .../nodes/state/GraphExecutionState.java | 0 .../ParameterizedValueSpecification.java | 0 ...tiveValueSpecificationToObjectVisitor.java | 0 .../plan/execution/result/ConstantResult.java | 0 .../plan/execution/result/ErrorResult.java | 0 .../execution/result/ExecutionActivity.java | 0 .../plan/execution/result/GenerationInfo.java | 0 .../execution/result/InputStreamResult.java | 0 .../plan/execution/result/MultiResult.java | 0 .../engine/plan/execution/result/Result.java | 0 .../execution/result/ResultNormalizer.java | 0 .../plan/execution/result/ResultVisitor.java | 0 .../execution/result/StreamingResult.java | 0 .../plan/execution/result/TDSResult.java | 0 .../execution/result/builder/Builder.java | 0 .../result/builder/_class/ClassBuilder.java | 0 .../builder/_class/ClassMappingInfo.java | 0 .../builder/_class/PartialClassBuilder.java | 0 .../result/builder/_class/PropertyInfo.java | 0 .../_class/PropertyWithParameters.java | 0 .../builder/datatype/DataTypeBuilder.java | 0 .../result/builder/stream/StreamBuilder.java | 0 .../result/builder/tds/TDSBuilder.java | 0 .../execution/result/date/EngineDate.java | 0 .../result/freemarker/PlanDateParameter.java | 0 .../PlanDateParameterDateFormat.java | 0 .../PlanDateParameterDateFormatFactory.java | 0 .../graphFetch/DelayedGraphFetchResult.java | 0 .../DelayedGraphFetchResultWithExecInfo.java | 0 .../result/graphFetch/GraphFetchResult.java | 0 .../result/graphFetch/GraphObjectsBatch.java | 0 .../execution/result/json/JsonSerializer.java | 0 .../JsonStreamToJsonDefaultSerializer.java | 0 .../JsonStreamToPureFormatSerializer.java | 0 .../result/json/JsonStreamingResult.java | 0 .../result/json/RealizedJsonResult.java | 0 .../result/object/StreamingObjectResult.java | 0 .../StreamingObjectResultCSVSerializer.java | 0 .../StreamingObjectResultJSONSerializer.java | 0 .../result/serialization/CsvSerializer.java | 0 .../ExecutionResultObjectMapperFactory.java | 0 .../serialization/RequestIdGenerator.java | 0 .../serialization/SerializationFormat.java | 0 .../result/serialization/Serializer.java | 0 .../TDSColumnWithSerializer.java | 0 .../TDSResultToCSVSerializer.java | 0 .../TDSResultToPureFormatSerializer.java | 0 .../TDSResultToPureTDSSerializer.java | 0 .../TDSResultToPureTDSToObjectSerializer.java | 0 .../TDSResultToRawTDSObjectSerializer.java | 0 .../result/serialization/TemporaryFile.java | 0 .../transformer/SetImplTransformers.java | 0 .../result/transformer/TransformerInput.java | 0 .../execution/stores/StoreExecutable.java | 0 .../stores/StoreExecutableManager.java | 0 .../execution/stores/StoreExecutionState.java | 0 .../plan/execution/stores/StoreExecutor.java | 0 .../stores/StoreExecutorBuilder.java | 0 .../stores/StoreExecutorBuilderLoader.java | 0 .../stores/StoreExecutorConfiguration.java | 0 .../plan/execution/stores/StoreState.java | 0 .../plan/execution/stores/StoreType.java | 0 .../FunctionParameterProcessor.java | 0 .../FunctionParameterTypeValidator.java | 0 .../FunctionParametersNormalizer.java | 0 ...unctionParametersParametersValidation.java | 0 .../ParameterValidationContextExecutor.java | 0 .../validation/ServicePatternValidation.java | 0 .../execution/validation/TypeConvertor.java | 0 .../validation/ValidationResult.java | 0 .../plan/execution/TestPlanExecutor.java | 0 .../cache/test/TestExecutionCache.java | 0 .../TestConcurrentExecutionNodeExecution.java | 0 .../domain/date/test/TestPureDate.java | 0 .../graphFetch/TestAdaptiveBatching.java | 0 .../freemarker/TestFreeMarkerExecutor.java | 0 .../TestParameterizedValueSpecification.java | 0 .../result/TDSResultSerializationTest.java | 0 .../result/TestInputStreamResult.java | 0 .../execution/result/test/TestEngineDate.java | 0 .../result/test/TestResultNormalizer.java | 0 .../test/json/TestJsonStreamingResult.java | 0 ...estExecutionResultObjectMapperFactory.java | 0 .../test/serialization/TestTemporaryFile.java | 0 .../transformer/TestSetImplTransformers.java | 0 .../stores/TestStoreExecutableManager.java | 0 .../test/TestParametersValidation.java | 0 .../src/test/resources/log4j.properties | 0 .../parameterization/lambdaWithFilter.json | 0 .../parameterization/lambdaWithInFilter.json | 0 .../pom.xml | 3 +- .../pom.xml | 2 +- .../engine/plan/generation/PlanGenerator.java | 0 .../engine/plan/generation/PlanWithDebug.java | 0 .../extension/PlanGeneratorExtension.java | 0 .../transformers/DevPlanTransformer.java | 0 .../transformers/LegendPlanTransformers.java | 0 .../transformers/PlanTransformer.java | 0 .../plan/platform/JavaPlatformBinder.java | 0 .../engine/plan/platform/PlanPlatform.java | 0 .../engine/plan/platform/PlatformBinder.java | 0 .../plan/platform/java/JavaSourceHelper.java | 0 .../plan/platform/TestJavaSourceHelper.java | 0 .../pom.xml | 2 +- .../pom.xml | 0 .../language/pure/compiler/api/Compile.java | 0 .../pure/compiler/api/CompileResult.java | 0 .../compiler/api/LambdaReturnTypeInput.java | 0 .../compiler/api/test/TestCompileApi.java | 0 ...merationWithSystemProfileButNoSection.json | 0 ...ionMappingWithMixedFormatSourceValues.json | 0 .../src/test/resources/log4j.properties | 0 .../pom.xml | 10 +- .../language/pure/compiler/Compiler.java | 0 .../pure/compiler/MetadataWrapper.java | 0 .../ClassMappingFirstPassBuilder.java | 0 .../ClassMappingSecondPassBuilder.java | 0 .../ClassMappingThirdPassBuilder.java | 0 .../compiler/toPureGraph/CompileContext.java | 0 .../ConnectionFirstPassBuilder.java | 0 .../ConnectionSecondPassBuilder.java | 0 .../toPureGraph/CoreCompilerExtension.java | 0 .../toPureGraph/HelperConnectionBuilder.java | 0 .../toPureGraph/HelperFunctionBuilder.java | 0 .../toPureGraph/HelperMappingBuilder.java | 0 .../toPureGraph/HelperMeasureBuilder.java | 0 .../toPureGraph/HelperModelBuilder.java | 0 .../toPureGraph/HelperRuntimeBuilder.java | 0 .../HelperValueSpecificationBuilder.java | 0 .../pure/compiler/toPureGraph/IPureModel.java | 0 .../compiler/toPureGraph/Milestoning.java | 0 .../MilestoningDatePropagationContext.java | 0 .../MilestoningDatePropagationHelper.java | 0 .../PackageableElementFifthPassBuilder.java | 0 .../PackageableElementFirstPassBuilder.java | 0 .../PackageableElementFourthPassBuilder.java | 0 .../PackageableElementSecondPassBuilder.java | 0 .../PackageableElementThirdPassBuilder.java | 0 .../toPureGraph/PrimitiveProcessor.java | 0 .../toPureGraph/ProcessingContext.java | 0 .../toPureGraph/PropertyMappingBuilder.java | 0 .../pure/compiler/toPureGraph/PureModel.java | 0 .../PureModelProcessParameter.java | 0 .../toPureGraph/RelationTypeHelper.java | 0 .../toPureGraph/SourceInformationHelper.java | 0 .../toPureGraph/TestCompilerHelper.java | 0 .../ValueSpecificationBuilder.java | 0 .../ValueSpecificationBuilderForFuncExpr.java | 0 .../pure/compiler/toPureGraph/Warning.java | 0 .../data/EmbeddedDataFirstPassBuilder.java | 0 .../data/core/EmbeddedDataCompilerHelper.java | 0 .../extension/CompilerExtension.java | 0 .../extension/CompilerExtensionLoader.java | 0 .../extension/CompilerExtensions.java | 0 .../toPureGraph/extension/Processor.java | 0 ...tionExpressionBuilderRegistrationInfo.java | 0 .../toPureGraph/handlers/FunctionHandler.java | 0 .../FunctionHandlerDispatchBuilderInfo.java | 0 .../FunctionHandlerRegistrationInfo.java | 0 .../toPureGraph/handlers/Handlers.java | 0 .../handlers/IncludedMappingHandler.java | 0 .../MappingIncludedMappingHandler.java | 0 .../handlers/StoreProviderCompilerHelper.java | 0 .../handlers/UserDefinedFunctionHandler.java | 0 .../CompositeFunctionExpressionBuilder.java | 0 .../builder/FunctionExpressionBuilder.java | 0 ...MultiHandlerFunctionExpressionBuilder.java | 0 ...larSignatureFunctionExpressionBuilder.java | 0 .../handlers/inference/Dispatch.java | 0 .../inference/MostCommonMultiplicity.java | 0 .../handlers/inference/MostCommonType.java | 0 .../inference/ParametersInference.java | 0 .../ResolveTypeParameterInference.java | 0 .../handlers/inference/ReturnInference.java | 0 .../inference/TypeAndMultiplicity.java | 0 .../test/ModelStoreTestConnectionFactory.java | 0 .../toPureGraph/test/TestBuilderHelper.java | 0 .../test/TestFirstPassBuilder.java | 0 .../TestAssertionFirstPassBuilder.java | 0 .../core/TestAssertionCompilerHelper.java | 0 .../validator/AssociationValidator.java | 0 .../toPureGraph/validator/ClassValidator.java | 0 .../validator/EnumerationValidator.java | 0 .../validator/FunctionValidator.java | 0 .../validator/MappingValidator.java | 0 .../validator/MappingValidatorContext.java | 0 .../validator/ProfileValidator.java | 0 .../PureModelContextDataValidator.java | 0 .../toPureGraph/validator/StoreValidator.java | 0 ...er.toPureGraph.extension.CompilerExtension | 0 ...re.v1.extension.ConnectionFactoryExtension | 0 .../test/TestCompilationFromGrammar.java | 0 .../test/TestCompilationFromProtocol.java | 0 .../compiler/test/TestHelperModelBuilder.java | 0 .../TestRoundTripWithPureTransformation.java | 0 .../EmbeddedPureCompilerExtension.java | 0 ...ggregationAwareCompilationFromGrammar.java | 0 .../TestConnectionCompilationFromGrammar.java | 0 .../TestDataCompilationFromGrammar.java | 0 .../TestDomainCompilationFromGrammar.java | 0 .../TestFunctionCompilationFromGrammar.java | 0 .../TestMappingCompilationFromGrammar.java | 0 ...onedPropertyUsageInFunctionExpresions.java | 0 ...stMilestonedPropertyUsageInGraphFetch.java | 0 .../TestRelationNotUsingDatabaseAccessor.java | 0 .../TestRuntimeCompilationFromGrammar.java | 0 .../TestSectionCompilationFromGrammar.java | 0 .../TestDomainCompilationFromProtocol.java | 0 .../TestMappingCompilationFromProtocol.java | 0 .../extension/TestCompilerExtensions.java | 0 ...er.toPureGraph.extension.CompilerExtension | 0 ...umerationMappingWithNoSourceValueType.json | 0 .../enumerationMappingWithSourceType.json | 0 ...merationWithSystemProfileButNoSection.json | 0 ...ionMappingWithMixedFormatSourceValues.json | 0 .../src/test/resources/functionExample.json | 0 .../test/resources/functionWithDateTime.json | 0 ...functionWithDateTimeContainingPercent.json | 0 .../resources/functionWithLambdaVariable.json | 0 .../resources/functionWithUnderscores.json | 0 .../src/test/resources/log4j.properties | 0 .../packageWithCorrectStrictTimeDomain.json | 0 .../resources/packageWithReservedName.json | 0 .../packageWithWrongStrictTimeDomain.json | 0 .../resources/profileUsedInClassExample.json | 0 .../test/resources/queryWithPathVariable.json | 0 .../pom.xml | 0 .../api/grammarToJson/GrammarToJson.java | 0 .../api/grammarToJson/GrammarToJsonInput.java | 0 .../grammarToJson/TransformGrammarToJson.java | 0 .../api/jsonToGrammar/JsonToGrammar.java | 0 .../api/jsonToGrammar/JsonToGrammarInput.java | 0 .../api/jsonToGrammar/LambdaInput.java | 0 .../jsonToGrammar/TransformJsonToGrammar.java | 0 .../api/test/TestGrammarGraphFetchApi.java | 0 .../api/test/TestGrammarLambdaApi.java | 0 .../grammar/api/test/TestGrammarModelApi.java | 0 .../api/test/TestGrammarToJsonApi.java | 0 .../TestGrammarValueSpecificationApi.java | 0 .../api/test/TestJsonToGrammarApi.java | 0 .../test/resources/enumerationMapping.json | 0 ...umerationMappingWithNoSourceValueType.json | 0 .../src/test/resources/functionWithDate.json | 0 .../functionWithDateContainingPercent.json | 0 .../resources/functionWithUnderscores.json | 0 .../src/test/resources/log4j.properties | 0 .../metaNewFunctionWithMultiParameters.json | 0 .../metaNewFunctionWithSingleParameter.json | 0 .../modelElementsWithoutMultiplesections.json | 0 .../modelElementsWithoutSection.json | 0 .../resources/pureGenerationLambdaTest.json | 0 .../test/resources/pureImportParsingTest.json | 0 .../src/test/resources/pureParsingTest.json | 0 .../simpleFunctionWithParameters.json | 0 .../simpleFunctionWithoutParameters.json | 0 .../test/resources/simpleModelMapping.json | 0 .../resources/testGraphFetchTreeLambda.json | 0 .../src/test/resources/testLambdaObj.json | 0 .../src/test/resources/unionModelMapping.json | 0 .../README.md | 0 .../pom.xml | 0 .../grammar/from/antlr4/CodeLexerGrammar.g4 | 0 .../grammar/from/antlr4/CodeParserGrammar.g4 | 0 .../connection/ConnectionLexerGrammar.g4 | 0 .../connection/ConnectionParserGrammar.g4 | 0 .../ModelConnectionLexerGrammar.g4 | 0 .../ModelConnectionParserGrammar.g4 | 0 .../from/antlr4/core/CoreFragmentGrammar.g4 | 0 .../from/antlr4/core/CoreLexerGrammar.g4 | 0 .../from/antlr4/core/CoreParserGrammar.g4 | 0 .../from/antlr4/core/M3LexerGrammar.g4 | 0 .../from/antlr4/core/M3ParserGrammar.g4 | 0 .../from/antlr4/data/DataLexerGrammar.g4 | 0 .../from/antlr4/data/DataParserGrammar.g4 | 0 .../ExternalFormatDataLexerGrammar.g4 | 0 .../ExternalFormatDataParserGrammar.g4 | 0 .../modelStore/ModelStoreDataLexerGrammar.g4 | 0 .../modelStore/ModelStoreDataParserGrammar.g4 | 0 .../from/antlr4/domain/DomainLexerGrammar.g4 | 0 .../from/antlr4/domain/DomainParserGrammar.g4 | 0 .../GraphFetchTreeLexerGrammar.g4 | 0 .../GraphFetchTreeParserGrammar.g4 | 0 .../antlr4/mapping/MappingLexerGrammar.g4 | 0 .../antlr4/mapping/MappingParserGrammar.g4 | 0 .../AggregationAwareLexerGrammar.g4 | 0 .../AggregationAwareParserGrammar.g4 | 0 .../EnumerationMappingLexerGrammar.g4 | 0 .../EnumerationMappingParserGrammar.g4 | 0 .../OperationClassMappingLexerGrammar.g4 | 0 .../OperationClassMappingParserGrammar.g4 | 0 .../PureInstanceClassMappingLexerGrammar.g4 | 0 .../PureInstanceClassMappingParserGrammar.g4 | 0 .../XStoreAssociationMappingLexerGrammar.g4 | 0 .../XStoreAssociationMappingParserGrammar.g4 | 0 .../navigation/NavigationLexerGrammar.g4 | 0 .../navigation/NavigationParserGrammar.g4 | 0 .../antlr4/runtime/RuntimeLexerGrammar.g4 | 0 .../antlr4/runtime/RuntimeParserGrammar.g4 | 0 .../assertion/TestAssertionLexerGrammar.g4 | 0 .../assertion/TestAssertionParserGrammar.g4 | 0 .../equalTo/EqualToAssertionLexerGrammar.g4 | 0 .../equalTo/EqualToAssertionParserGrammar.g4 | 0 .../EqualToJsonAssertionLexerGrammar.g4 | 0 .../EqualToJsonAssertionParserGrammar.g4 | 0 .../grammar/from/CorePureGrammarParser.java | 0 .../DEPRECATED_PureGrammarParserLibrary.java | 0 .../from/DEPRECATED_SectionGrammarParser.java | 0 .../ParseTreeWalkerSourceInformation.java | 0 .../grammar/from/ParserErrorListener.java | 0 .../pure/grammar/from/PureGrammarParser.java | 0 .../from/PureGrammarParserContext.java | 0 .../from/PureGrammarParserUtility.java | 0 .../from/PureIslandGrammarSourceCode.java | 0 .../pure/grammar/from/SectionSourceCode.java | 0 .../grammar/from/SourceCodeParserInfo.java | 0 .../connection/ConnectionParseTreeWalker.java | 0 .../from/connection/ConnectionParser.java | 0 .../connection/ConnectionValueSourceCode.java | 0 .../ModelConnectionParseTreeWalker.java | 0 .../from/data/DataParseTreeWalker.java | 0 .../ExternalFormatEmbeddedDataParser.java | 0 .../HelperEmbeddedDataGrammarParser.java | 0 .../ModelStoreDataParseTreeWalker.java | 0 .../ModelStoreEmbeddedDataParser.java | 0 .../embedded/ReferenceEmbeddedDataParser.java | 0 .../from/domain/DateParseTreeWalker.java | 0 .../from/domain/DomainParseTreeWalker.java | 0 .../grammar/from/domain/DomainParser.java | 0 .../domain/GraphFetchTreeParseTreeWalker.java | 0 .../domain/NavigationParseTreeWalker.java | 0 .../from/domain/ParserTreeWalkerUtility.java | 0 .../domain/StrictTimeParseTreeWalker.java | 0 .../from/extension/ConnectionValueParser.java | 0 .../from/extension/EmbeddedPureParser.java | 0 .../from/extension/MappingElementParser.java | 0 .../extension/MappingTestInputDataParser.java | 0 .../extension/PureGrammarParserExtension.java | 0 .../PureGrammarParserExtensionLoader.java | 0 .../PureGrammarParserExtensions.java | 0 .../grammar/from/extension/SectionParser.java | 0 .../extension/data/EmbeddedDataParser.java | 0 .../test/assertion/TestAssertionParser.java | 0 ...ggregationAwareMappingParseTreeWalker.java | 0 .../EnumerationMappingParseTreeWalker.java | 0 .../mapping/MappingElementSourceCode.java | 0 .../from/mapping/MappingIncludeParser.java | 0 .../from/mapping/MappingParseTreeWalker.java | 0 .../grammar/from/mapping/MappingParser.java | 0 .../OperationClassMappingParseTreeWalker.java | 0 ...reInstanceClassMappingParseTreeWalker.java | 0 ...toreAssociationMappingParseTreeWalker.java | 0 .../RelationStoreAccessorPureParser.java | 0 .../from/runtime/RuntimeParseTreeWalker.java | 0 .../grammar/from/runtime/RuntimeParser.java | 0 .../runtime/StoreProviderPointerFactory.java | 0 .../test/assertion/EqualToGrammarParser.java | 0 .../assertion/EqualToJsonGrammarParser.java | 0 .../HelperTestAssertionGrammarParser.java | 0 .../grammar/to/CorePureGrammarComposer.java | 0 .../DEPRECATED_PureGrammarComposerCore.java | 0 .../to/HelperConnectionGrammarComposer.java | 0 .../to/HelperDomainGrammarComposer.java | 0 .../to/HelperMappingGrammarComposer.java | 0 .../to/HelperRuntimeGrammarComposer.java | 0 ...lperValueSpecificationGrammarComposer.java | 0 .../pure/grammar/to/PureGrammarComposer.java | 0 .../to/PureGrammarComposerContext.java | 0 .../to/PureGrammarComposerUtility.java | 0 .../HelperEmbeddedDataGrammarComposer.java | 0 .../data/ModelStoreDataGrammarComposer.java | 0 .../grammar/to/extension/ContentWithType.java | 0 .../PureGrammarComposerExtension.java | 0 .../PureGrammarComposerExtensionLoader.java | 0 .../HelperTestAssertionGrammarComposer.java | 0 ....from.extension.PureGrammarParserExtension | 0 ....to.extension.PureGrammarComposerExtension | 0 .../pure/grammar/test/TestGrammarParser.java | 0 .../grammar/test/TestGrammarRoundtrip.java | 0 .../test/from/TestMappingGrammarFrom.java | 0 .../TestMixedBooleanArithmeticConstraint.java | 0 .../parser/TestConnectionGrammarParser.java | 0 .../test/parser/TestDataGrammarParser.java | 0 .../test/parser/TestDomainGrammarParser.java | 0 .../parser/TestEmbeddedPureExtension.java | 0 .../test/parser/TestMappingGrammarParser.java | 0 .../test/parser/TestRuntimeGrammarParser.java | 0 .../TestConnectionGrammarRoundtrip.java | 0 .../roundtrip/TestDataGrammarRoundtrip.java | 0 .../roundtrip/TestDomainGrammarRoundtrip.java | 0 .../roundtrip/TestLambdaPrettyRendering.java | 0 .../test/roundtrip/TestLambdaRoundtrip.java | 0 .../TestMappingGrammarRoundtrip.java | 0 .../grammar/test/roundtrip/TestRelation.java | 0 .../TestRuntimeGrammarRoundtrip.java | 0 .../test/roundtrip/TestSectionRoundtrip.java | 0 .../embedded/TestExtendableEmbedded.java | 0 .../EmbeddedPureParserExtension.java | 0 .../extensions/GrammarComposerExtension.java | 0 .../extensions/GrammarParserExtension.java | 0 .../NewValueSpecificationForTest.java | 0 .../extensions/ProtocolExtension.java | 0 .../valueSpecification/TestPrimitives.java | 0 .../grammar/test/to/TestMappingGrammarTo.java | 0 ....from.extension.PureGrammarParserExtension | 0 ....to.extension.PureGrammarComposerExtension | 0 ...ol.pure.v1.extension.PureProtocolExtension | 0 .../SimpleAggregationAwareMapping.json | 0 .../src/test/resources/SimpleM2MMapping.json | 0 ...impleMixedBooleanArithmeticConstraint.json | 0 .../src/test/resources/log4j.properties | 0 .../test/resources/simpleIncludeMapping.json | 0 ...pleIncludeMappingWithOutdatedProperty.json | 0 .../pom.xml | 0 .../pure/modelManager/sdlc/SDLCFetcher.java | 0 .../pure/modelManager/sdlc/SDLCLoader.java | 0 .../sdlc/alloy/AlloySDLCLoader.java | 0 .../sdlc/api/MetadataServerInfo.java | 0 .../MetaDataServerConfiguration.java | 0 .../MetadataServerPac4jConfiguration.java | 0 ...ServerPrivateAccessTokenConfiguration.java | 0 .../PureServerConnectionConfiguration.java | 0 .../ServerConnectionConfiguration.java | 0 .../sdlc/pure/PureServerLoader.java | 0 .../sdlc/workspace/WorkspaceSDLCLoader.java | 0 .../modelManager/sdlc/TestSDLCLoader.java | 0 .../pom.xml | 0 .../pure/modelManager/ModelLoader.java | 0 .../pure/modelManager/ModelManager.java | 0 .../TestModelManagerPureModelCaching.java | 0 .../legend-engine-protocol-api/pom.xml | 0 .../protocol/pure/v1/model/PureProtocol.java | 0 .../pom.xml | 2 +- ...tocolGenerationCodeRepositoryProvider.java | 0 ...lesystem.repository.CodeRepositoryProvider | 0 .../core_protocol_generation.definition.json | 0 .../core_protocol_generation/generation.pure | 0 .../generation_test.pure | 0 .../Test_Pure_JavaProtocolGeneration.java | 0 .../legend-engine-protocol-generation/pom.xml | 0 .../generation/GenerateMetaClasses.java | 0 ...GenerateMetamodelToProtocolTranslator.java | 0 ...GenerateProtocolToMetamodelTranslator.java | 0 .../generation/GenerationArgument.java | 0 .../legend-engine-protocol-pure/pom.xml | 0 .../protocol/pure/PureClientVersions.java | 0 .../pure/v1/CorePureProtocolExtension.java | 0 .../v1/ProtocolToClassifierPathLoader.java | 0 .../v1/PureProtocolObjectMapperFactory.java | 0 .../extension/ConnectionFactoryExtension.java | 0 .../v1/extension/ProtocolSubTypeInfo.java | 0 .../v1/extension/PureProtocolExtension.java | 0 .../PureProtocolExtensionLoader.java | 0 .../v1/extension/TestAssertionEvaluator.java | 0 .../pure/v1/model/context/AlloySDLC.java | 0 .../v1/model/context/EngineErrorType.java | 0 .../pure/v1/model/context/LegacySDLC.java | 0 .../context/PackageableElementPointer.java | 0 .../model/context/PackageableElementType.java | 0 .../v1/model/context/PureModelContext.java | 0 .../model/context/PureModelContextData.java | 0 .../context/PureModelContextPointer.java | 0 .../model/context/PureModelContextText.java | 0 .../pure/v1/model/context/PureSDLC.java | 0 .../protocol/pure/v1/model/context/SDLC.java | 0 .../pure/v1/model/context/SDLCVisitor.java | 0 .../pure/v1/model/context/WorkspaceSDLC.java | 0 .../v1/model/data/DataElementReference.java | 0 .../pure/v1/model/data/EmbeddedData.java | 0 .../v1/model/data/EmbeddedDataHelper.java | 0 .../v1/model/data/EmbeddedDataVisitor.java | 0 .../v1/model/data/ExternalFormatData.java | 0 .../v1/model/data/ModelEmbeddedTestData.java | 0 .../v1/model/data/ModelInstanceTestData.java | 0 .../pure/v1/model/data/ModelStoreData.java | 0 .../pure/v1/model/data/ModelTestData.java | 0 .../executionOption/ExecutionOption.java | 0 .../executionPlan/CompositeExecutionPlan.java | 0 .../v1/model/executionPlan/ExecutionPlan.java | 0 .../executionPlan/SingleExecutionPlan.java | 0 .../nodes/AggregationAwareExecutionNode.java | 0 .../nodes/AllocationExecutionNode.java | 0 .../executionPlan/nodes/CompiledClass.java | 0 .../nodes/ConstantExecutionNode.java | 0 .../nodes/EnumValidationContext.java | 0 .../nodes/ErrorExecutionNode.java | 0 .../executionPlan/nodes/ExecutionNode.java | 0 .../nodes/ExecutionNodeVisitor.java | 0 .../FreeMarkerConditionalExecutionNode.java | 0 .../FunctionParametersValidationNode.java | 0 .../nodes/GraphFetchM2MExecutionNode.java | 0 .../model/executionPlan/nodes/JavaClass.java | 0 .../nodes/JavaPlatformImplementation.java | 0 .../MultiResultSequenceExecutionNode.java | 0 .../nodes/ParameterValidationContext.java | 0 .../ParameterValidationContextVisitor.java | 0 .../nodes/PlatformImplementation.java | 0 .../nodes/PlatformMergeExecutionNode.java | 0 .../nodes/PlatformUnionExecutionNode.java | 0 .../PureExpressionPlatformExecutionNode.java | 0 .../nodes/SequenceExecutionNode.java | 0 .../executionPlan/nodes/VariableInput.java | 0 .../DataQualityExecutionNode.java | 0 ...xternalFormatDeserializeExecutionNode.java | 0 ...xternalFormatExternalizeExecutionNode.java | 0 ...rnalFormatExternalizeTDSExecutionNode.java | 0 ...xternalFormatInternalizeExecutionNode.java | 0 .../ExternalFormatSerializeExecutionNode.java | 0 .../nodes/externalFormat/PathReference.java | 0 .../UrlStreamExecutionNode.java | 0 .../VariableResolutionExecutionNode.java | 0 .../GlobalGraphFetchExecutionNode.java | 0 .../graphFetch/GraphFetchExecutionNode.java | 0 .../LocalGraphFetchExecutionNode.java | 0 ...PlatformGlobalGraphFetchExecutionNode.java | 0 ...QualifierLocalGraphFetchExecutionNode.java | 0 ...eMappingGlobalGraphFetchExecutionNode.java | 0 .../XStorePropertyFetchDetails.java | 0 ...moryCrossStoreGraphFetchExecutionNode.java | 0 .../InMemoryGraphFetchExecutionNode.java | 0 ...MemoryPropertyGraphFetchExecutionNode.java | 0 .../InMemoryRootGraphFetchExecutionNode.java | 0 .../StoreStreamReadingExecutionNode.java | 0 .../executionPlan/result/ClassResultType.java | 0 .../result/DataTypeResultType.java | 0 .../result/PartialClassResultType.java | 0 .../executionPlan/result/PropertyMapping.java | 0 .../result/PropertyWithParameters.java | 0 .../executionPlan/result/ResultType.java | 0 .../result/SetImplementationPtr.java | 0 .../model/executionPlan/result/TDSColumn.java | 0 .../executionPlan/result/TDSResultType.java | 0 .../executionPlan/result/VoidResultType.java | 0 .../PackageableElement.java | 0 .../PackageableElementVisitor.java | 0 .../connection/Connection.java | 0 .../connection/ConnectionPointer.java | 0 .../connection/ConnectionVisitor.java | 0 .../connection/PackageableConnection.java | 0 .../packageableElement/data/DataElement.java | 0 .../domain/AggregationKind.java | 0 .../domain/Association.java | 0 .../packageableElement/domain/Class.java | 0 .../packageableElement/domain/Constraint.java | 0 .../domain/DefaultValue.java | 0 .../packageableElement/domain/Domain.java | 0 .../packageableElement/domain/EnumValue.java | 0 .../domain/Enumeration.java | 0 .../packageableElement/domain/Function.java | 0 .../packageableElement/domain/Measure.java | 0 .../packageableElement/domain/ModelUnit.java | 0 .../domain/Multiplicity.java | 0 .../domain/ParameterValue.java | 0 .../packageableElement/domain/Profile.java | 0 .../packageableElement/domain/Property.java | 0 .../domain/QualifiedProperty.java | 0 .../domain/StereotypePtr.java | 0 .../packageableElement/domain/TagPtr.java | 0 .../domain/TaggedValue.java | 0 .../model/packageableElement/domain/Unit.java | 0 .../externalFormat/Binding.java | 0 .../externalFormat/BindingTransformer.java | 0 .../externalFormat/ExternalFormatSchema.java | 0 .../ExternalFormatSchemaSet.java | 0 .../function/ConnectionTestData.java | 0 .../function/FunctionTest.java | 0 .../function/FunctionTestSuite.java | 0 .../function/StoreTestData.java | 0 .../mapping/AssociationMapping.java | 0 .../mapping/ClassMapping.java | 0 .../mapping/ClassMappingVisitor.java | 0 .../mapping/EnumValueMapping.java | 0 .../EnumValueMappingEnumSourceValue.java | 0 .../EnumValueMappingIntegerSourceValue.java | 0 .../mapping/EnumValueMappingSourceValue.java | 0 ...umValueMappingSourceValueDeserializer.java | 0 ...EnumValueMappingSourceValueSerializer.java | 0 .../EnumValueMappingStringSourceValue.java | 0 .../mapping/EnumerationMapping.java | 0 .../mapping/LocalMappingPropertyInfo.java | 0 .../packageableElement/mapping/Mapping.java | 0 .../mapping/MappingClass.java | 0 .../mapping/MappingInclude.java | 0 .../mapping/MappingIncludeMapping.java | 0 .../mapping/MappingOperation.java | 0 .../mapping/MergeOperationClassMapping.java | 0 .../mapping/OperationClassMapping.java | 0 .../mapping/PropertyMapping.java | 0 .../mapping/PropertyMappingVisitor.java | 0 .../mapping/PropertyPointer.java | 0 .../aggregationAware/AggregateFunction.java | 0 .../AggregateSetImplementationContainer.java | 0 .../AggregateSpecification.java | 0 .../AggregationAwareClassMapping.java | 0 .../AggregationAwarePropertyMapping.java | 0 .../aggregationAware/GroupByFunction.java | 0 .../ExpectedOutputMappingTestAssert.java | 0 .../mapping/mappingTest/InputData.java | 0 .../mapping/mappingTest/MappingTest.java | 0 .../mappingTest/MappingTestAssert.java | 0 .../mapping/mappingTest/MappingTestSuite.java | 0 .../mappingTest/MappingTest_Legacy.java | 0 .../mapping/mappingTest/StoreTestData.java | 0 .../xStore/XStoreAssociationMapping.java | 0 .../mapping/xStore/XStorePropertyMapping.java | 0 .../runtime/ConnectionStore.java | 0 .../runtime/ConnectionStores.java | 0 .../runtime/EngineRuntime.java | 0 .../runtime/IdentifiedConnection.java | 0 .../runtime/LegacyRuntime.java | 0 .../runtime/PackageableRuntime.java | 0 .../packageableElement/runtime/Runtime.java | 0 .../runtime/RuntimePointer.java | 0 .../SingleConnectionEngineRuntime.java | 0 .../runtime/StoreConnections.java | 0 .../section/DefaultCodeSection.java | 0 .../section/ImportAwareCodeSection.java | 0 .../packageableElement/section/Section.java | 0 .../section/SectionIndex.java | 0 .../model/packageableElement/store/Store.java | 0 .../store/StoreProviderPointer.java | 0 .../store/modelToModel/ModelStore.java | 0 .../connection/JsonModelConnection.java | 0 .../connection/ModelChainConnection.java | 0 .../connection/ModelConnection.java | 0 .../modelToModel/connection/ModelInput.java | 0 .../connection/ModelStringInput.java | 0 .../connection/PureModelConnection.java | 0 .../connection/XmlModelConnection.java | 0 .../modelToModel/mapping/ObjectInputData.java | 0 .../modelToModel/mapping/ObjectInputType.java | 0 .../mapping/PureInstanceClassMapping.java | 0 .../mapping/PurePropertyMapping.java | 0 .../pure/v1/model/relationType/Column.java | 0 .../v1/model/relationType/RelationType.java | 0 .../pure/v1/model/test/AtomicTest.java | 0 .../protocol/pure/v1/model/test/Test.java | 0 .../pure/v1/model/test/TestSuite.java | 0 .../pure/v1/model/test/TestVisitor.java | 0 .../pure/v1/model/test/assertion/EqualTo.java | 0 .../v1/model/test/assertion/EqualToJson.java | 0 .../model/test/assertion/TestAssertion.java | 0 .../test/assertion/TestAssertionVisitor.java | 0 .../test/assertion/status/AssertFail.java | 0 .../test/assertion/status/AssertPass.java | 0 .../assertion/status/AssertionStatus.java | 0 .../status/EqualToJsonAssertFail.java | 0 .../pure/v1/model/test/result/TestError.java | 0 .../v1/model/test/result/TestExecuted.java | 0 .../test/result/TestExecutionStatus.java | 0 .../pure/v1/model/test/result/TestResult.java | 0 .../ClassInstanceWrapper.java | 0 .../ValueSpecification.java | 0 .../ValueSpecificationVisitor.java | 0 .../v1/model/valueSpecification/Variable.java | 0 .../application/AppliedFunction.java | 0 .../application/AppliedProperty.java | 0 .../application/AppliedQualifiedProperty.java | 0 .../application/UnknownAppliedFunction.java | 0 .../raw/AbstractAppliedFunction.java | 0 .../valueSpecification/raw/CBoolean.java | 0 .../valueSpecification/raw/CByteArray.java | 0 .../model/valueSpecification/raw/CDate.java | 0 .../valueSpecification/raw/CDateTime.java | 0 .../valueSpecification/raw/CDecimal.java | 0 .../model/valueSpecification/raw/CFloat.java | 0 .../valueSpecification/raw/CInteger.java | 0 .../valueSpecification/raw/CLatestDate.java | 0 .../valueSpecification/raw/CStrictDate.java | 0 .../valueSpecification/raw/CStrictTime.java | 0 .../model/valueSpecification/raw/CString.java | 0 .../model/valueSpecification/raw/Class.java | 0 .../valueSpecification/raw/ClassInstance.java | 0 .../valueSpecification/raw/Collection.java | 0 .../raw/CoreClassInstances.java | 0 .../raw/DataTypeValueSpecification.java | 0 .../raw/DeprecatedValueSpecification.java | 0 .../v1/model/valueSpecification/raw/Enum.java | 0 .../valueSpecification/raw/EnumValue.java | 0 .../raw/GenericTypeInstance.java | 0 .../valueSpecification/raw/HackedClass.java | 0 .../valueSpecification/raw/HackedUnit.java | 0 .../valueSpecification/raw/KeyExpression.java | 0 .../model/valueSpecification/raw/Lambda.java | 0 .../v1/model/valueSpecification/raw/Many.java | 0 .../raw/MappingInstance.java | 0 .../v1/model/valueSpecification/raw/One.java | 0 .../raw/PackageableElementPtr.java | 0 .../valueSpecification/raw/PrimitiveType.java | 0 .../raw/PrimitiveValueSpecification.java | 0 .../valueSpecification/raw/UnitInstance.java | 0 .../valueSpecification/raw/UnitType.java | 0 .../valueSpecification/raw/Whatever.java | 0 .../raw/classInstance/AggregateValue.java | 0 .../ExecutionContextInstance.java | 0 .../raw/classInstance/Pair.java | 0 .../raw/classInstance/PureList.java | 0 .../raw/classInstance/RuntimeInstance.java | 0 .../classInstance/SerializationConfig.java | 0 .../raw/classInstance/TDSAggregateValue.java | 0 .../classInstance/TDSColumnInformation.java | 0 .../raw/classInstance/TDSSortInformation.java | 0 .../raw/classInstance/TdsOlapAggregation.java | 0 .../raw/classInstance/TdsOlapRank.java | 0 .../classInstance/graph/GraphFetchTree.java | 0 .../graph/GraphFetchTreeVisitor.java | 0 .../graph/PropertyGraphFetchTree.java | 0 .../graph/RootGraphFetchTree.java | 0 .../graph/SubTypeGraphFetchTree.java | 0 .../raw/classInstance/path/Path.java | 0 .../raw/classInstance/path/PathElement.java | 0 .../path/PropertyPathElement.java | 0 .../raw/classInstance/relation/ColSpec.java | 0 .../classInstance/relation/ColSpecArray.java | 0 .../relation/RelationStoreAccessor.java | 0 .../AnalyticsExecutionContext.java | 0 .../BaseExecutionContext.java | 0 .../executionContext/ExecutionContext.java | 0 ...ol.pure.v1.extension.PureProtocolExtension | 0 .../test/TestCompatibilityAndMigration.java | 0 .../test/TestLoadModelAndMapping.java | 0 .../protocol/test/TestProtocolUpdates.java | 0 .../protocol/test/TestPureContextPointer.java | 0 .../src/test/resources/full.json | 0 .../src/test/resources/log4j.properties | 0 .../mappingWithLegacyEnumValueMapping.json | 0 .../test/resources/simpleFunctionAfter.json | 0 .../test/resources/simpleFunctionBefore.json | 0 .../src/test/resources/split_v1_15_0.json | 0 .../legend-engine-protocol/pom.xml | 0 .../engine/protocol/AnyDeserializer.java | 0 .../legend/engine/protocol/Protocol.java | 0 .../pure/v1/model/SourceInformation.java | 0 .../engine/protocol/TestAnyDeserializer.java | 0 .../legend-engine-core-language-pure/pom.xml | 3 +- .../legend-engine-core-base/pom.xml | 34 + .../pom.xml | 13 +- .../ExternalFormatJavaCompilerExtension.java | 0 .../ExternalFormatExecutionExtension.java | 0 .../ExternalFormatRuntimeExtension.java | 0 .../ExternalFormatRuntimeExtensionLoader.java | 0 .../dependencies/ExternalDataAdder.java | 0 .../ExternalDataBooleanAdder.java | 0 .../dependencies/ExternalDataDoubleAdder.java | 0 .../dependencies/ExternalDataLongAdder.java | 0 .../ExternalDataModelProperty.java | 0 .../dependencies/ExternalDataObjectAdder.java | 0 .../runtime/dependencies/IExternalData.java | 0 .../dependencies/IExternalDataFactory.java | 0 .../shared/runtime/read/ExecutionHelper.java | 0 .../runtime/read/ExternalFormatReader.java | 0 .../ExternalFormatDefaultSerializer.java | 0 .../write/ExternalFormatSerializeResult.java | 0 .../runtime/write/ExternalFormatWriter.java | 0 .../shared/utils/ExternalFormatRuntime.java | 0 ...lan.execution.extension.ExecutionExtension | 0 ...latform.ExecutionPlanJavaCompilerExtension | 0 .../format/test/GeneratePlanDataClasses.java | 4 +- .../runtime/fixtures/firmModel/Address.java | 0 .../fixtures/firmModel/AddressType.java | 0 .../fixtures/firmModel/AddressUse.java | 0 .../runtime/fixtures/firmModel/Firm.java | 0 .../runtime/fixtures/firmModel/Person.java | 0 .../test/TestExternalFormatQueries.java | 6 +- .../pom.xml | 32 + .../legend-engine-external-format-api/pom.xml | 130 ++ .../model/api/ExternalFormatDescription.java | 0 .../format/model/api/ExternalFormats.java | 0 .../format/model/api/GenerateModelInput.java | 0 .../format/model/api/GenerateSchemaInput.java | 0 .../pom.xml | 94 ++ .../compiler/toPureGraph/BindingCompiler.java | 0 .../ExternalFormatCompilerExtension.java | 0 .../toPureGraph/HelperExternalFormat.java | 0 .../toPureGraph/SchemaSetCompiler.java | 0 ...er.toPureGraph.extension.CompilerExtension | 0 .../pom.xml | 68 + .../format/model/ExternalFormatExtension.java | 0 .../model/ExternalFormatExtensionLoader.java | 0 .../ExternalFormatSchemaException.java | 0 .../compile/ExternalSchemaCompileContext.java | 0 .../pom.xml | 148 +++ .../TestExampleSchemaFormatContract.java | 0 .../model/TestExternalFormatExtension.java | 0 .../ExampleExternalFormatExtension.java | 0 .../ExampleSchemaToModelConfiguration.java | 0 .../ModelToExampleSchemaConfiguration.java | 0 .../test/ExternalSchemaCompilationTest.java | 0 .../test/ExternalSchemaSetGrammarBuilder.java | 0 .../shared/format/model/test/ModelText.java | 0 .../shared/format/model/test/ModelTexts.java | 0 .../ModelToSchemaGenerationTest.java | 0 .../TestModelToExampleSchemaGeneration.java | 0 .../toModel/SchemaToModelGenerationTest.java | 0 .../TestExampleSchemaToModelGeneration.java | 0 .../test/TestExternalFormatCompilation.java | 0 .../TestExternalFormatGrammarComposer.java | 0 .../test/TestExternalFormatGrammarParser.java | 0 .../TestExternalFormatGrammarRoundtrip.java | 0 ...hared.format.model.ExternalFormatExtension | 0 .../pom.xml | 112 ++ .../GenerationConfiguration.java | 0 .../model/transformation/Generator.java | 0 ...ternalFormatSchemaGenerationExtension.java | 0 .../fromModel/ModelToSchemaConfiguration.java | 0 .../fromModel/ModelToSchemaGenerator.java | 0 ...xternalFormatModelGenerationExtension.java | 0 .../toModel/SchemaToModelConfiguration.java | 0 .../toModel/SchemaToModelGenerator.java | 0 .../pom.xml | 133 +- .../from/antlr4/ExternalFormatLexerGrammar.g4 | 0 .../antlr4/ExternalFormatParserGrammar.g4 | 0 .../ExternalFormatGrammarParserExtension.java | 0 .../from/ExternalFormatParseTreeWalker.java | 0 ...xternalFormatGrammarComposerExtension.java | 0 ....from.extension.PureGrammarParserExtension | 0 ....to.extension.PureGrammarComposerExtension | 0 .../pom.xml | 37 + .../pom.xml | 7 +- .../pom.xml | 34 +- .../code/core/CoreCodeRepositoryProvider.java | 0 ...lesystem.repository.CodeRepositoryProvider | 0 .../src/main/resources/core.definition.json | 0 .../main/resources/core/coreExtensions.pure | 0 .../core/external/format/json/fromJSON.pure | 0 .../core/external/format/json/json.pure | 0 .../external/format/json/jsonExtension.pure | 0 .../format/json/modelSerialization.pure | 0 .../format/json/tests/testFromJson.pure | 0 .../format/json/tests/testFromJson2.pure | 0 .../external/format/json/tests/testJson.pure | 0 .../format/json/tests/testToJson.pure | 0 .../format/json/tests/testToJson2.pure | 0 .../core/external/format/json/toJSON.pure | 0 .../core/external/format/yaml/metamodel.pure | 0 .../format/yaml/metamodel_diagram.pure | 0 .../yaml/serialization_yamlToString.pure | 0 .../format/yaml/tests/testtoyaml.pure | 0 .../core/legend/compiler/matchGenerator.pure | 0 .../objectReference/objectReference.pure | 0 .../core/legend/test/handlersTest.pure | 0 .../resources/core/legend/tools/devUtils.pure | 0 .../core/pure/binding/binding/binding.pure | 0 .../pure/binding/binding/binding_diagram.pure | 0 .../core/pure/binding/binding/mapping.pure | 0 .../core/pure/binding/binding/validation.pure | 0 .../executionPlan/executionPlan_diagram.pure | 0 .../executionPlan_generation.pure | 0 .../executionPlan/executionPlan_print.pure | 0 .../pure/binding/executionPlan/model.pure | 0 .../tests/executionPlanTests.pure | 0 .../binding/executionPlan/tests/model.pure | 0 .../core/pure/binding/extension.pure | 0 .../externalFormatContract.pure | 0 .../pure/binding/functions/functions.pure | 0 .../pure/v1_21_0/models/executionPlan.pure | 0 .../pure/v1_22_0/models/executionPlan.pure | 0 .../pure/v1_23_0/models/executionPlan.pure | 0 .../pure/v1_24_0/extension/extension.pure | 0 .../pure/v1_24_0/models/executionPlan.pure | 0 .../pure/v1_24_0/transfers/executionPlan.pure | 0 .../pure/v1_25_0/extension/extension.pure | 0 .../pure/v1_25_0/models/executionPlan.pure | 0 .../pure/v1_25_0/transfers/executionPlan.pure | 0 .../pure/v1_26_0/extension/extension.pure | 0 .../pure/v1_26_0/models/executionPlan.pure | 0 .../pure/v1_26_0/transfers/executionPlan.pure | 0 .../pure/v1_27_0/extension/extension.pure | 0 .../pure/v1_27_0/models/executionPlan.pure | 0 .../pure/v1_27_0/transfers/executionPlan.pure | 0 .../pure/v1_28_0/extension/extension.pure | 0 .../pure/v1_28_0/models/executionPlan.pure | 0 .../pure/v1_28_0/transfers/executionPlan.pure | 0 .../pure/v1_29_0/extension/extension.pure | 0 .../pure/v1_29_0/models/executionPlan.pure | 0 .../pure/v1_29_0/transfers/executionPlan.pure | 0 .../pure/v1_30_0/extension/extension.pure | 0 .../pure/v1_30_0/models/executionPlan.pure | 0 .../pure/v1_30_0/transfers/executionPlan.pure | 0 .../pure/v1_31_0/extension/extension.pure | 0 .../pure/v1_31_0/models/executionPlan.pure | 0 .../pure/v1_31_0/transfers/executionPlan.pure | 0 .../pure/v1_32_0/extension/extension.pure | 0 .../pure/v1_32_0/models/executionPlan.pure | 0 .../pure/v1_32_0/transfers/executionPlan.pure | 0 .../pure/v1_33_0/extension/extension.pure | 0 .../pure/v1_33_0/models/executionPlan.pure | 0 .../pure/v1_33_0/transfers/executionPlan.pure | 0 .../pure/vX_X_X/extension/extension.pure | 0 .../pure/vX_X_X/models/executionPlan.pure | 0 .../pure/vX_X_X/transfers/executionPlan.pure | 0 .../pure/binding/schemaSet/metamodel.pure | 0 .../binding/schemaSet/metamodel_diagram.pure | 0 .../binding/transformation/generation.pure | 0 .../tests/externalFormatContract.pure | 0 .../core/pure/binding/utils/utils.pure | 0 .../constraints/constraintsExtension.pure | 0 .../constraints/constraintsModelDiagram.pure | 0 .../corefunctions/collectionExtension.pure | 0 .../core/pure/corefunctions/constraints.pure | 0 .../pure/corefunctions/dateExtension.pure | 0 .../core/pure/corefunctions/ioExtension.pure | 0 .../pure/corefunctions/langExtension.pure | 0 .../pure/corefunctions/mathExtension.pure | 0 .../pure/corefunctions/metaExtension.pure | 0 .../corefunctions/milestoningExtension.pure | 0 .../corefunctions/multiplicityExtension.pure | 0 .../pure/corefunctions/stringExtension.pure | 0 .../pure/corefunctions/testExtension.pure | 0 .../tests/collectionExtension.pure | 0 .../tests/collections/testAnd.pure | 0 .../tests/collections/testContainsAll.pure | 0 .../collections/testGetPropertyValues.pure | 0 .../tests/collections/testGroupBy.pure | 0 .../tests/collections/testHead.pure | 0 .../tests/collections/testIntersection.pure | 0 .../tests/collections/testMap.pure | 0 .../tests/collections/testMapCollection.pure | 0 .../tests/collections/testMax.pure | 0 .../tests/collections/testMin.pure | 0 .../tests/collections/testOneOf.pure | 0 .../tests/collections/testPartition.pure | 0 .../tests/collections/testRemoveAll.pure | 0 .../collections/testRemoveDuplicates.pure | 0 .../tests/collections/testSortBy.pure | 0 .../corefunctions/tests/date/testDate.pure | 0 .../tests/date/testDateElementFunctions.pure | 0 .../tests/date/testDayEqualityFunctions.pure | 0 .../tests/date/testDayOfWeekArithmetic.pure | 0 .../tests/date/testDayOfWeekNumber.pure | 0 .../tests/date/testDurationArithmetic.pure | 0 .../tests/date/testFirstDayOf.pure | 0 .../tests/date/testMonthNumber.pure | 0 .../corefunctions/tests/date/testTime.pure | 0 .../corefunctions/tests/dateExtension.pure | 0 .../corefunctions/tests/lang/testCast.pure | 0 .../corefunctions/tests/lang/testDot.pure | 0 .../corefunctions/tests/lang/testIsFalse.pure | 0 .../corefunctions/tests/lang/testIsTrue.pure | 0 .../corefunctions/tests/langExtension.pure | 0 .../testInferenceOnFunctionExpression.pure | 0 .../tests/language/testLambda.pure | 0 .../tests/language/testMatching.pure | 0 .../language/testOpenVariablesOnLambda.pure | 0 .../language/testVariableNameSpaces.pure | 0 .../tests/math/mathExtension.pure | 0 .../corefunctions/tests/math/testAbs.pure | 0 .../corefunctions/tests/math/testAverage.pure | 0 .../corefunctions/tests/math/testMax.pure | 0 .../corefunctions/tests/math/testMin.pure | 0 .../corefunctions/tests/math/testSum.pure | 0 .../corefunctions/tests/math/testTrig.pure | 0 .../tests/math/testVariance.pure | 0 .../tests/meta/testAllSpecializations.pure | 0 .../corefunctions/tests/meta/testClass.pure | 0 .../tests/meta/testElementPath.pure | 0 .../tests/meta/testExtractEnumValue.pure | 0 .../tests/meta/testFunctionAsParameter.pure | 0 .../tests/meta/testFunctionReturnType.pure | 0 .../tests/meta/testIsAbstract.pure | 0 .../corefunctions/tests/meta/testIsAny.pure | 0 .../corefunctions/tests/metaExtension.pure | 0 .../tests/metaExtention_funcs.pure | 0 .../tests/multiplicity/testHasLowerBound.pure | 0 .../testIsMultiplicityConcrete.pure | 0 .../tests/multiplicity/testIsZeroOne.pure | 0 .../tests/string/testEqualIgnoreCase.pure | 0 .../tests/string/testLastIndexOf.pure | 0 .../corefunctions/tests/string/testLeft.pure | 0 .../tests/string/testMakeString.pure | 0 .../corefunctions/tests/string/testRight.pure | 0 .../tests/string/testToRepresentation.pure | 0 .../string/testToUpperFirstCharacter.pure | 0 .../corefunctions/tests/string/testUUID.pure | 0 .../corefunctions/tests/stringExtension.pure | 0 .../corefunctions/tests/test/testIsTest.pure | 0 .../tests/test/testIsTestElement.pure | 0 .../pure/corefunctions/tests/testModel.pure | 0 .../core/pure/corefunctions/unit.pure | 0 .../main/resources/core/pure/data/data.pure | 0 .../resources/core/pure/data/diagram.pure | 0 .../core/pure/dataQuality/dataQuality.pure | 0 .../documentation_extension.pure | 0 .../core/pure/enterprise/enterprise.pure | 0 .../pure/executionPlan/executionPlan.pure | 0 .../executionPlan/executionPlanFeature.pure | 0 .../executionPlan/executionPlan_diagram.pure | 0 .../executionPlan_execution.pure | 0 .../executionPlan_generation.pure | 0 .../executionPlan/executionPlan_print.pure | 0 .../core/pure/executionPlan/extensions.pure | 0 .../platformBinding/platformBinding.pure | 0 .../platformBinding/typeInfo/typeInfo.pure | 0 .../typeInfo/typeInfoTest.pure | 0 .../test/executionPlan_execution.pure | 0 .../test/testExecutionPlanFeatureFlag.pure | 0 .../core/pure/extensions/extension.pure | 0 .../core/pure/extensions/functions.pure | 0 .../core/pure/function/metamodel.pure | 0 .../main/resources/core/pure/graphFetch.pure | 0 .../graphFetch/domain/domainManagement.pure | 0 .../domain/tests/testDomainManagement.pure | 0 .../core/pure/graphFetch/graphExtension.pure | 0 .../core/pure/graphFetch/graphFetch.pure | 0 .../graphFetch/graphFetchExecutionPlan.pure | 0 .../pure/graphFetch/graphFetch_routing.pure | 0 .../subType/testOnSourceRoot.pure | 0 .../sourceTreeCalc/testSourceTreeCalc.pure | 0 .../tests/testCrossStoreGraphFetch.pure | 0 .../tests/testPropertyTreeConversion.pure | 0 .../pure/graphFetch/tests/testRouting.pure | 0 .../core/pure/graphFetch/tests/testUnion.pure | 0 .../core/pure/lineage/helperFunctions.pure | 0 .../core/pure/lineage/scanExecute.pure | 0 .../core/pure/lineage/scanMapping.pure | 0 .../core/pure/lineage/scanProject.pure | 0 .../core/pure/lineage/scanProperties.pure | 0 .../resources/core/pure/mapping/XStore.pure | 0 .../core/pure/mapping/mappingExtension.pure | 0 .../core/pure/mapping/metamodel.pure | 0 .../core/pure/mapping/modelToModel.pure | 0 .../core/pure/metamodel_diagram.pure | 0 .../core/pure/milestoning/milestoning.pure | 0 .../resources/core/pure/model/modelUnit.pure | 0 .../core/pure/model/modelUnitTests.pure | 0 .../core/pure/mutation/mutation.pure | 0 .../executionPlan_generation.pure | 0 .../generation/builder/generation.pure | 0 .../generation/builder/generation_test.pure | 0 .../generation/serialization/scan.pure | 0 .../generation/serialization/scanTest.pure | 0 .../core/pure/protocol/protocol.pure | 0 .../protocol/v1_18_0/extension/extension.pure | 0 .../v1_18_0/invocations/execution.pure | 0 .../v1_18_0/invocations/testLoadModels.pure | 0 .../pure/protocol/v1_18_0/models/diagram.pure | 0 .../v1_18_0/models/executionPlan.pure | 0 .../protocol/v1_18_0/models/metamodel.pure | 0 .../pure/protocol/v1_18_0/models/results.pure | 0 .../v1_18_0/scan/buildBasePureModel.pure | 0 .../v1_18_0/transfers/executionPlan.pure | 0 .../protocol/v1_18_0/transfers/mapping.pure | 0 .../protocol/v1_18_0/transfers/metamodel.pure | 0 .../protocol/v1_18_0/transfers/store.pure | 0 .../v1_18_0/transfers/valueSpecification.pure | 0 .../protocol/v1_19_0/extension/extension.pure | 0 .../v1_19_0/invocations/execution.pure | 0 .../v1_19_0/invocations/testLoadModels.pure | 0 .../pure/protocol/v1_19_0/models/diagram.pure | 0 .../v1_19_0/models/executionPlan.pure | 0 .../protocol/v1_19_0/models/metamodel.pure | 0 .../pure/protocol/v1_19_0/models/results.pure | 0 .../v1_19_0/scan/buildBasePureModel.pure | 0 .../v1_19_0/scan/buildPureModelAsText.pure | 0 .../v1_19_0/scan/testBuildPureModel.pure | 0 .../v1_19_0/transfers/executionPlan.pure | 0 .../protocol/v1_19_0/transfers/mapping.pure | 0 .../protocol/v1_19_0/transfers/metamodel.pure | 0 .../protocol/v1_19_0/transfers/store.pure | 0 .../v1_19_0/transfers/valueSpecification.pure | 0 .../protocol/v1_20_0/extension/extension.pure | 0 .../v1_20_0/invocations/execution.pure | 0 .../v1_20_0/invocations/testLoadModels.pure | 0 .../pure/protocol/v1_20_0/models/diagram.pure | 0 .../v1_20_0/models/executionPlan.pure | 0 .../protocol/v1_20_0/models/metamodel.pure | 0 .../pure/protocol/v1_20_0/models/results.pure | 0 .../v1_20_0/scan/buildBasePureModel.pure | 0 .../v1_20_0/scan/buildPureModelAsText.pure | 0 .../v1_20_0/scan/testBuildPureModel.pure | 0 .../v1_20_0/transfers/executionPlan.pure | 0 .../protocol/v1_20_0/transfers/mapping.pure | 0 .../protocol/v1_20_0/transfers/metamodel.pure | 0 .../protocol/v1_20_0/transfers/store.pure | 0 .../v1_20_0/transfers/valueSpecification.pure | 0 .../protocol/v1_21_0/extension/extension.pure | 0 .../v1_21_0/invocations/execution.pure | 0 .../v1_21_0/invocations/testLoadModels.pure | 0 .../pure/protocol/v1_21_0/models/diagram.pure | 0 .../v1_21_0/models/executionPlan.pure | 0 .../protocol/v1_21_0/models/metamodel.pure | 0 .../pure/protocol/v1_21_0/models/results.pure | 0 .../v1_21_0/scan/buildBasePureModel.pure | 0 .../v1_21_0/scan/buildPureModelAsText.pure | 0 .../v1_21_0/scan/testBuildPureModel.pure | 0 .../v1_21_0/transfers/executionPlan.pure | 0 .../protocol/v1_21_0/transfers/mapping.pure | 0 .../protocol/v1_21_0/transfers/metamodel.pure | 0 .../protocol/v1_21_0/transfers/store.pure | 0 .../v1_21_0/transfers/valueSpecification.pure | 0 .../protocol/v1_22_0/extension/extension.pure | 0 .../v1_22_0/invocations/execution.pure | 0 .../v1_22_0/invocations/testLoadModels.pure | 0 .../pure/protocol/v1_22_0/models/diagram.pure | 0 .../v1_22_0/models/executionPlan.pure | 0 .../protocol/v1_22_0/models/metamodel.pure | 0 .../pure/protocol/v1_22_0/models/results.pure | 0 .../v1_22_0/scan/buildBasePureModel.pure | 0 .../v1_22_0/scan/buildPureModelAsText.pure | 0 .../v1_22_0/scan/testBuildPureModel.pure | 0 .../v1_22_0/transfers/executionPlan.pure | 0 .../protocol/v1_22_0/transfers/mapping.pure | 0 .../protocol/v1_22_0/transfers/metamodel.pure | 0 .../protocol/v1_22_0/transfers/store.pure | 0 .../v1_22_0/transfers/valueSpecification.pure | 0 .../protocol/v1_23_0/extension/extension.pure | 0 .../v1_23_0/invocations/execution.pure | 0 .../v1_23_0/invocations/testLoadModels.pure | 0 .../pure/protocol/v1_23_0/models/diagram.pure | 0 .../v1_23_0/models/executionPlan.pure | 0 .../protocol/v1_23_0/models/metamodel.pure | 0 .../pure/protocol/v1_23_0/models/results.pure | 0 .../v1_23_0/scan/buildBasePureModel.pure | 0 .../v1_23_0/scan/buildPureModelAsText.pure | 0 .../v1_23_0/scan/testBuildPureModel.pure | 0 .../v1_23_0/transfers/executionPlan.pure | 0 .../protocol/v1_23_0/transfers/mapping.pure | 0 .../protocol/v1_23_0/transfers/metamodel.pure | 0 .../protocol/v1_23_0/transfers/store.pure | 0 .../v1_23_0/transfers/valueSpecification.pure | 0 .../protocol/v1_24_0/extension/extension.pure | 0 .../v1_24_0/invocations/execution.pure | 0 .../v1_24_0/invocations/testLoadModels.pure | 0 .../pure/protocol/v1_24_0/models/diagram.pure | 0 .../v1_24_0/models/executionPlan.pure | 0 .../protocol/v1_24_0/models/metamodel.pure | 0 .../pure/protocol/v1_24_0/models/results.pure | 0 .../v1_24_0/scan/buildBasePureModel.pure | 0 .../v1_24_0/scan/buildPureModelAsText.pure | 0 .../v1_24_0/scan/testBuildPureModel.pure | 0 .../v1_24_0/transfers/executionPlan.pure | 0 .../protocol/v1_24_0/transfers/mapping.pure | 0 .../protocol/v1_24_0/transfers/metamodel.pure | 0 .../protocol/v1_24_0/transfers/store.pure | 0 .../v1_24_0/transfers/valueSpecification.pure | 0 .../protocol/v1_25_0/extension/extension.pure | 0 .../v1_25_0/invocations/execution.pure | 0 .../v1_25_0/invocations/testLoadModels.pure | 0 .../pure/protocol/v1_25_0/models/diagram.pure | 0 .../v1_25_0/models/executionPlan.pure | 0 .../protocol/v1_25_0/models/metamodel.pure | 0 .../pure/protocol/v1_25_0/models/results.pure | 0 .../v1_25_0/scan/buildBasePureModel.pure | 0 .../v1_25_0/scan/buildPureModelAsText.pure | 0 .../v1_25_0/scan/testBuildPureModel.pure | 0 .../v1_25_0/transfers/executionPlan.pure | 0 .../protocol/v1_25_0/transfers/mapping.pure | 0 .../protocol/v1_25_0/transfers/metamodel.pure | 0 .../protocol/v1_25_0/transfers/store.pure | 0 .../v1_25_0/transfers/valueSpecification.pure | 0 .../protocol/v1_26_0/extension/extension.pure | 0 .../v1_26_0/invocations/execution.pure | 0 .../v1_26_0/invocations/testLoadModels.pure | 0 .../pure/protocol/v1_26_0/models/diagram.pure | 0 .../v1_26_0/models/executionPlan.pure | 0 .../protocol/v1_26_0/models/metamodel.pure | 0 .../pure/protocol/v1_26_0/models/results.pure | 0 .../v1_26_0/scan/buildBasePureModel.pure | 0 .../v1_26_0/scan/buildPureModelAsText.pure | 0 .../v1_26_0/scan/testBuildPureModel.pure | 0 .../v1_26_0/transfers/executionPlan.pure | 0 .../protocol/v1_26_0/transfers/mapping.pure | 0 .../protocol/v1_26_0/transfers/metamodel.pure | 0 .../protocol/v1_26_0/transfers/store.pure | 0 .../v1_26_0/transfers/valueSpecification.pure | 0 .../protocol/v1_27_0/extension/extension.pure | 0 .../v1_27_0/invocations/execution.pure | 0 .../v1_27_0/invocations/testLoadModels.pure | 0 .../pure/protocol/v1_27_0/models/diagram.pure | 0 .../v1_27_0/models/executionPlan.pure | 0 .../protocol/v1_27_0/models/metamodel.pure | 0 .../pure/protocol/v1_27_0/models/results.pure | 0 .../v1_27_0/scan/buildBasePureModel.pure | 0 .../v1_27_0/scan/buildPureModelAsText.pure | 0 .../v1_27_0/scan/testBuildPureModel.pure | 0 .../v1_27_0/transfers/executionPlan.pure | 0 .../protocol/v1_27_0/transfers/mapping.pure | 0 .../protocol/v1_27_0/transfers/metamodel.pure | 0 .../protocol/v1_27_0/transfers/store.pure | 0 .../v1_27_0/transfers/valueSpecification.pure | 0 .../protocol/v1_28_0/extension/extension.pure | 0 .../v1_28_0/invocations/execution.pure | 0 .../v1_28_0/invocations/testLoadModels.pure | 0 .../pure/protocol/v1_28_0/models/diagram.pure | 0 .../v1_28_0/models/executionPlan.pure | 0 .../protocol/v1_28_0/models/metamodel.pure | 0 .../pure/protocol/v1_28_0/models/results.pure | 0 .../v1_28_0/scan/buildBasePureModel.pure | 0 .../v1_28_0/scan/buildPureModelAsText.pure | 0 .../v1_28_0/scan/testBuildPureModel.pure | 0 .../v1_28_0/transfers/executionPlan.pure | 0 .../protocol/v1_28_0/transfers/mapping.pure | 0 .../protocol/v1_28_0/transfers/metamodel.pure | 0 .../protocol/v1_28_0/transfers/store.pure | 0 .../v1_28_0/transfers/valueSpecification.pure | 0 .../protocol/v1_29_0/extension/extension.pure | 0 .../v1_29_0/invocations/execution.pure | 0 .../invocations/testBuildExecutionInput.pure | 0 .../v1_29_0/invocations/testLoadModels.pure | 0 .../pure/protocol/v1_29_0/models/diagram.pure | 0 .../v1_29_0/models/executionPlan.pure | 0 .../protocol/v1_29_0/models/metamodel.pure | 0 .../pure/protocol/v1_29_0/models/results.pure | 0 .../v1_29_0/scan/buildBasePureModel.pure | 0 .../v1_29_0/scan/buildPureModelAsText.pure | 0 .../v1_29_0/scan/testBuildPureModel.pure | 0 .../v1_29_0/transfers/executionPlan.pure | 0 .../protocol/v1_29_0/transfers/mapping.pure | 0 .../protocol/v1_29_0/transfers/metamodel.pure | 0 .../protocol/v1_29_0/transfers/store.pure | 0 .../v1_29_0/transfers/valueSpecification.pure | 0 .../protocol/v1_30_0/extension/extension.pure | 0 .../v1_30_0/invocations/execution.pure | 0 .../invocations/testBuildExecutionInput.pure | 0 .../v1_30_0/invocations/testLoadModels.pure | 0 .../pure/protocol/v1_30_0/models/diagram.pure | 0 .../v1_30_0/models/executionPlan.pure | 0 .../protocol/v1_30_0/models/metamodel.pure | 0 .../pure/protocol/v1_30_0/models/results.pure | 0 .../v1_30_0/scan/buildBasePureModel.pure | 0 .../v1_30_0/scan/buildPureModelAsText.pure | 0 .../v1_30_0/scan/testBuildPureModel.pure | 0 .../v1_30_0/transfers/executionPlan.pure | 0 .../protocol/v1_30_0/transfers/mapping.pure | 0 .../protocol/v1_30_0/transfers/metamodel.pure | 0 .../protocol/v1_30_0/transfers/store.pure | 0 .../v1_30_0/transfers/valueSpecification.pure | 0 .../protocol/v1_31_0/extension/extension.pure | 0 .../v1_31_0/invocations/execution.pure | 0 .../invocations/testBuildExecutionInput.pure | 0 .../v1_31_0/invocations/testLoadModels.pure | 0 .../pure/protocol/v1_31_0/models/diagram.pure | 0 .../v1_31_0/models/executionPlan.pure | 0 .../protocol/v1_31_0/models/metamodel.pure | 0 .../pure/protocol/v1_31_0/models/results.pure | 0 .../v1_31_0/scan/buildBasePureModel.pure | 0 .../v1_31_0/scan/buildPureModelAsText.pure | 0 .../v1_31_0/scan/testBuildPureModel.pure | 0 .../v1_31_0/transfers/executionPlan.pure | 0 .../protocol/v1_31_0/transfers/mapping.pure | 0 .../protocol/v1_31_0/transfers/metamodel.pure | 0 .../protocol/v1_31_0/transfers/store.pure | 0 .../v1_31_0/transfers/valueSpecification.pure | 0 .../protocol/v1_32_0/extension/extension.pure | 0 .../v1_32_0/invocations/execution.pure | 0 .../invocations/testBuildExecutionInput.pure | 0 .../v1_32_0/invocations/testLoadModels.pure | 0 .../pure/protocol/v1_32_0/models/diagram.pure | 0 .../v1_32_0/models/executionPlan.pure | 0 .../protocol/v1_32_0/models/metamodel.pure | 0 .../pure/protocol/v1_32_0/models/results.pure | 0 .../v1_32_0/scan/buildBasePureModel.pure | 0 .../v1_32_0/scan/buildPureModelAsText.pure | 0 .../v1_32_0/scan/testBuildPureModel.pure | 0 .../v1_32_0/transfers/executionPlan.pure | 0 .../protocol/v1_32_0/transfers/mapping.pure | 0 .../protocol/v1_32_0/transfers/metamodel.pure | 0 .../protocol/v1_32_0/transfers/store.pure | 0 .../v1_32_0/transfers/valueSpecification.pure | 0 .../protocol/v1_33_0/extension/extension.pure | 0 .../v1_33_0/invocations/execution.pure | 0 .../invocations/testBuildExecutionInput.pure | 0 .../v1_33_0/invocations/testLoadModels.pure | 0 .../pure/protocol/v1_33_0/models/diagram.pure | 0 .../v1_33_0/models/executionPlan.pure | 0 .../protocol/v1_33_0/models/metamodel.pure | 0 .../pure/protocol/v1_33_0/models/results.pure | 0 .../v1_33_0/scan/buildBasePureModel.pure | 0 .../v1_33_0/scan/buildPureModelAsText.pure | 0 .../v1_33_0/scan/testBuildPureModel.pure | 0 .../v1_33_0/transfers/executionPlan.pure | 0 .../protocol/v1_33_0/transfers/mapping.pure | 0 .../protocol/v1_33_0/transfers/metamodel.pure | 0 .../protocol/v1_33_0/transfers/store.pure | 0 .../v1_33_0/transfers/valueSpecification.pure | 0 .../protocol/vX_X_X/extension/extension.pure | 0 .../vX_X_X/invocations/execution.pure | 0 .../invocations/testBuildExecutionInput.pure | 0 .../vX_X_X/invocations/testLoadModels.pure | 0 .../pure/protocol/vX_X_X/models/diagram.pure | 0 .../protocol/vX_X_X/models/executionPlan.pure | 0 .../protocol/vX_X_X/models/metamodel.pure | 0 .../pure/protocol/vX_X_X/models/results.pure | 0 .../vX_X_X/scan/buildBasePureModel.pure | 0 .../vX_X_X/scan/buildPureModelAsText.pure | 0 .../vX_X_X/scan/testBuildPureModel.pure | 0 .../vX_X_X/transfers/executionPlan.pure | 0 .../protocol/vX_X_X/transfers/mapping.pure | 0 .../protocol/vX_X_X/transfers/metamodel.pure | 0 .../pure/protocol/vX_X_X/transfers/store.pure | 0 .../vX_X_X/transfers/valueSpecification.pure | 0 .../pure/router/clustering/clustering.pure | 0 .../pure/router/deprecated/deprecated.pure | 0 .../router/extension/router_extension.pure | 0 .../pure/router/externalFormat/metamodel.pure | 0 .../pure/router/externalFormat/routing.pure | 0 .../pure/router/metamodel/clustering.pure | 0 .../core/pure/router/metamodel/diagram.pure | 0 .../core/pure/router/metamodel/routing.pure | 0 .../router/operations/router_operations.pure | 0 .../core/pure/router/platform/execution.pure | 0 .../core/pure/router/platform/metamodel.pure | 0 .../core/pure/router/platform/routing.pure | 0 .../core/pure/router/preeval/preeval.pure | 0 .../core/pure/router/preeval/tests.pure | 0 .../core/pure/router/printer/printer.pure | 0 .../core/pure/router/router_entry.pure | 0 .../core/pure/router/router_execution.pure | 0 .../core/pure/router/router_main.pure | 0 .../pure/router/routing/router_routing.pure | 0 .../core/pure/router/store/analytics.pure | 0 .../core/pure/router/store/builder.pure | 0 .../core/pure/router/store/cluster.pure | 0 .../core/pure/router/store/metamodel.pure | 0 .../core/pure/router/store/routing.pure | 0 .../core/pure/router/utils/utils.pure | 0 .../core/pure/runtime/runtimeExtension.pure | 0 .../resources/core/pure/section/section.pure | 0 .../pure/serialization/toPureGrammar.pure | 0 .../core/pure/store/storeContract.pure | 0 .../src/main/resources/core/pure/tds/tds.pure | 0 .../core/pure/tds/tdsExtensions.pure | 0 .../resources/core/pure/tds/tdsSchema.pure | 0 .../core/pure/tds/testTdsSchema.pure | 0 .../resources/core/pure/test/diagram.pure | 0 .../core/pure/test/testCollection.pure | 0 .../resources/core/pure/test/testable.pure | 0 .../pure/test/tests/testTestCollection.pure | 0 .../core/pure/tools/testProfiles.pure | 0 .../core/pure/tools/tools_extension.pure | 0 .../core/pure/treepath/treePath.pure | 0 .../main/resources/core/pure/valueSpec.pure | 0 .../aggregationAware/aggregationAware.pure | 0 .../store/aggregationAware/storeContract.pure | 0 .../main/resources/core/store/m2m/chain.pure | 0 .../core/store/m2m/executionPlan_diagram.pure | 0 .../resources/core/store/m2m/inMemory.pure | 0 .../core/store/m2m/storeContract.pure | 0 .../core/store/m2m/tests/createInstances.pure | 0 .../resources/core/store/m2m/tests/delta.pure | 0 .../core/store/m2m/tests/filter.pure | 0 .../store/m2m/tests/legend/autoMapping.pure | 0 .../tests/legend/chain/dataQualityChain.pure | 0 .../m2m/tests/legend/chain/filterChain.pure | 0 .../tests/legend/chain/parametersChain.pure | 0 .../m2m/tests/legend/chain/simpleChain.pure | 0 .../store/m2m/tests/legend/constraints.pure | 0 .../store/m2m/tests/legend/dataQuality.pure | 0 .../m2m/tests/legend/filterGraphFetch.pure | 0 .../m2m/tests/legend/filterInMapping.pure | 0 .../m2m/tests/legend/functionInMapping.pure | 0 .../tests/legend/graphWithAssociations.pure | 0 .../graphWithSubTypes/testOnSourceRoot.pure | 0 .../legend/graphWithoutAssociations.pure | 0 .../core/store/m2m/tests/legend/merge.pure | 0 .../legend/milestoning/MilestonedM2M.pure | 0 .../m2m/tests/legend/milestoning/model.pure | 0 .../m2m/tests/legend/multiStepFunctions.pure | 0 .../m2m/tests/legend/multiplicities.pure | 0 .../store/m2m/tests/legend/nilHandling.pure | 0 .../store/m2m/tests/legend/propertyUnion.pure | 0 .../m2m/tests/legend/qualifiedProperties.pure | 0 .../store/m2m/tests/legend/simpleObject.pure | 0 .../m2m/tests/legend/simpleObjectXml.pure | 0 .../sourceAssociationRequiredByMapping.pure | 0 .../legend/testComplexTypeAutoMapping.pure | 0 .../store/m2m/tests/legend/testEquality.pure | 0 .../store/m2m/tests/legend/testExplosion.pure | 0 .../m2m/tests/legend/testUnitMeasure.pure | 0 .../m2m/tests/legend/toFromSameName.pure | 0 .../core/store/m2m/tests/legend/union.pure | 0 .../store/m2m/tests/legend/unitMeasure.pure | 0 .../store/m2m/tests/legend/userFunctions.pure | 0 .../core/store/m2m/tests/legend/util.pure | 0 .../resources/core/store/m2m/tests/merge.pure | 0 .../core/store/m2m/tests/primitives.pure | 0 .../core/store/m2m/tests/shared.pure | 0 .../core/store/m2m/tests/simple.pure | 0 .../core/TestCoreCompiledStateIntegrity.java | 0 .../pure/code/core/TestIdBuilderCore.java | 0 .../engine/pure/code/core/Test_Pure_Core.java | 0 .../pom.xml | 8 +- ...reCoreFunctionsCodeRepositoryProvider.java | 0 ...lesystem.repository.CodeRepositoryProvider | 0 .../resources/core_functions.definition.json | 0 .../collection/containsAny.pure | 0 .../core_functions/collection/in.pure | 0 .../meta/getAllPackageableElements.pure | 0 .../core_functions/meta/hasStereotype.pure | 0 .../core_functions/meta/value4Tag.pure | 0 .../milestoning/edgePointPropertyName.pure | 0 ...alifiedPropertiesForEdgePointProperty.pure | 0 ...atedMilestoningDatePropertyStereotype.pure | 0 ...eneratedMilestoningPropertyStereotype.pure | 0 .../milestoning/isEdgePointProperty.pure | 0 ...ginalPropertyNameForEdgePointProperty.pure | 0 .../reverseMilestoningTransforms.pure | 0 .../code/core/Test_Pure_Core_Functions.java | 0 .../pom.xml | 2 +- .../core/BindingLegendPureCoreExtension.java | 0 .../core/CoreLegendPureCoreExtension.java | 0 ...ExternalFormatLegendPureCoreExtension.java | 0 .../core/FeatureLegendPureCoreExtension.java | 0 .../JavaBindingLegendPureCoreExtension.java | 0 .../code/core/LegendPureCoreExtension.java | 0 .../code/core/PureCoreExtensionLoader.java | 0 .../core/StoreLegendPureCoreExtension.java | 0 .../core/TestLegendPureCoreExtension.java | 0 ...ine.pure.code.core.LegendPureCoreExtension | 0 .../core/core/TestExtensionAvailable.java | 0 .../pom.xml | 2 +- .../pom.xml | 7 +- .../pom.xml | 6 +- .../pom.xml | 3 +- .../pom.xml | 0 .../pom.xml | 1 - .../pom.xml | 13 +- .../pom.xml | 10 +- .../pom.xml | 13 +- .../legend-engine-pure-platform-java/pom.xml | 0 .../pom.xml | 23 +- .../pom.xml | 2 +- .../legend-engine-core-pure}/pom.xml | 7 +- .../pom.xml | 12 +- .../legend/engine/query/pure/api/Execute.java | 0 .../pure/cache/PureExecutionCacheKey.java | 0 .../TestExecuteFunctionExecutionPlan.java | 0 .../test/inMemory/TestExecutionUtility.java | 0 .../TestM2MGrammarCompileAndExecute.java | 0 .../TestQueryExecutionWithParameters.java | 0 .../TestRelationalManagerOnExecution.java | 0 .../pure/cache/TestExecutionPlanCache.java | 0 .../pure/cache/TestPureExecutionCacheKey.java | 0 .../src/test/resources/log4j.properties | 0 .../simpleQueryWithSDLCInfo.json | 0 .../query/pure/api/test/inMemory/at_zero.pure | 0 .../query/pure/api/test/inMemory/derived.pure | 0 .../pure/api/test/inMemory/no_properties.pure | 0 ...ationalQueryExecutionInputEnumZeroOne.json | 0 ...tionalQueryExecutionInputNoParameters.json | 0 ...relationalQueryExecutionInputZeroMany.json | 0 .../pom.xml | 2 +- .../generation/api/TestDataGeneration.java | 0 .../model/TestDataGenerationInput.java | 0 .../model/TestDataGenerationResult.java | 0 .../service/TestDataGenerationService.java | 0 .../TestDataGenerationTest.java | 0 ...elationalModelTestDataGenerationInput.json | 0 .../legend-engine-test-framework/pom.xml | 2 +- .../framework/PureTestHelperFramework.java | 0 .../test/shared/framework/ServersState.java | 0 .../shared/framework/TestServerResource.java | 0 .../pom.xml | 11 +- .../extension/FunctionTestRunner.java | 0 .../extension/FunctionTestRunnerContext.java | 0 .../FunctionTestableRunnerExtension.java | 0 ...testable.extension.TestableRunnerExtension | 0 .../function/TestFunctionTestSuite.java | 0 ...e-function-test-model-join-relational.pure | 0 ...gend-testable-function-test-model-m2m.pure | 0 ...stable-function-test-model-relational.pure | 0 .../legend-testable-function-test-model.pure | 0 .../legend-engine-test-runner-mapping/pom.xml | 15 +- .../runner/mapping/MappingTestRunner.java | 0 .../runner/mapping/RichMappingTestResult.java | 0 .../mapping/extension/MappingTestRunner.java | 0 .../extension/MappingTestRunnerContext.java | 0 .../MappingTestableRunnerExtension.java | 0 ...testable.extension.TestableRunnerExtension | 0 .../mapping/TestLegacyMappingRunner.java | 0 .../runner/mapping/TestMappingTestRunner.java | 0 .../extension/TestMappingTestRunner.java | 0 .../TestRelationalMappingRunner.java | 0 .../resources/modelToModelMappingTests1.json | 0 .../resources/modelToModelMappingTests2.json | 0 .../legend-engine-test-runner-shared/pom.xml | 2 +- .../test/runner/shared/ComparisonError.java | 0 .../runner/shared/JsonNodeComparator.java | 0 .../engine/test/runner/shared/TestResult.java | 0 .../runner/shared/TestJsonNodeComparator.java | 0 .../legend-engine-test-server-shared/pom.xml | 2 +- .../test/shared/PureWithEngineHelper.java | 0 .../engine/server/test/shared/TestServer.java | 0 .../test/shared/TestServerConfiguration.java | 0 .../legend-engine-testable-api/pom.xml | 2 +- .../engine/testable/api/TestableApi.java | 0 .../legend-engine-testable/pom.xml | 2 +- .../engine/testable/TestableRunner.java | 0 .../assertion/TestAssertionEvaluator.java | 0 .../assertion/TestAssertionHelper.java | 0 .../connection/TestConnectionBuilder.java | 0 .../engine/testable/extension/TestRunner.java | 0 .../extension/TestableRunnerExtension.java | 0 .../TestableRunnerExtensionLoader.java | 0 .../engine/testable/model/RunTestsInput.java | 0 .../engine/testable/model/RunTestsResult.java | 0 .../testable/model/RunTestsTestableInput.java | 0 .../engine/testable/model/UniqueTestId.java | 0 .../assertion/TestTestAssertionEvaluator.java | 0 .../connection/TestTestConnectionBuilder.java | 0 .../pom.xml | 2 +- legend-engine-core/pom.xml | 10 +- .../pom.xml | 2 +- .../legend-engine-pure-ide-light-pure/pom.xml | 4 +- .../legend-engine-pure-ide-light/pom.xml | 185 ++- .../finos/legend/engine/ide/PureIDELight.java | 9 +- .../engine/ide/PureIDELight_NoExtension.java | 34 +- .../legend/engine/ide/PureIDEServer.java | 158 +++ .../engine/ide/ServerConfiguration.java | 32 + .../ide/SourceLocationConfiguration.java | 27 + .../legend/engine/ide/api/Activities.java | 88 ++ .../legend/engine/ide/api/FileManagement.java | 378 ++++++ .../legend/engine/ide/api/LifeCycle.java | 88 ++ .../finos/legend/engine/ide/api/Service.java | 62 + .../legend/engine/ide/api/Suggestion.java | 554 ++++++++ .../concept/AbstractRenameConceptEntry.java | 59 + .../engine/ide/api/concept/Concept.java | 118 ++ .../engine/ide/api/concept/GetConcept.java | 105 ++ .../api/concept/MovePackageableElements.java | 187 +++ .../engine/ide/api/concept/RenameConcept.java | 101 ++ .../ide/api/concept/RenameConceptEntry.java | 52 + .../ide/api/concept/RenameConceptUtility.java | 84 ++ .../ide/api/concept/RenamePackageEntry.java | 54 + .../ide/api/execution/function/Execute.java | 97 ++ .../function/manager/ContentType.java | 36 + .../function/manager/ExecutionManager.java | 297 +++++ .../function/manager/ExecutionRequest.java | 61 + .../manager/FunctionExecutionParser.java | 432 +++++++ .../function/manager/HttpInformation.java | 68 + .../function/manager/HttpResponseWriter.java | 32 + .../manager/HttpServletResponseWriter.java | 60 + .../function/manager/OutputFormat.java | 50 + .../ide/api/execution/go/ExecuteGo.java | 49 + .../engine/ide/api/execution/go/GoRun.java | 111 ++ .../ide/api/execution/test/CallBack.java | 67 + .../ide/api/execution/test/ExecuteTests.java | 174 +++ .../ide/api/execution/test/TestNode.java | 100 ++ .../ide/api/execution/test/TestResult.java | 54 + .../ide/api/execution/test/TestRun.java | 214 ++++ .../engine/ide/api/find/FindInSources.java | 177 +++ .../engine/ide/api/find/FindPureFile.java | 87 ++ .../engine/ide/api/find/FindTextPreview.java | 115 ++ .../engine/ide/api/source/UpdateSource.java | 233 ++++ .../engine/ide/helpers/JSONResponseTools.java | 110 ++ .../ide/helpers/response/Candidate.java | 48 + .../response/ExceptionTranslation.java | 342 +++++ .../response/IDEExceptionResponse.java | 37 + .../IDEParserOrCompilerException.java | 31 + ...ureUnmatchedFunctionExceptionResponse.java | 59 + ...UnresolvedIdentifierExceptionResponse.java | 50 + .../ide/helpers/response/IDEResponse.java | 55 + .../engine/ide/session/PureSession.java | 325 +++++ .../engine/ide/session/SimpleFunction.java | 27 + .../pom.xml | 10 + .../pom.xml | 24 +- .../core_external_execution.definition.json | 2 +- .../pom.xml | 12 +- .../pom.xml | 14 +- legend-engine-pure/pom.xml | 2 - .../pom.xml | 2 +- .../pom.xml | 4 + .../core_analytics_lineage.definition.json | 1 + .../pom.xml | 2 +- .../pom.xml | 4 + .../pom.xml | 2 +- .../pom.xml | 2 +- .../legend-engine-xt-arrow-runtime/pom.xml | 5 + .../legend-engine-xt-avro-pure/pom.xml | 2 +- .../pom.xml | 2 +- .../legend-engine-xt-changetoken-pure/pom.xml | 4 +- .../legend-engine-xt-daml-model/pom.xml | 13 +- .../pom.xml | 2 +- .../pom.xml | 14 +- .../pom.xml | 2 +- .../pom.xml | 8 +- .../pom.xml | 8 +- .../pom.xml | 2 +- .../pom.xml | 11 +- ...data_java_platform_binding.definition.json | 3 +- .../legend-engine-xt-flatdata-model/pom.xml | 25 +- .../legend-engine-xt-flatdata-pure/pom.xml | 2 +- .../legend-engine-xt-flatdata-runtime/pom.xml | 18 +- .../read/test/TestFlatDataQueries.java | 4 +- .../pom.xml | 4 +- .../legend-engine-xt-graphQL-compiler/pom.xml | 4 +- .../legend-engine-xt-graphQL-protocol/pom.xml | 2 +- .../legend-engine-xt-graphQL-pure/pom.xml | 4 +- ...ore_external_query_graphql.definition.json | 1 + .../legend-engine-xt-graphQL-query/pom.xml | 17 +- .../pom.xml | 9 +- .../legend-engine-xt-haskell-grammar/pom.xml | 2 +- .../legend-engine-xt-haskell-protocol/pom.xml | 2 +- .../pom.xml | 2 +- .../pom.xml | 2 +- .../pom.xml | 2 +- .../pom.xml | 6 +- .../core_hostedservice.definition.json | 1 + .../pom.xml | 210 ++++ ...PlatformBindingCodeRepositoryProvider.java | 28 + ...atJavaBindingLegendPureCoreExtension.java} | 4 +- ...ine.pure.code.core.LegendPureCoreExtension | 1 + ...lesystem.repository.CodeRepositoryProvider | 1 + ...rm_binding_external_format.definition.json | 14 + ...ingLegendJavaPlatformBindingExtension.pure | 0 .../externalFormat}/descriptor.pure | 0 .../externalFormat}/engineDependencies.pure | 0 .../externalFormat}/executionPlanTest.pure | 0 .../externalFormat}/shared.pure | 0 ...ure_ExternalFormatJavaPlatformBinding.java | 32 + .../java/binding/TestExtensionAvailable.java | 35 + .../pom.xml | 11 +- ...ine.pure.code.core.LegendPureCoreExtension | 3 +- ...core_java_platform_binding.definition.json | 3 +- .../core/Test_Pure_JavaPlatformBinding.java | 1 - .../java/binding/TestExtensionAvailable.java | 3 - legend-engine-xts-java/pom.xml | 1 + .../pom.xml | 16 +- ...json_java_platform_binding.definition.json | 3 +- .../legend-engine-xt-json-model/pom.xml | 20 +- .../legend-engine-xt-json-pure/pom.xml | 6 +- .../legend-engine-xt-json-runtime/pom.xml | 6 +- .../json/read/test/TestJsonSchemaQueries.java | 2 - .../legend-engine-xt-mastery-grammar/pom.xml | 4 +- .../pom.xml | 8 +- ...ore_mongodb_execution_test.definition.json | 1 + .../pom.xml | 24 +- .../pom.xml | 2 +- .../pom.xml | 6 +- ...godb_java_platform_binding.definition.json | 1 + .../pom.xml | 2 +- .../pom.xml | 8 +- .../legend-engine-xt-openapi-pure/pom.xml | 14 +- .../pom.xml | 7 +- .../pom.xml | 7 +- .../core_persistence_cloud.definition.json | 2 +- .../pom.xml | 15 +- .../legend-engine-xt-persistence-pure/pom.xml | 10 +- .../core_persistence.definition.json | 1 + .../pom.xml | 6 +- .../pom.xml | 2 +- .../pom.xml | 2 +- .../legend-engine-xt-protobuf-pure/pom.xml | 2 +- .../legend-engine-xt-protobuf/pom.xml | 15 +- .../pom.xml | 4 +- .../pom.xml | 8 +- .../pom.xml | 2 +- .../pom.xml | 2 +- .../pom.xml | 4 +- .../core_relational_bigquery.definition.json | 2 +- .../pom.xml | 2 +- .../pom.xml | 4 +- ...core_relational_databricks.definition.json | 14 +- .../pom.xml | 2 +- .../pom.xml | 7 +- .../pom.xml | 9 +- .../pom.xml | 7 +- .../pom.xml | 11 +- .../pom.xml | 2 +- .../pom.xml | 4 +- .../core_relational_redshift.definition.json | 14 +- .../pom.xml | 5 + .../pom.xml | 2 +- .../pom.xml | 13 +- .../pom.xml | 2 +- .../pom.xml | 2 +- .../pom.xml | 2 +- .../pom.xml | 2 +- .../pom.xml | 13 +- .../pom.xml | 11 +- .../core_relational_sybaseiq.definition.json | 14 +- .../pom.xml | 4 +- .../pom.xml | 2 +- .../pom.xml | 2 +- .../pom.xml | 2 +- .../pom.xml | 49 + .../api/RelationalExecutorInformation.java | 1 - .../pom.xml | 20 +- .../pom.xml | 1 + .../pom.xml | 14 +- .../pom.xml | 23 + ...onal_java_platform_binding.definition.json | 3 +- .../pom.xml | 31 +- .../pom.xml | 11 +- ...al_mutation_execution_test.definition.json | 1 + .../legend-engine-xt-rosetta-pure/pom.xml | 2 +- .../pom.xml | 9 +- .../pom.xml | 6 +- .../resources/core_service.definition.json | 1 + .../pom.xml | 4 +- .../pom.xml | 4 +- .../legend-engine-services-model/pom.xml | 2 +- .../legend-engine-test-runner-service/pom.xml | 11 +- .../pom.xml | 39 +- .../pom.xml | 34 +- .../pom.xml | 16 +- ...tore_java_platform_binding.definition.json | 3 +- .../pom.xml | 20 +- .../legend-engine-xt-snowflakeApp-api/pom.xml | 2 +- .../pom.xml | 2 +- .../pom.xml | 4 + .../core_snowflakeapp.definition.json | 2 +- .../legend-engine-xt-sql-compiler/pom.xml | 2 +- .../pom.xml | 4 +- .../legend-engine-xt-sql-protocol/pom.xml | 2 +- .../legend-engine-xt-sql-pure/pom.xml | 13 +- .../core_external_query_sql.definition.json | 1 + .../legend-engine-xt-sql-query/pom.xml | 15 +- .../pom.xml | 22 +- ..._xml_java_platform_binding.definition.json | 4 +- .../legend-engine-xt-xml-model/pom.xml | 20 +- .../legend-engine-xt-xml-pure/pom.xml | 4 +- .../legend-engine-xt-xml-runtime/pom.xml | 2 +- pom.xml | 105 +- 1962 files changed, 9960 insertions(+), 2223 deletions(-) rename legend-engine-config/{legend-engine-pure-code-compiled-core-configuration => legend-engine-configuration/legend-engine-configuration-contract-extension-pure}/pom.xml (95%) rename legend-engine-config/{legend-engine-pure-code-compiled-core-configuration => legend-engine-configuration/legend-engine-configuration-contract-extension-pure}/src/main/java/org/finos/legend/pure/code/core/CoreConfigurationCodeRepositoryProvider.java (100%) rename legend-engine-config/{legend-engine-pure-code-compiled-core-configuration => legend-engine-configuration/legend-engine-configuration-contract-extension-pure}/src/main/resources/META-INF/services/org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositoryProvider (100%) rename legend-engine-config/{legend-engine-pure-code-compiled-core-configuration => legend-engine-configuration/legend-engine-configuration-contract-extension-pure}/src/main/resources/core_configuration.definition.json (91%) rename legend-engine-config/{legend-engine-pure-code-compiled-core-configuration => legend-engine-configuration/legend-engine-configuration-contract-extension-pure}/src/main/resources/core_configuration/coreExtensions.pure (100%) rename legend-engine-config/{legend-engine-pure-code-compiled-core-configuration => legend-engine-configuration/legend-engine-configuration-contract-extension-pure}/src/test/java/org/finos/legend/engine/pure/code/core/Test_Pure_Core_Configuration.java (100%) create mode 100644 legend-engine-config/legend-engine-configuration/legend-engine-configuration-plan-generation-serialization/pom.xml rename legend-engine-config/legend-engine-configuration/{ => legend-engine-configuration-plan-generation-serialization}/src/main/java/org/finos/legend/engine/plan/generation/extension/LegendPlanGeneratorExtension.java (94%) rename legend-engine-config/legend-engine-configuration/{src/main/java/org/finos/legend/engine/plan/generation/transformers => legend-engine-configuration-plan-generation-serialization/src/main/java/org/finos/legend/engine/plan/generation/extension}/VersionPlanTransformer.java (94%) rename legend-engine-config/legend-engine-configuration/{ => legend-engine-configuration-plan-generation-serialization}/src/main/resources/META-INF/services/org.finos.legend.engine.plan.generation.extension.PlanGeneratorExtension (100%) delete mode 100644 legend-engine-config/legend-engine-connection-integration-tests/pom.xml create mode 100644 legend-engine-config/legend-engine-repl/legend-engine-repl-client/src/main/java/org/finos/legend/engine/repl/autocomplete/CompleterExtension.java rename legend-engine-config/legend-engine-repl/legend-engine-repl-client/src/main/java/org/finos/legend/engine/repl/{client => core}/Command.java (95%) create mode 100644 legend-engine-config/legend-engine-repl/legend-engine-repl-client/src/main/java/org/finos/legend/engine/repl/core/ReplExtension.java rename legend-engine-config/legend-engine-repl/legend-engine-repl-client/src/main/java/org/finos/legend/engine/repl/{client => core}/commands/Debug.java (80%) rename legend-engine-config/legend-engine-repl/legend-engine-repl-client/src/main/java/org/finos/legend/engine/repl/{client => core}/commands/Execute.java (66%) rename legend-engine-config/legend-engine-repl/legend-engine-repl-client/src/main/java/org/finos/legend/engine/repl/{client => core}/commands/Ext.java (90%) rename legend-engine-config/legend-engine-repl/legend-engine-repl-client/src/main/java/org/finos/legend/engine/repl/{client => core}/commands/Graph.java (87%) rename legend-engine-config/legend-engine-repl/legend-engine-repl-client/src/main/java/org/finos/legend/engine/repl/{client => core}/commands/Help.java (81%) rename legend-engine-config/legend-engine-repl/legend-engine-repl-client/src/main/java/org/finos/legend/engine/repl/{REPLInterface.java => core/legend/LegendInterface.java} (93%) rename legend-engine-config/legend-engine-repl/legend-engine-repl-client/src/main/java/org/finos/legend/engine/repl/{LocalREPL.java => core/legend/LocalLegendInterface.java} (97%) create mode 100644 legend-engine-config/legend-engine-repl/legend-engine-repl-relational/pom.xml create mode 100644 legend-engine-config/legend-engine-repl/legend-engine-repl-relational/src/main/java/org/finos/legend/engine/repl/relational/RelationalReplExtension.java create mode 100644 legend-engine-config/legend-engine-repl/legend-engine-repl-relational/src/main/java/org/finos/legend/engine/repl/relational/autocomplete/RelationalCompleterExtension.java create mode 100644 legend-engine-config/legend-engine-repl/legend-engine-repl-relational/src/main/java/org/finos/legend/engine/repl/relational/client/RClient.java rename legend-engine-config/legend-engine-repl/{legend-engine-repl-client/src/main/java/org/finos/legend/engine/repl/client => legend-engine-repl-relational/src/main/java/org/finos/legend/engine/repl/relational}/commands/DB.java (77%) rename legend-engine-config/legend-engine-repl/{legend-engine-repl-client/src/main/java/org/finos/legend/engine/repl/client => legend-engine-repl-relational/src/main/java/org/finos/legend/engine/repl/relational}/commands/Load.java (80%) rename legend-engine-config/legend-engine-repl/{legend-engine-repl-client/src/main/java/org/finos/legend/engine/repl => legend-engine-repl-relational/src/main/java/org/finos/legend/engine/repl/relational}/grid/Grid.java (98%) rename legend-engine-config/legend-engine-repl/{legend-engine-repl-client/src/main/java/org/finos/legend/engine/repl/database => legend-engine-repl-relational/src/main/java/org/finos/legend/engine/repl/relational/schema}/Column.java (93%) rename legend-engine-config/legend-engine-repl/{legend-engine-repl-client/src/main/java/org/finos/legend/engine/repl/database => legend-engine-repl-relational/src/main/java/org/finos/legend/engine/repl/relational/schema}/MetadataReader.java (97%) rename legend-engine-config/legend-engine-repl/{legend-engine-repl-client/src/main/java/org/finos/legend/engine/repl/database => legend-engine-repl-relational/src/main/java/org/finos/legend/engine/repl/relational/schema}/Table.java (90%) create mode 100644 legend-engine-config/legend-engine-repl/legend-engine-repl-relational/src/test/java/org/finos/legend/engine/repl/TestCompleter.java rename legend-engine-config/{ => legend-engine-server}/legend-engine-server-integration-tests/config/config.json (100%) rename legend-engine-config/{ => legend-engine-server}/legend-engine-server-integration-tests/pom.xml (99%) rename legend-engine-config/{ => legend-engine-server}/legend-engine-server-integration-tests/src/test/java/org/finos/legend/engine/server/integration/tests/AbstractMiddleTierExecutionTest.java (100%) rename legend-engine-config/{ => legend-engine-server}/legend-engine-server-integration-tests/src/test/java/org/finos/legend/engine/server/integration/tests/TestExecutionWithMiddleTierConnections.java (100%) rename legend-engine-config/{ => legend-engine-server}/legend-engine-server-integration-tests/src/test/java/org/finos/legend/engine/server/integration/tests/TestExecutionWithoutMiddleTierConnections.java (100%) rename legend-engine-config/{ => legend-engine-server}/legend-engine-server-integration-tests/src/test/java/org/finos/legend/engine/server/integration/tests/TestParameterizedValueSpecWithGrammar.java (100%) rename legend-engine-config/{ => legend-engine-server}/legend-engine-server-integration-tests/src/test/resources/plans/planWithSingleMiddleTierConnection.json (100%) rename legend-engine-config/{ => legend-engine-server}/legend-engine-server-integration-tests/src/test/resources/plans/planWithoutMiddleTierConnections.json (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/Dockerfile (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/config/config.json (100%) create mode 100644 legend-engine-config/legend-engine-server/legend-engine-server-rest/pom.xml rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/java/org/finos/legend/engine/server/Server.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/java/org/finos/legend/engine/server/ServerConfiguration.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/java/org/finos/legend/engine/server/core/BodySpanDecorator.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/java/org/finos/legend/engine/server/core/ServerShared.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/java/org/finos/legend/engine/server/core/api/CurrentUser.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/java/org/finos/legend/engine/server/core/api/Info.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/java/org/finos/legend/engine/server/core/api/Memory.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/java/org/finos/legend/engine/server/core/bundles/ErrorHandlingBundle.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/java/org/finos/legend/engine/server/core/configuration/DeploymentConfiguration.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/java/org/finos/legend/engine/server/core/configuration/ErrorHandlingConfiguration.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/java/org/finos/legend/engine/server/core/configuration/OpenTracingConfiguration.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/java/org/finos/legend/engine/server/core/exceptionMappers/CatchAllExceptionMapper.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/java/org/finos/legend/engine/server/core/exceptionMappers/JsonInformationExceptionMapper.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/java/org/finos/legend/engine/server/core/session/SessionAttributeBundle.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/java/org/finos/legend/engine/server/core/session/SessionInfo.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/java/org/finos/legend/engine/server/core/session/SessionTracker.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/java/org/finos/legend/engine/server/core/session/StoreExecutableManagerSessionListener.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/java/org/finos/legend/engine/server/core/session/api/SessionInfo.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/resources/docker/config/config.json (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/resources/docker/config/vault.properties (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/resources/web/legend_index.html (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/resources/web/login.html (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/main/resources/web/style.css (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/java/org/finos/legend/engine/server/PrintExtensions.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/java/org/finos/legend/engine/server/core/session/TestSessionTracker.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/java/org/finos/legend/engine/server/test/extensions/TestExtensions.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/java/org/finos/legend/engine/server/test/pureClient/executionPlan/Test_ExecutionPlan_JavaPlatform_CodeGeneration_UsingPureClient.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/java/org/finos/legend/engine/server/test/pureClient/executionPlan/Test_ExecutionPlan_JavaPlatform_UsingPureClient.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/java/org/finos/legend/engine/server/test/pureClient/other/Test_Engine_UsingPureClient.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/java/org/finos/legend/engine/server/test/pureClient/other/Test_ExternalFormat_UsingPureClientTestSuite.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/java/org/finos/legend/engine/server/test/pureClient/other/Test_LoadMappings_UsingPureClient.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/java/org/finos/legend/engine/server/test/pureClient/stores/Test_M2M_UsingPureClientTestSuite.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/java/org/finos/legend/engine/server/test/pureClient/stores/Test_RelationalGraphFetchParallel_UsingPureClientTestSuite.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/java/org/finos/legend/engine/server/test/pureClient/stores/Test_Relational_UsingPureClientTestSuite.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/java/org/finos/legend/engine/server/test/shared/MetadataTestServerResource.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/java/org/finos/legend/engine/server/test/shared/PureTestHelper.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/java/org/finos/legend/engine/server/test/shared/ServerTestServerResource.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/java/org/finos/legend/engine/server/test/shared/TestInfo.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/java/org/finos/legend/engine/server/test/shared/TestMetaDataServer.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/java/org/finos/legend/engine/server/test/shared/execute/PureFunctions.java (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/resources/log4j.properties (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/resources/org/finos/legend/engine/server/test/userTestConfig.json (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/resources/org/finos/legend/engine/server/test/userTestConfigParallelizationEnabled.json (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/resources/org/finos/legend/engine/server/test/userTestConfig_withFlowProvider.json (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/resources/org/finos/legend/engine/server/test/userTestConfig_withMetadataFromIDELight.json (100%) rename legend-engine-config/legend-engine-server/{ => legend-engine-server-rest}/src/test/resources/org/finos/legend/engine/server/test/userTestConfig_withVault.json (100%) rename legend-engine-config/{ => legend-engine-server}/legend-engine-server-support-core/pom.xml (99%) rename legend-engine-config/{ => legend-engine-server}/legend-engine-server-support-core/src/main/java/org/finos/legend/engine/server/support/server/BaseServer.java (100%) rename legend-engine-config/{ => legend-engine-server}/legend-engine-server-support-core/src/main/java/org/finos/legend/engine/server/support/server/config/BaseServerConfiguration.java (100%) rename legend-engine-config/{ => legend-engine-server}/legend-engine-server-support-core/src/main/java/org/finos/legend/engine/server/support/server/config/CORSConfiguration.java (100%) rename legend-engine-config/{ => legend-engine-server}/legend-engine-server-support-core/src/main/java/org/finos/legend/engine/server/support/server/config/ErrorHandlingConfiguration.java (100%) rename legend-engine-config/{ => legend-engine-server}/legend-engine-server-support-core/src/main/java/org/finos/legend/engine/server/support/server/exception/ServerException.java (100%) rename legend-engine-config/{ => legend-engine-server}/legend-engine-server-support-core/src/main/java/org/finos/legend/engine/server/support/server/monitoring/ServerMetricsHandler.java (100%) rename legend-engine-config/{ => legend-engine-server}/legend-engine-server-support-core/src/main/java/org/finos/legend/engine/server/support/server/resources/BaseResource.java (100%) rename legend-engine-config/{ => legend-engine-server}/legend-engine-server-support-core/src/main/java/org/finos/legend/engine/server/support/server/tools/StringTools.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/pom.xml (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/compilation/ExecutionPlanDependenciesFilter.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/compilation/GeneratePureConfig.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/domain/dataQuality/BasicChecked.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/domain/dataQuality/BasicDefect.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/domain/dataQuality/BasicRelativePathNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/domain/dataQuality/Constrained.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/domain/dataQuality/EnforcementLevel.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/domain/dataQuality/GraphContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/domain/dataQuality/IChecked.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/domain/dataQuality/IDefect.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/domain/dataQuality/RelativePathNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/domain/dataQuality/RuleType.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/domain/date/DayOfWeek.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/domain/date/DurationUnit.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/domain/date/Month.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/domain/date/PureDate.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/domain/date/Quarter.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/domain/graphFetch/IGraphInstance.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/inMemory/DataParsingException.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/inMemory/IGraphFetchM2MExecutionNodeContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/inMemory/IStoreStreamReader.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/inMemory/IStoreStreamReadingExecutionNodeContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/inMemory/graphFetch/IInMemoryCrossStoreGraphFetchExecutionNodeSpecifics.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/inMemory/graphFetch/IInMemoryPropertyGraphFetchExecutionNodeSpecifics.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/inMemory/graphFetch/IInMemoryRootGraphFetchExecutionNodeSpecifics.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/inMemory/graphFetch/IInMemoryRootGraphFetchMergeExecutionNodeSpecifics.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/inMemory/graphFetch/IStoreStreamReadingExecutionNodeSpecifics.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/platform/IGraphSerializer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/platform/IPlatformPureExpressionExecutionNodeGraphFetchMergeSpecifics.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/platform/IPlatformPureExpressionExecutionNodeGraphFetchUnionSpecifics.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/platform/IPlatformPureExpressionExecutionNodeSerializeSpecifics.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/platform/ISerializationWriter.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/platform/PredefinedExpressions.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/platform/graphFetch/IPlatformPrimitiveQualifierLocalGraphFetchExecutionNodeSpecifics.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/relational/IRelationalCreateAndPopulateTempTableExecutionNodeSpecifics.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/relational/IRelationalResult.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/relational/classResult/IRelationalClassInstantiationNodeExecutor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/relational/graphFetch/IRelationalChildGraphNodeExecutor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/relational/graphFetch/IRelationalClassQueryTempTableGraphFetchExecutionNodeSpecifics.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/relational/graphFetch/IRelationalCrossRootGraphNodeExecutor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/relational/graphFetch/IRelationalCrossRootQueryTempTableGraphFetchExecutionNodeSpecifics.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/relational/graphFetch/IRelationalGraphNodeExecutor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/relational/graphFetch/IRelationalPrimitiveQueryGraphFetchExecutionNodeSpecifics.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/relational/graphFetch/IRelationalRootGraphNodeExecutor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/relational/graphFetch/IRelationalRootQueryTempTableGraphFetchExecutionNodeSpecifics.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/serviceStore/IServiceParametersResolutionExecutionNodeSpecifics.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/shared/IConstantResult.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/shared/IExecutionNodeContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/shared/IReferencedObject.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/store/shared/IResult.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/main/java/org/finos/legend/engine/plan/dependencies/util/Library.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-dependencies/src/test/java/org/finos/legend/engine/plan/dependencies/util/TestLibrary.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-api/pom.xml (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-api/src/main/java/org/finos/legend/engine/plan/execution/api/ExecutePlan.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-api/src/main/java/org/finos/legend/engine/plan/execution/api/ExecutePlanLegacy.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-api/src/main/java/org/finos/legend/engine/plan/execution/api/ExecutePlanStrategic.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-api/src/main/java/org/finos/legend/engine/plan/execution/api/concurrent/ConcurrentExecutionNodeExecutorPoolInfo.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-api/src/main/java/org/finos/legend/engine/plan/execution/api/concurrent/ParallelGraphFetchExecutionExecutorPoolInfo.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-api/src/main/java/org/finos/legend/engine/plan/execution/api/request/ExecutionRequest.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-api/src/main/java/org/finos/legend/engine/plan/execution/api/request/RequestContextHelper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-api/src/main/java/org/finos/legend/engine/plan/execution/api/result/ResultManager.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-api/src/test/java/org/finos/legend/engine/plan/execution/api/request/RequestContextHelperTest.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-api/src/test/java/org/finos/legend/engine/plan/execution/api/result/TestResultManager.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-authorizer/pom.xml (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-authorizer/src/main/java/org/finos/legend/engine/plan/execution/authorization/ExecutionAuthorization.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-authorizer/src/main/java/org/finos/legend/engine/plan/execution/authorization/PlanExecutionAuthorizer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-authorizer/src/main/java/org/finos/legend/engine/plan/execution/authorization/PlanExecutionAuthorizerInput.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-authorizer/src/main/java/org/finos/legend/engine/plan/execution/authorization/PlanExecutionAuthorizerOutput.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-authorizer/src/main/java/org/finos/legend/engine/plan/execution/authorization/RootMiddleTierPlanExecutionAuthorizer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/pom.xml (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/main/java/org/finos/legend/engine/plan/execution/stores/inMemory/plugin/GraphFetchM2MExecutionNodeContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/main/java/org/finos/legend/engine/plan/execution/stores/inMemory/plugin/InMemory.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/main/java/org/finos/legend/engine/plan/execution/stores/inMemory/plugin/InMemoryExecutionNodeExecutor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/main/java/org/finos/legend/engine/plan/execution/stores/inMemory/plugin/InMemoryStoreExecutionState.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/main/java/org/finos/legend/engine/plan/execution/stores/inMemory/plugin/InMemoryStoreExecutor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/main/java/org/finos/legend/engine/plan/execution/stores/inMemory/plugin/InMemoryStoreExecutorBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/main/java/org/finos/legend/engine/plan/execution/stores/inMemory/plugin/InMemoryStoreState.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/main/java/org/finos/legend/engine/plan/execution/stores/inMemory/plugin/StoreStreamReaderBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/main/java/org/finos/legend/engine/plan/execution/stores/inMemory/plugin/StoreStreamReadingExecutionNodeContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/main/java/org/finos/legend/engine/plan/execution/stores/inMemory/plugin/StoreStreamReadingObjectsIterator.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/main/java/org/finos/legend/engine/plan/execution/stores/inMemory/result/graphFetch/StoreStreamReadingResult.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/main/java/org/finos/legend/engine/plan/execution/stores/inMemory/utils/InMemoryGraphFetchUtils.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/main/resources/META-INF/services/org.finos.legend.engine.plan.execution.stores.StoreExecutorBuilder (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/test/java/org/finos/legend/engine/plan/execution/stores/inMemory/TestPlanExecutor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/test/java/org/finos/legend/engine/plan/execution/stores/inMemory/autoMapping/TestComplexPropertyMappingWithoutExplicitClassMapping.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/test/java/org/finos/legend/engine/plan/execution/stores/inMemory/union/TestUnion.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/test/java/org/finos/legend/engine/plan/execution/stores/inMemory/utils/TestUtils.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/test/java/org/finos/legend/engine/plan/execution/stores/relational/plugin/FakeRelationalStoreExecutorBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/test/java/org/finos/legend/engine/plan/execution/stores/relational/plugin/FakeServiceStoreExecutorBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/test/resources/META-INF/services/org.finos.legend.engine.plan.execution.stores.StoreExecutorBuilder (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/test/resources/autoMapping/complexPropertyAutoMappingTest.pure (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/test/resources/log4j.properties (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/test/resources/plans/plan1.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution-store-inMemory/src/test/resources/union/unionTest.pure (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/pom.xml (99%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/PlanExecutionContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/PlanExecutor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/PlanExecutorInfo.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/cache/ExecutionCache.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/cache/ExecutionCacheBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/cache/ExecutionCacheStats.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/cache/executionPlan/ExecutionPlanCache.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/cache/executionPlan/ExecutionPlanCacheBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/cache/executionPlan/PlanCacheKey.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/cache/graphFetch/GraphFetchCache.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/cache/graphFetch/GraphFetchCacheByEqualityKeys.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/cache/graphFetch/GraphFetchCacheByTargetCrossKeys.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/cache/graphFetch/GraphFetchCacheKey.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/cache/graphFetch/GraphFetchCrossAssociationKeys.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/concurrent/ConcurrentExecutionNodeExecutorPool.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/concurrent/ConcurrentExecutionNodeExecutorPoolSerializer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/concurrent/ParallelGraphFetchExecutionExecutorPool.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/concurrent/ParallelGraphFetchExecutionExecutorPoolSerializer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/configuration/PlanExecutorConfiguration.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/debug/PersistGeneratedJavaClasses.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/extension/ExecutionExtension.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/extension/ExecutionExtensionLoader.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/graphFetch/AdaptiveBatching.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/graphFetch/AdaptiveGraphBatchStats.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/graphFetch/GraphFetchExecutionConfiguration.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/graphFetch/ParallelGraphFetchExecutionConfig.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/graphFetch/StoreGraphFetchExecutor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/nodes/ExecutionNodeExecutor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/nodes/helpers/ExecuteNodeParameterTransformationHelper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/nodes/helpers/ExecutionNodeClassResultHelper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/nodes/helpers/ExecutionNodePartialClassResultHelper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/nodes/helpers/ExecutionNodeResultHelper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/nodes/helpers/ExecutionNodeSerializerHelper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/nodes/helpers/ExecutionNodeTDSResultHelper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/nodes/helpers/freemarker/FreeMarkerExecutor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/nodes/helpers/freemarker/FreemarkerInstanceOfMethod.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/nodes/helpers/platform/DefaultExecutionNodeContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/nodes/helpers/platform/ExecutionNodeContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/nodes/helpers/platform/ExecutionNodeJavaPlatformHelper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/nodes/helpers/platform/ExecutionPlanJavaCompilerExtension.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/nodes/helpers/platform/ExecutionPlanJavaCompilerExtensionLoader.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/nodes/helpers/platform/JavaHelper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/nodes/state/ExecutionState.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/nodes/state/GraphExecutionState.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/parameterization/ParameterizedValueSpecification.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/planHelper/PrimitiveValueSpecificationToObjectVisitor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/ConstantResult.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/ErrorResult.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/ExecutionActivity.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/GenerationInfo.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/InputStreamResult.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/MultiResult.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/Result.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/ResultNormalizer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/ResultVisitor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/StreamingResult.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/TDSResult.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/builder/Builder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/builder/_class/ClassBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/builder/_class/ClassMappingInfo.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/builder/_class/PartialClassBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/builder/_class/PropertyInfo.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/builder/_class/PropertyWithParameters.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/builder/datatype/DataTypeBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/builder/stream/StreamBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/builder/tds/TDSBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/date/EngineDate.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/freemarker/PlanDateParameter.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/freemarker/PlanDateParameterDateFormat.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/freemarker/PlanDateParameterDateFormatFactory.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/graphFetch/DelayedGraphFetchResult.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/graphFetch/DelayedGraphFetchResultWithExecInfo.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/graphFetch/GraphFetchResult.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/graphFetch/GraphObjectsBatch.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/json/JsonSerializer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/json/JsonStreamToJsonDefaultSerializer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/json/JsonStreamToPureFormatSerializer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/json/JsonStreamingResult.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/json/RealizedJsonResult.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/object/StreamingObjectResult.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/object/StreamingObjectResultCSVSerializer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/object/StreamingObjectResultJSONSerializer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/serialization/CsvSerializer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/serialization/ExecutionResultObjectMapperFactory.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/serialization/RequestIdGenerator.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/serialization/SerializationFormat.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/serialization/Serializer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/serialization/TDSColumnWithSerializer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/serialization/TDSResultToCSVSerializer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/serialization/TDSResultToPureFormatSerializer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/serialization/TDSResultToPureTDSSerializer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/serialization/TDSResultToPureTDSToObjectSerializer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/serialization/TDSResultToRawTDSObjectSerializer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/serialization/TemporaryFile.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/transformer/SetImplTransformers.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/result/transformer/TransformerInput.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/stores/StoreExecutable.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/stores/StoreExecutableManager.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/stores/StoreExecutionState.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/stores/StoreExecutor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/stores/StoreExecutorBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/stores/StoreExecutorBuilderLoader.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/stores/StoreExecutorConfiguration.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/stores/StoreState.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/stores/StoreType.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/validation/FunctionParameterProcessor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/validation/FunctionParameterTypeValidator.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/validation/FunctionParametersNormalizer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/validation/FunctionParametersParametersValidation.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/validation/ParameterValidationContextExecutor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/validation/ServicePatternValidation.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/validation/TypeConvertor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/main/java/org/finos/legend/engine/plan/execution/validation/ValidationResult.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/test/java/org/finos/legend/engine/plan/execution/TestPlanExecutor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/test/java/org/finos/legend/engine/plan/execution/cache/test/TestExecutionCache.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/test/java/org/finos/legend/engine/plan/execution/concurrent/TestConcurrentExecutionNodeExecution.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/test/java/org/finos/legend/engine/plan/execution/dependencies/domain/date/test/TestPureDate.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/test/java/org/finos/legend/engine/plan/execution/graphFetch/TestAdaptiveBatching.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/test/java/org/finos/legend/engine/plan/execution/nodes/helpers/freemarker/TestFreeMarkerExecutor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/test/java/org/finos/legend/engine/plan/execution/parameterization/TestParameterizedValueSpecification.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/test/java/org/finos/legend/engine/plan/execution/result/TDSResultSerializationTest.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/test/java/org/finos/legend/engine/plan/execution/result/TestInputStreamResult.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/test/java/org/finos/legend/engine/plan/execution/result/test/TestEngineDate.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/test/java/org/finos/legend/engine/plan/execution/result/test/TestResultNormalizer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/test/java/org/finos/legend/engine/plan/execution/result/test/json/TestJsonStreamingResult.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/test/java/org/finos/legend/engine/plan/execution/result/test/serialization/TestExecutionResultObjectMapperFactory.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/test/java/org/finos/legend/engine/plan/execution/result/test/serialization/TestTemporaryFile.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/test/java/org/finos/legend/engine/plan/execution/result/transformer/TestSetImplTransformers.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/test/java/org/finos/legend/engine/plan/execution/stores/TestStoreExecutableManager.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/test/java/org/finos/legend/engine/plan/execution/validation/test/TestParametersValidation.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/test/resources/log4j.properties (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/test/resources/parameterization/lambdaWithFilter.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/legend-engine-executionPlan-execution/src/test/resources/parameterization/lambdaWithInFilter.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-execution/pom.xml (92%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-generation/legend-engine-executionPlan-generation/pom.xml (98%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-generation/legend-engine-executionPlan-generation/src/main/java/org/finos/legend/engine/plan/generation/PlanGenerator.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-generation/legend-engine-executionPlan-generation/src/main/java/org/finos/legend/engine/plan/generation/PlanWithDebug.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-generation/legend-engine-executionPlan-generation/src/main/java/org/finos/legend/engine/plan/generation/extension/PlanGeneratorExtension.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-generation/legend-engine-executionPlan-generation/src/main/java/org/finos/legend/engine/plan/generation/transformers/DevPlanTransformer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-generation/legend-engine-executionPlan-generation/src/main/java/org/finos/legend/engine/plan/generation/transformers/LegendPlanTransformers.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-generation/legend-engine-executionPlan-generation/src/main/java/org/finos/legend/engine/plan/generation/transformers/PlanTransformer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-generation/legend-engine-executionPlan-generation/src/main/java/org/finos/legend/engine/plan/platform/JavaPlatformBinder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-generation/legend-engine-executionPlan-generation/src/main/java/org/finos/legend/engine/plan/platform/PlanPlatform.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-generation/legend-engine-executionPlan-generation/src/main/java/org/finos/legend/engine/plan/platform/PlatformBinder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-generation/legend-engine-executionPlan-generation/src/main/java/org/finos/legend/engine/plan/platform/java/JavaSourceHelper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-generation/legend-engine-executionPlan-generation/src/test/java/org/finos/legend/engine/plan/platform/TestJavaSourceHelper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-executionPlan-generation/pom.xml (95%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler-api/pom.xml (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler-api/src/main/java/org/finos/legend/engine/language/pure/compiler/api/Compile.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler-api/src/main/java/org/finos/legend/engine/language/pure/compiler/api/CompileResult.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler-api/src/main/java/org/finos/legend/engine/language/pure/compiler/api/LambdaReturnTypeInput.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler-api/src/test/java/org/finos/legend/engine/language/pure/compiler/api/test/TestCompileApi.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler-api/src/test/resources/enumerationWithSystemProfileButNoSection.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler-api/src/test/resources/faultyEnumerationMappingWithMixedFormatSourceValues.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler-api/src/test/resources/log4j.properties (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/pom.xml (95%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/Compiler.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/MetadataWrapper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/ClassMappingFirstPassBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/ClassMappingSecondPassBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/ClassMappingThirdPassBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/CompileContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/ConnectionFirstPassBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/ConnectionSecondPassBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/CoreCompilerExtension.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/HelperConnectionBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/HelperFunctionBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/HelperMappingBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/HelperMeasureBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/HelperModelBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/HelperRuntimeBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/HelperValueSpecificationBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/IPureModel.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/Milestoning.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/MilestoningDatePropagationContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/MilestoningDatePropagationHelper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/PackageableElementFifthPassBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/PackageableElementFirstPassBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/PackageableElementFourthPassBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/PackageableElementSecondPassBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/PackageableElementThirdPassBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/PrimitiveProcessor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/ProcessingContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/PropertyMappingBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/PureModel.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/PureModelProcessParameter.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/RelationTypeHelper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/SourceInformationHelper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/TestCompilerHelper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/ValueSpecificationBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/ValueSpecificationBuilderForFuncExpr.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/Warning.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/data/EmbeddedDataFirstPassBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/data/core/EmbeddedDataCompilerHelper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/extension/CompilerExtension.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/extension/CompilerExtensionLoader.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/extension/CompilerExtensions.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/extension/Processor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/handlers/FunctionExpressionBuilderRegistrationInfo.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/handlers/FunctionHandler.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/handlers/FunctionHandlerDispatchBuilderInfo.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/handlers/FunctionHandlerRegistrationInfo.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/handlers/Handlers.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/handlers/IncludedMappingHandler.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/handlers/MappingIncludedMappingHandler.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/handlers/StoreProviderCompilerHelper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/handlers/UserDefinedFunctionHandler.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/handlers/builder/CompositeFunctionExpressionBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/handlers/builder/FunctionExpressionBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/handlers/builder/MultiHandlerFunctionExpressionBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/handlers/builder/RequiredInferenceSimilarSignatureFunctionExpressionBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/handlers/inference/Dispatch.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/handlers/inference/MostCommonMultiplicity.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/handlers/inference/MostCommonType.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/handlers/inference/ParametersInference.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/handlers/inference/ResolveTypeParameterInference.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/handlers/inference/ReturnInference.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/handlers/inference/TypeAndMultiplicity.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/test/ModelStoreTestConnectionFactory.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/test/TestBuilderHelper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/test/TestFirstPassBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/test/assertion/TestAssertionFirstPassBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/test/assertion/core/TestAssertionCompilerHelper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/validator/AssociationValidator.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/validator/ClassValidator.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/validator/EnumerationValidator.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/validator/FunctionValidator.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/validator/MappingValidator.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/validator/MappingValidatorContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/validator/ProfileValidator.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/validator/PureModelContextDataValidator.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/validator/StoreValidator.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/resources/META-INF/services/org.finos.legend.engine.language.pure.compiler.toPureGraph.extension.CompilerExtension (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/main/resources/META-INF/services/org.finos.legend.engine.protocol.pure.v1.extension.ConnectionFactoryExtension (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/java/org/finos/legend/engine/language/pure/compiler/test/TestCompilationFromGrammar.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/java/org/finos/legend/engine/language/pure/compiler/test/TestCompilationFromProtocol.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/java/org/finos/legend/engine/language/pure/compiler/test/TestHelperModelBuilder.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/java/org/finos/legend/engine/language/pure/compiler/test/TestRoundTripWithPureTransformation.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/java/org/finos/legend/engine/language/pure/compiler/test/fromGrammar/EmbeddedPureCompilerExtension.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/java/org/finos/legend/engine/language/pure/compiler/test/fromGrammar/TestAggregationAwareCompilationFromGrammar.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/java/org/finos/legend/engine/language/pure/compiler/test/fromGrammar/TestConnectionCompilationFromGrammar.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/java/org/finos/legend/engine/language/pure/compiler/test/fromGrammar/TestDataCompilationFromGrammar.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/java/org/finos/legend/engine/language/pure/compiler/test/fromGrammar/TestDomainCompilationFromGrammar.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/java/org/finos/legend/engine/language/pure/compiler/test/fromGrammar/TestFunctionCompilationFromGrammar.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/java/org/finos/legend/engine/language/pure/compiler/test/fromGrammar/TestMappingCompilationFromGrammar.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/java/org/finos/legend/engine/language/pure/compiler/test/fromGrammar/TestMilestonedPropertyUsageInFunctionExpresions.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/java/org/finos/legend/engine/language/pure/compiler/test/fromGrammar/TestMilestonedPropertyUsageInGraphFetch.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/java/org/finos/legend/engine/language/pure/compiler/test/fromGrammar/TestRelationNotUsingDatabaseAccessor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/java/org/finos/legend/engine/language/pure/compiler/test/fromGrammar/TestRuntimeCompilationFromGrammar.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/java/org/finos/legend/engine/language/pure/compiler/test/fromGrammar/TestSectionCompilationFromGrammar.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/java/org/finos/legend/engine/language/pure/compiler/test/fromProtocol/TestDomainCompilationFromProtocol.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/java/org/finos/legend/engine/language/pure/compiler/test/fromProtocol/TestMappingCompilationFromProtocol.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/extension/TestCompilerExtensions.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/resources/META-INF/services/org.finos.legend.engine.language.pure.compiler.toPureGraph.extension.CompilerExtension (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/resources/enumerationMappingWithNoSourceValueType.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/resources/enumerationMappingWithSourceType.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/resources/enumerationWithSystemProfileButNoSection.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/resources/faultyEnumerationMappingWithMixedFormatSourceValues.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/resources/functionExample.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/resources/functionWithDateTime.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/resources/functionWithDateTimeContainingPercent.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/resources/functionWithLambdaVariable.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/resources/functionWithUnderscores.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/resources/log4j.properties (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/resources/packageWithCorrectStrictTimeDomain.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/resources/packageWithReservedName.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/resources/packageWithWrongStrictTimeDomain.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/resources/profileUsedInClassExample.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-compiler/src/test/resources/queryWithPathVariable.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/pom.xml (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/main/java/org/finos/legend/engine/language/pure/grammar/api/grammarToJson/GrammarToJson.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/main/java/org/finos/legend/engine/language/pure/grammar/api/grammarToJson/GrammarToJsonInput.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/main/java/org/finos/legend/engine/language/pure/grammar/api/grammarToJson/TransformGrammarToJson.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/main/java/org/finos/legend/engine/language/pure/grammar/api/jsonToGrammar/JsonToGrammar.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/main/java/org/finos/legend/engine/language/pure/grammar/api/jsonToGrammar/JsonToGrammarInput.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/main/java/org/finos/legend/engine/language/pure/grammar/api/jsonToGrammar/LambdaInput.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/main/java/org/finos/legend/engine/language/pure/grammar/api/jsonToGrammar/TransformJsonToGrammar.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/java/org/finos/legend/engine/language/pure/grammar/api/test/TestGrammarGraphFetchApi.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/java/org/finos/legend/engine/language/pure/grammar/api/test/TestGrammarLambdaApi.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/java/org/finos/legend/engine/language/pure/grammar/api/test/TestGrammarModelApi.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/java/org/finos/legend/engine/language/pure/grammar/api/test/TestGrammarToJsonApi.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/java/org/finos/legend/engine/language/pure/grammar/api/test/TestGrammarValueSpecificationApi.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/java/org/finos/legend/engine/language/pure/grammar/api/test/TestJsonToGrammarApi.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/resources/enumerationMapping.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/resources/enumerationMappingWithNoSourceValueType.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/resources/functionWithDate.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/resources/functionWithDateContainingPercent.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/resources/functionWithUnderscores.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/resources/log4j.properties (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/resources/metaNewFunctionWithMultiParameters.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/resources/metaNewFunctionWithSingleParameter.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/resources/modelElementsWithoutMultiplesections.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/resources/modelElementsWithoutSection.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/resources/pureGenerationLambdaTest.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/resources/pureImportParsingTest.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/resources/pureParsingTest.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/resources/simpleFunctionWithParameters.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/resources/simpleFunctionWithoutParameters.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/resources/simpleModelMapping.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/resources/testGraphFetchTreeLambda.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/resources/testLambdaObj.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar-api/src/test/resources/unionModelMapping.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/README.md (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/pom.xml (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/CodeLexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/CodeParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/connection/ConnectionLexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/connection/ConnectionParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/connection/modelConnection/ModelConnectionLexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/connection/modelConnection/ModelConnectionParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/core/CoreFragmentGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/core/CoreLexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/core/CoreParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/core/M3LexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/core/M3ParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/data/DataLexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/data/DataParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/data/embedded/externalFormat/ExternalFormatDataLexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/data/embedded/externalFormat/ExternalFormatDataParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/data/embedded/modelStore/ModelStoreDataLexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/data/embedded/modelStore/ModelStoreDataParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/domain/DomainLexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/domain/DomainParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/graphFetchTree/GraphFetchTreeLexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/graphFetchTree/GraphFetchTreeParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/mapping/MappingLexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/mapping/MappingParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/mapping/aggregationAware/AggregationAwareLexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/mapping/aggregationAware/AggregationAwareParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/mapping/enumerationMapping/EnumerationMappingLexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/mapping/enumerationMapping/EnumerationMappingParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/mapping/operationClassMapping/OperationClassMappingLexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/mapping/operationClassMapping/OperationClassMappingParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/mapping/pureInstanceClassMapping/PureInstanceClassMappingLexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/mapping/pureInstanceClassMapping/PureInstanceClassMappingParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/mapping/xStoreAssociationMapping/XStoreAssociationMappingLexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/mapping/xStoreAssociationMapping/XStoreAssociationMappingParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/navigation/NavigationLexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/navigation/NavigationParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/runtime/RuntimeLexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/runtime/RuntimeParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/test/assertion/TestAssertionLexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/test/assertion/TestAssertionParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/test/assertion/equalTo/EqualToAssertionLexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/test/assertion/equalTo/EqualToAssertionParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/test/assertion/equalToJson/EqualToJsonAssertionLexerGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/test/assertion/equalToJson/EqualToJsonAssertionParserGrammar.g4 (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/CorePureGrammarParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/DEPRECATED_PureGrammarParserLibrary.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/DEPRECATED_SectionGrammarParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/ParseTreeWalkerSourceInformation.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/ParserErrorListener.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/PureGrammarParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/PureGrammarParserContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/PureGrammarParserUtility.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/PureIslandGrammarSourceCode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/SectionSourceCode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/SourceCodeParserInfo.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/connection/ConnectionParseTreeWalker.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/connection/ConnectionParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/connection/ConnectionValueSourceCode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/connection/ModelConnectionParseTreeWalker.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/data/DataParseTreeWalker.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/data/embedded/ExternalFormatEmbeddedDataParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/data/embedded/HelperEmbeddedDataGrammarParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/data/embedded/ModelStoreDataParseTreeWalker.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/data/embedded/ModelStoreEmbeddedDataParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/data/embedded/ReferenceEmbeddedDataParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/domain/DateParseTreeWalker.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/domain/DomainParseTreeWalker.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/domain/DomainParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/domain/GraphFetchTreeParseTreeWalker.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/domain/NavigationParseTreeWalker.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/domain/ParserTreeWalkerUtility.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/domain/StrictTimeParseTreeWalker.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/extension/ConnectionValueParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/extension/EmbeddedPureParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/extension/MappingElementParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/extension/MappingTestInputDataParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/extension/PureGrammarParserExtension.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/extension/PureGrammarParserExtensionLoader.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/extension/PureGrammarParserExtensions.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/extension/SectionParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/extension/data/EmbeddedDataParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/extension/test/assertion/TestAssertionParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/mapping/AggregationAwareMappingParseTreeWalker.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/mapping/EnumerationMappingParseTreeWalker.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/mapping/MappingElementSourceCode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/mapping/MappingIncludeParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/mapping/MappingParseTreeWalker.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/mapping/MappingParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/mapping/OperationClassMappingParseTreeWalker.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/mapping/PureInstanceClassMappingParseTreeWalker.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/mapping/XStoreAssociationMappingParseTreeWalker.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/relation/RelationStoreAccessorPureParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/runtime/RuntimeParseTreeWalker.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/runtime/RuntimeParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/runtime/StoreProviderPointerFactory.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/test/assertion/EqualToGrammarParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/test/assertion/EqualToJsonGrammarParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/test/assertion/HelperTestAssertionGrammarParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/to/CorePureGrammarComposer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/to/DEPRECATED_PureGrammarComposerCore.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/to/HelperConnectionGrammarComposer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/to/HelperDomainGrammarComposer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/to/HelperMappingGrammarComposer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/to/HelperRuntimeGrammarComposer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/to/HelperValueSpecificationGrammarComposer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/to/PureGrammarComposer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/to/PureGrammarComposerContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/to/PureGrammarComposerUtility.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/to/data/HelperEmbeddedDataGrammarComposer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/to/data/ModelStoreDataGrammarComposer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/to/extension/ContentWithType.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/to/extension/PureGrammarComposerExtension.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/to/extension/PureGrammarComposerExtensionLoader.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/to/test/assertion/HelperTestAssertionGrammarComposer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/resources/META-INF/services/org.finos.legend.engine.language.pure.grammar.from.extension.PureGrammarParserExtension (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/main/resources/META-INF/services/org.finos.legend.engine.language.pure.grammar.to.extension.PureGrammarComposerExtension (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/TestGrammarParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/TestGrammarRoundtrip.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/from/TestMappingGrammarFrom.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/from/TestMixedBooleanArithmeticConstraint.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/parser/TestConnectionGrammarParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/parser/TestDataGrammarParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/parser/TestDomainGrammarParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/parser/TestEmbeddedPureExtension.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/parser/TestMappingGrammarParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/parser/TestRuntimeGrammarParser.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/roundtrip/TestConnectionGrammarRoundtrip.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/roundtrip/TestDataGrammarRoundtrip.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/roundtrip/TestDomainGrammarRoundtrip.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/roundtrip/TestLambdaPrettyRendering.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/roundtrip/TestLambdaRoundtrip.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/roundtrip/TestMappingGrammarRoundtrip.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/roundtrip/TestRelation.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/roundtrip/TestRuntimeGrammarRoundtrip.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/roundtrip/TestSectionRoundtrip.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/roundtrip/embedded/TestExtendableEmbedded.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/roundtrip/embedded/extensions/EmbeddedPureParserExtension.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/roundtrip/embedded/extensions/GrammarComposerExtension.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/roundtrip/embedded/extensions/GrammarParserExtension.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/roundtrip/embedded/extensions/NewValueSpecificationForTest.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/roundtrip/embedded/extensions/ProtocolExtension.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/roundtrip/valueSpecification/TestPrimitives.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/java/org/finos/legend/engine/language/pure/grammar/test/to/TestMappingGrammarTo.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/resources/META-INF/services/org.finos.legend.engine.language.pure.grammar.from.extension.PureGrammarParserExtension (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/resources/META-INF/services/org.finos.legend.engine.language.pure.grammar.to.extension.PureGrammarComposerExtension (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/resources/META-INF/services/org.finos.legend.engine.protocol.pure.v1.extension.PureProtocolExtension (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/resources/SimpleAggregationAwareMapping.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/resources/SimpleM2MMapping.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/resources/SimpleMixedBooleanArithmeticConstraint.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/resources/log4j.properties (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/resources/simpleIncludeMapping.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-grammar/src/test/resources/simpleIncludeMappingWithOutdatedProperty.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-modelManager-sdlc/pom.xml (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-modelManager-sdlc/src/main/java/org/finos/legend/engine/language/pure/modelManager/sdlc/SDLCFetcher.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-modelManager-sdlc/src/main/java/org/finos/legend/engine/language/pure/modelManager/sdlc/SDLCLoader.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-modelManager-sdlc/src/main/java/org/finos/legend/engine/language/pure/modelManager/sdlc/alloy/AlloySDLCLoader.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-modelManager-sdlc/src/main/java/org/finos/legend/engine/language/pure/modelManager/sdlc/api/MetadataServerInfo.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-modelManager-sdlc/src/main/java/org/finos/legend/engine/language/pure/modelManager/sdlc/configuration/MetaDataServerConfiguration.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-modelManager-sdlc/src/main/java/org/finos/legend/engine/language/pure/modelManager/sdlc/configuration/MetadataServerPac4jConfiguration.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-modelManager-sdlc/src/main/java/org/finos/legend/engine/language/pure/modelManager/sdlc/configuration/MetadataServerPrivateAccessTokenConfiguration.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-modelManager-sdlc/src/main/java/org/finos/legend/engine/language/pure/modelManager/sdlc/configuration/PureServerConnectionConfiguration.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-modelManager-sdlc/src/main/java/org/finos/legend/engine/language/pure/modelManager/sdlc/configuration/ServerConnectionConfiguration.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-modelManager-sdlc/src/main/java/org/finos/legend/engine/language/pure/modelManager/sdlc/pure/PureServerLoader.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-modelManager-sdlc/src/main/java/org/finos/legend/engine/language/pure/modelManager/sdlc/workspace/WorkspaceSDLCLoader.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-modelManager-sdlc/src/test/java/org/finos/legend/engine/language/pure/modelManager/sdlc/TestSDLCLoader.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-modelManager/pom.xml (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-modelManager/src/main/java/org/finos/legend/engine/language/pure/modelManager/ModelLoader.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-modelManager/src/main/java/org/finos/legend/engine/language/pure/modelManager/ModelManager.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-language-pure-modelManager/src/main/test/org/finos/legend/engine/language/pure/modelManager/test/TestModelManagerPureModelCaching.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-api/pom.xml (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-api/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/PureProtocol.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-generation-pure/pom.xml (98%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-generation-pure/src/main/java/org/finos/legend/pure/code/core/CoreProtocolGenerationCodeRepositoryProvider.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-generation-pure/src/main/resources/META-INF/services/org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositoryProvider (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-generation-pure/src/main/resources/core_protocol_generation.definition.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-generation-pure/src/main/resources/core_protocol_generation/generation.pure (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-generation-pure/src/main/resources/core_protocol_generation/generation_test.pure (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-generation-pure/src/test/java/org/finos/legend/engine/pure/code/core/Test_Pure_JavaProtocolGeneration.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-generation/pom.xml (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-generation/src/main/java/org/finos/legend/engine/protocol/generation/GenerateMetaClasses.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-generation/src/main/java/org/finos/legend/engine/protocol/generation/GenerateMetamodelToProtocolTranslator.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-generation/src/main/java/org/finos/legend/engine/protocol/generation/GenerateProtocolToMetamodelTranslator.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-generation/src/main/java/org/finos/legend/engine/protocol/generation/GenerationArgument.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/pom.xml (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/PureClientVersions.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/CorePureProtocolExtension.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/ProtocolToClassifierPathLoader.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/PureProtocolObjectMapperFactory.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/extension/ConnectionFactoryExtension.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/extension/ProtocolSubTypeInfo.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/extension/PureProtocolExtension.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/extension/PureProtocolExtensionLoader.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/extension/TestAssertionEvaluator.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/context/AlloySDLC.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/context/EngineErrorType.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/context/LegacySDLC.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/context/PackageableElementPointer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/context/PackageableElementType.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/context/PureModelContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/context/PureModelContextData.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/context/PureModelContextPointer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/context/PureModelContextText.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/context/PureSDLC.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/context/SDLC.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/context/SDLCVisitor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/context/WorkspaceSDLC.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/data/DataElementReference.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/data/EmbeddedData.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/data/EmbeddedDataHelper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/data/EmbeddedDataVisitor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/data/ExternalFormatData.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/data/ModelEmbeddedTestData.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/data/ModelInstanceTestData.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/data/ModelStoreData.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/data/ModelTestData.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionOption/ExecutionOption.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/CompositeExecutionPlan.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/ExecutionPlan.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/SingleExecutionPlan.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/AggregationAwareExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/AllocationExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/CompiledClass.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/ConstantExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/EnumValidationContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/ErrorExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/ExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/ExecutionNodeVisitor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/FreeMarkerConditionalExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/FunctionParametersValidationNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/GraphFetchM2MExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/JavaClass.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/JavaPlatformImplementation.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/MultiResultSequenceExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/ParameterValidationContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/ParameterValidationContextVisitor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/PlatformImplementation.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/PlatformMergeExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/PlatformUnionExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/PureExpressionPlatformExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/SequenceExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/VariableInput.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/externalFormat/DataQualityExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/externalFormat/ExternalFormatDeserializeExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/externalFormat/ExternalFormatExternalizeExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/externalFormat/ExternalFormatExternalizeTDSExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/externalFormat/ExternalFormatInternalizeExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/externalFormat/ExternalFormatSerializeExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/externalFormat/PathReference.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/externalFormat/UrlStreamExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/externalFormat/VariableResolutionExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/graphFetch/GlobalGraphFetchExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/graphFetch/GraphFetchExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/graphFetch/LocalGraphFetchExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/graphFetch/PlatformGlobalGraphFetchExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/graphFetch/PlatformPrimitiveQualifierLocalGraphFetchExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/graphFetch/StoreMappingGlobalGraphFetchExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/graphFetch/XStorePropertyFetchDetails.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/graphFetch/store/inMemory/InMemoryCrossStoreGraphFetchExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/graphFetch/store/inMemory/InMemoryGraphFetchExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/graphFetch/store/inMemory/InMemoryPropertyGraphFetchExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/graphFetch/store/inMemory/InMemoryRootGraphFetchExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/nodes/graphFetch/store/inMemory/StoreStreamReadingExecutionNode.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/result/ClassResultType.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/result/DataTypeResultType.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/result/PartialClassResultType.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/result/PropertyMapping.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/result/PropertyWithParameters.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/result/ResultType.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/result/SetImplementationPtr.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/result/TDSColumn.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/result/TDSResultType.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/executionPlan/result/VoidResultType.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/PackageableElement.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/PackageableElementVisitor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/connection/Connection.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/connection/ConnectionPointer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/connection/ConnectionVisitor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/connection/PackageableConnection.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/data/DataElement.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/domain/AggregationKind.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/domain/Association.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/domain/Class.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/domain/Constraint.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/domain/DefaultValue.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/domain/Domain.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/domain/EnumValue.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/domain/Enumeration.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/domain/Function.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/domain/Measure.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/domain/ModelUnit.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/domain/Multiplicity.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/domain/ParameterValue.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/domain/Profile.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/domain/Property.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/domain/QualifiedProperty.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/domain/StereotypePtr.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/domain/TagPtr.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/domain/TaggedValue.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/domain/Unit.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/externalFormat/Binding.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/externalFormat/BindingTransformer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/externalFormat/ExternalFormatSchema.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/externalFormat/ExternalFormatSchemaSet.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/function/ConnectionTestData.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/function/FunctionTest.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/function/FunctionTestSuite.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/function/StoreTestData.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/AssociationMapping.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/ClassMapping.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/ClassMappingVisitor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/EnumValueMapping.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/EnumValueMappingEnumSourceValue.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/EnumValueMappingIntegerSourceValue.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/EnumValueMappingSourceValue.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/EnumValueMappingSourceValueDeserializer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/EnumValueMappingSourceValueSerializer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/EnumValueMappingStringSourceValue.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/EnumerationMapping.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/LocalMappingPropertyInfo.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/Mapping.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/MappingClass.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/MappingInclude.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/MappingIncludeMapping.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/MappingOperation.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/MergeOperationClassMapping.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/OperationClassMapping.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/PropertyMapping.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/PropertyMappingVisitor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/PropertyPointer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/aggregationAware/AggregateFunction.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/aggregationAware/AggregateSetImplementationContainer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/aggregationAware/AggregateSpecification.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/aggregationAware/AggregationAwareClassMapping.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/aggregationAware/AggregationAwarePropertyMapping.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/aggregationAware/GroupByFunction.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/mappingTest/ExpectedOutputMappingTestAssert.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/mappingTest/InputData.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/mappingTest/MappingTest.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/mappingTest/MappingTestAssert.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/mappingTest/MappingTestSuite.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/mappingTest/MappingTest_Legacy.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/mappingTest/StoreTestData.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/xStore/XStoreAssociationMapping.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/mapping/xStore/XStorePropertyMapping.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/runtime/ConnectionStore.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/runtime/ConnectionStores.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/runtime/EngineRuntime.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/runtime/IdentifiedConnection.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/runtime/LegacyRuntime.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/runtime/PackageableRuntime.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/runtime/Runtime.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/runtime/RuntimePointer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/runtime/SingleConnectionEngineRuntime.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/runtime/StoreConnections.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/section/DefaultCodeSection.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/section/ImportAwareCodeSection.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/section/Section.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/section/SectionIndex.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/store/Store.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/store/StoreProviderPointer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/store/modelToModel/ModelStore.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/store/modelToModel/connection/JsonModelConnection.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/store/modelToModel/connection/ModelChainConnection.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/store/modelToModel/connection/ModelConnection.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/store/modelToModel/connection/ModelInput.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/store/modelToModel/connection/ModelStringInput.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/store/modelToModel/connection/PureModelConnection.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/store/modelToModel/connection/XmlModelConnection.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/store/modelToModel/mapping/ObjectInputData.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/store/modelToModel/mapping/ObjectInputType.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/store/modelToModel/mapping/PureInstanceClassMapping.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/packageableElement/store/modelToModel/mapping/PurePropertyMapping.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/relationType/Column.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/relationType/RelationType.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/test/AtomicTest.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/test/Test.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/test/TestSuite.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/test/TestVisitor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/test/assertion/EqualTo.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/test/assertion/EqualToJson.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/test/assertion/TestAssertion.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/test/assertion/TestAssertionVisitor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/test/assertion/status/AssertFail.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/test/assertion/status/AssertPass.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/test/assertion/status/AssertionStatus.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/test/assertion/status/EqualToJsonAssertFail.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/test/result/TestError.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/test/result/TestExecuted.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/test/result/TestExecutionStatus.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/test/result/TestResult.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/ClassInstanceWrapper.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/ValueSpecification.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/ValueSpecificationVisitor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/Variable.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/application/AppliedFunction.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/application/AppliedProperty.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/application/AppliedQualifiedProperty.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/application/UnknownAppliedFunction.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/AbstractAppliedFunction.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/CBoolean.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/CByteArray.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/CDate.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/CDateTime.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/CDecimal.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/CFloat.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/CInteger.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/CLatestDate.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/CStrictDate.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/CStrictTime.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/CString.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/Class.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/ClassInstance.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/Collection.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/CoreClassInstances.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/DataTypeValueSpecification.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/DeprecatedValueSpecification.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/Enum.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/EnumValue.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/GenericTypeInstance.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/HackedClass.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/HackedUnit.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/KeyExpression.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/Lambda.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/Many.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/MappingInstance.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/One.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/PackageableElementPtr.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/PrimitiveType.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/PrimitiveValueSpecification.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/UnitInstance.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/UnitType.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/Whatever.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/AggregateValue.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/ExecutionContextInstance.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/Pair.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/PureList.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/RuntimeInstance.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/SerializationConfig.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/TDSAggregateValue.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/TDSColumnInformation.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/TDSSortInformation.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/TdsOlapAggregation.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/TdsOlapRank.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/graph/GraphFetchTree.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/graph/GraphFetchTreeVisitor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/graph/PropertyGraphFetchTree.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/graph/RootGraphFetchTree.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/graph/SubTypeGraphFetchTree.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/path/Path.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/path/PathElement.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/path/PropertyPathElement.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/relation/ColSpec.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/relation/ColSpecArray.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/classInstance/relation/RelationStoreAccessor.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/executionContext/AnalyticsExecutionContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/executionContext/BaseExecutionContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/valueSpecification/raw/executionContext/ExecutionContext.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/main/resources/META-INF/services/org.finos.legend.engine.protocol.pure.v1.extension.PureProtocolExtension (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/test/java/org/finos/legend/engine/protocol/test/TestCompatibilityAndMigration.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/test/java/org/finos/legend/engine/protocol/test/TestLoadModelAndMapping.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/test/java/org/finos/legend/engine/protocol/test/TestProtocolUpdates.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/test/java/org/finos/legend/engine/protocol/test/TestPureContextPointer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/test/resources/full.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/test/resources/log4j.properties (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/test/resources/mappingWithLegacyEnumValueMapping.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/test/resources/simpleFunctionAfter.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/test/resources/simpleFunctionBefore.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol-pure/src/test/resources/split_v1_15_0.json (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol/pom.xml (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol/src/main/java/org/finos/legend/engine/protocol/AnyDeserializer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol/src/main/java/org/finos/legend/engine/protocol/Protocol.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol/src/main/java/org/finos/legend/engine/protocol/pure/v1/model/SourceInformation.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/legend-engine-protocol/src/test/java/org/finos/legend/engine/protocol/TestAnyDeserializer.java (100%) rename legend-engine-core/{ => legend-engine-core-base}/legend-engine-core-language-pure/pom.xml (93%) create mode 100644 legend-engine-core/legend-engine-core-base/pom.xml rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/pom.xml (94%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/main/java/org/finos/legend/engine/external/shared/ExternalFormatJavaCompilerExtension.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/main/java/org/finos/legend/engine/external/shared/runtime/ExternalFormatExecutionExtension.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/main/java/org/finos/legend/engine/external/shared/runtime/ExternalFormatRuntimeExtension.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/main/java/org/finos/legend/engine/external/shared/runtime/ExternalFormatRuntimeExtensionLoader.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/main/java/org/finos/legend/engine/external/shared/runtime/dependencies/ExternalDataAdder.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/main/java/org/finos/legend/engine/external/shared/runtime/dependencies/ExternalDataBooleanAdder.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/main/java/org/finos/legend/engine/external/shared/runtime/dependencies/ExternalDataDoubleAdder.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/main/java/org/finos/legend/engine/external/shared/runtime/dependencies/ExternalDataLongAdder.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/main/java/org/finos/legend/engine/external/shared/runtime/dependencies/ExternalDataModelProperty.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/main/java/org/finos/legend/engine/external/shared/runtime/dependencies/ExternalDataObjectAdder.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/main/java/org/finos/legend/engine/external/shared/runtime/dependencies/IExternalData.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/main/java/org/finos/legend/engine/external/shared/runtime/dependencies/IExternalDataFactory.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/main/java/org/finos/legend/engine/external/shared/runtime/read/ExecutionHelper.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/main/java/org/finos/legend/engine/external/shared/runtime/read/ExternalFormatReader.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/main/java/org/finos/legend/engine/external/shared/runtime/write/ExternalFormatDefaultSerializer.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/main/java/org/finos/legend/engine/external/shared/runtime/write/ExternalFormatSerializeResult.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/main/java/org/finos/legend/engine/external/shared/runtime/write/ExternalFormatWriter.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/main/java/org/finos/legend/engine/external/shared/utils/ExternalFormatRuntime.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/main/resources/META-INF/services/org.finos.legend.engine.plan.execution.extension.ExecutionExtension (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/main/resources/META-INF/services/org.finos.legend.engine.plan.execution.nodes.helpers.platform.ExecutionPlanJavaCompilerExtension (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/test/java/org/finos/legend/engine/external/shared/format/test/GeneratePlanDataClasses.java (82%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/test/java/org/finos/legend/engine/external/shared/runtime/fixtures/firmModel/Address.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/test/java/org/finos/legend/engine/external/shared/runtime/fixtures/firmModel/AddressType.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/test/java/org/finos/legend/engine/external/shared/runtime/fixtures/firmModel/AddressUse.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/test/java/org/finos/legend/engine/external/shared/runtime/fixtures/firmModel/Firm.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/test/java/org/finos/legend/engine/external/shared/runtime/fixtures/firmModel/Person.java (100%) rename legend-engine-core/{legend-engine-core-executionPlan-execution => legend-engine-core-external-format/legend-engine-external-format-execution}/legend-engine-external-shared-format-runtime/src/test/java/org/finos/legend/engine/external/shared/runtime/test/TestExternalFormatQueries.java (93%) create mode 100644 legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-execution/pom.xml create mode 100644 legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-api/pom.xml rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-api}/src/main/java/org/finos/legend/engine/external/shared/format/model/api/ExternalFormatDescription.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-api}/src/main/java/org/finos/legend/engine/external/shared/format/model/api/ExternalFormats.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-api}/src/main/java/org/finos/legend/engine/external/shared/format/model/api/GenerateModelInput.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-api}/src/main/java/org/finos/legend/engine/external/shared/format/model/api/GenerateSchemaInput.java (100%) create mode 100644 legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-compiler/pom.xml rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-compiler}/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/BindingCompiler.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-compiler}/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/ExternalFormatCompilerExtension.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-compiler}/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/HelperExternalFormat.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-compiler}/src/main/java/org/finos/legend/engine/language/pure/compiler/toPureGraph/SchemaSetCompiler.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-compiler}/src/main/resources/META-INF/services/org.finos.legend.engine.language.pure.compiler.toPureGraph.extension.CompilerExtension (100%) create mode 100644 legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-core/pom.xml rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-core}/src/main/java/org/finos/legend/engine/external/shared/format/model/ExternalFormatExtension.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-core}/src/main/java/org/finos/legend/engine/external/shared/format/model/ExternalFormatExtensionLoader.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-core}/src/main/java/org/finos/legend/engine/external/shared/format/model/compile/ExternalFormatSchemaException.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-core}/src/main/java/org/finos/legend/engine/external/shared/format/model/compile/ExternalSchemaCompileContext.java (100%) create mode 100644 legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-example/pom.xml rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-example}/src/test/java/org/finos/legend/engine/external/shared/format/model/TestExampleSchemaFormatContract.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-example}/src/test/java/org/finos/legend/engine/external/shared/format/model/TestExternalFormatExtension.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-example}/src/test/java/org/finos/legend/engine/external/shared/format/model/exampleSchema/ExampleExternalFormatExtension.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-example}/src/test/java/org/finos/legend/engine/external/shared/format/model/exampleSchema/ExampleSchemaToModelConfiguration.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-example}/src/test/java/org/finos/legend/engine/external/shared/format/model/exampleSchema/ModelToExampleSchemaConfiguration.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-example}/src/test/java/org/finos/legend/engine/external/shared/format/model/test/ExternalSchemaCompilationTest.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-example}/src/test/java/org/finos/legend/engine/external/shared/format/model/test/ExternalSchemaSetGrammarBuilder.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-example}/src/test/java/org/finos/legend/engine/external/shared/format/model/test/ModelText.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-example}/src/test/java/org/finos/legend/engine/external/shared/format/model/test/ModelTexts.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-example}/src/test/java/org/finos/legend/engine/external/shared/format/model/transformation/fromModel/ModelToSchemaGenerationTest.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-example}/src/test/java/org/finos/legend/engine/external/shared/format/model/transformation/fromModel/TestModelToExampleSchemaGeneration.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-example}/src/test/java/org/finos/legend/engine/external/shared/format/model/transformation/toModel/SchemaToModelGenerationTest.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-example}/src/test/java/org/finos/legend/engine/external/shared/format/model/transformation/toModel/TestExampleSchemaToModelGeneration.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-example}/src/test/java/org/finos/legend/engine/language/pure/compiler/test/TestExternalFormatCompilation.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-example}/src/test/java/org/finos/legend/engine/language/pure/grammar/test/TestExternalFormatGrammarComposer.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-example}/src/test/java/org/finos/legend/engine/language/pure/grammar/test/TestExternalFormatGrammarParser.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-example}/src/test/java/org/finos/legend/engine/language/pure/grammar/test/TestExternalFormatGrammarRoundtrip.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-example}/src/test/resources/META-INF/services/org.finos.legend.engine.external.shared.format.model.ExternalFormatExtension (100%) create mode 100644 legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-generation/pom.xml rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-generation}/src/main/java/org/finos/legend/engine/external/shared/format/model/transformation/GenerationConfiguration.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-generation}/src/main/java/org/finos/legend/engine/external/shared/format/model/transformation/Generator.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-generation}/src/main/java/org/finos/legend/engine/external/shared/format/model/transformation/fromModel/ExternalFormatSchemaGenerationExtension.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-generation}/src/main/java/org/finos/legend/engine/external/shared/format/model/transformation/fromModel/ModelToSchemaConfiguration.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-generation}/src/main/java/org/finos/legend/engine/external/shared/format/model/transformation/fromModel/ModelToSchemaGenerator.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-generation}/src/main/java/org/finos/legend/engine/external/shared/format/model/transformation/toModel/ExternalFormatModelGenerationExtension.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-generation}/src/main/java/org/finos/legend/engine/external/shared/format/model/transformation/toModel/SchemaToModelConfiguration.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-generation}/src/main/java/org/finos/legend/engine/external/shared/format/model/transformation/toModel/SchemaToModelGenerator.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar}/pom.xml (50%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar}/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/ExternalFormatLexerGrammar.g4 (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar}/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/ExternalFormatParserGrammar.g4 (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar}/src/main/java/org/finos/legend/engine/language/pure/grammar/from/ExternalFormatGrammarParserExtension.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar}/src/main/java/org/finos/legend/engine/language/pure/grammar/from/ExternalFormatParseTreeWalker.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar}/src/main/java/org/finos/legend/engine/language/pure/grammar/to/ExternalFormatGrammarComposerExtension.java (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar}/src/main/resources/META-INF/services/org.finos.legend.engine.language.pure.grammar.from.extension.PureGrammarParserExtension (100%) rename legend-engine-core/{legend-engine-core-language-pure/legend-engine-external-shared-format-model => legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar}/src/main/resources/META-INF/services/org.finos.legend.engine.language.pure.grammar.to.extension.PureGrammarComposerExtension (100%) create mode 100644 legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/pom.xml rename legend-engine-core/{legend-engine-core-query-pure => legend-engine-core-external-format}/pom.xml (81%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/pom.xml (93%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/java/org/finos/legend/engine/pure/code/core/CoreCodeRepositoryProvider.java (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/META-INF/services/org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositoryProvider (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core.definition.json (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/coreExtensions.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/fromJSON.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/json.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/jsonExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/modelSerialization.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testFromJson.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testFromJson2.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testJson.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testToJson.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testToJson2.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/toJSON.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/yaml/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/yaml/metamodel_diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/yaml/serialization_yamlToString.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/yaml/tests/testtoyaml.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/legend/compiler/matchGenerator.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/legend/objectReference/objectReference.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/legend/test/handlersTest.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/legend/tools/devUtils.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/binding/binding.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/binding/binding_diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/binding/mapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/binding/validation.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/executionPlan_diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/executionPlan_generation.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/executionPlan_print.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/model.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/tests/executionPlanTests.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/tests/model.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/externalFormat/externalFormatContract.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/functions/functions.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_21_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_22_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_23_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_24_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_24_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_24_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_25_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_25_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_25_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_26_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_26_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_26_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_27_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_27_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_27_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_28_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_28_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_28_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_29_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_29_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_29_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_30_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_30_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_30_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_31_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_31_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_31_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_32_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_32_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_32_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_33_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_33_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_33_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/vX_X_X/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/vX_X_X/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/vX_X_X/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/schemaSet/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/schemaSet/metamodel_diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/transformation/generation.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/transformation/tests/externalFormatContract.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/utils/utils.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/constraints/constraintsExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/constraints/constraintsModelDiagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/collectionExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/constraints.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/dateExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/ioExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/langExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/mathExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/metaExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/milestoningExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/multiplicityExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/stringExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/testExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collectionExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testAnd.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testContainsAll.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testGetPropertyValues.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testGroupBy.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testHead.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testIntersection.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testMap.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testMapCollection.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testMax.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testMin.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testOneOf.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testPartition.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testRemoveAll.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testRemoveDuplicates.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testSortBy.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDate.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDateElementFunctions.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDayEqualityFunctions.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDayOfWeekArithmetic.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDayOfWeekNumber.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDurationArithmetic.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testFirstDayOf.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testMonthNumber.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testTime.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/dateExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/lang/testCast.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/lang/testDot.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/lang/testIsFalse.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/lang/testIsTrue.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/langExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testInferenceOnFunctionExpression.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testLambda.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testMatching.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testOpenVariablesOnLambda.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testVariableNameSpaces.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/mathExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testAbs.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testAverage.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testMax.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testMin.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testSum.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testTrig.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testVariance.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testAllSpecializations.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testClass.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testElementPath.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testExtractEnumValue.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testFunctionAsParameter.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testFunctionReturnType.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testIsAbstract.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testIsAny.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/metaExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/metaExtention_funcs.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/multiplicity/testHasLowerBound.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/multiplicity/testIsMultiplicityConcrete.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/multiplicity/testIsZeroOne.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testEqualIgnoreCase.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testLastIndexOf.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testLeft.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testMakeString.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testRight.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testToRepresentation.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testToUpperFirstCharacter.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testUUID.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/stringExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/test/testIsTest.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/test/testIsTestElement.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/testModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/unit.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/data/data.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/data/diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/dataQuality/dataQuality.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/documentation/documentation_extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/enterprise/enterprise.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlanFeature.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan_diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan_execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan_generation.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan_print.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/extensions.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/platformBinding/platformBinding.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/platformBinding/typeInfo/typeInfo.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/platformBinding/typeInfo/typeInfoTest.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/test/executionPlan_execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/test/testExecutionPlanFeatureFlag.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/extensions/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/extensions/functions.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/function/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/domain/domainManagement.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/domain/tests/testDomainManagement.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/graphExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/graphFetch.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/graphFetchExecutionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/graphFetch_routing.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/sourceTreeCalc/subType/testOnSourceRoot.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/sourceTreeCalc/testSourceTreeCalc.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/testCrossStoreGraphFetch.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/testPropertyTreeConversion.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/testRouting.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/testUnion.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/helperFunctions.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/scanExecute.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/scanMapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/scanProject.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/scanProperties.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mapping/XStore.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mapping/mappingExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mapping/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mapping/modelToModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/metamodel_diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/milestoning/milestoning.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/model/modelUnit.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/model/modelUnitTests.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mutation/mutation.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/platform/executionPlan/executionPlan_generation.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/generation/builder/generation.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/generation/builder/generation_test.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/generation/serialization/scan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/generation/serialization/scanTest.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/protocol.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/invocations/execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/invocations/testLoadModels.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/models/diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/models/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/models/results.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/scan/buildBasePureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/mapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/store.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/valueSpecification.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/invocations/execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/invocations/testLoadModels.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/models/diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/models/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/models/results.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/scan/buildBasePureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/scan/buildPureModelAsText.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/scan/testBuildPureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/mapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/store.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/valueSpecification.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/invocations/execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/invocations/testLoadModels.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/models/diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/models/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/models/results.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/scan/buildBasePureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/scan/buildPureModelAsText.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/scan/testBuildPureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/mapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/store.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/valueSpecification.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/invocations/execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/invocations/testLoadModels.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/models/diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/models/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/models/results.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/scan/buildBasePureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/scan/buildPureModelAsText.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/scan/testBuildPureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/mapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/store.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/valueSpecification.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/invocations/execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/invocations/testLoadModels.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/models/diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/models/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/models/results.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/scan/buildBasePureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/scan/buildPureModelAsText.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/scan/testBuildPureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/mapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/store.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/valueSpecification.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/invocations/execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/invocations/testLoadModels.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/models/diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/models/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/models/results.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/scan/buildBasePureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/scan/buildPureModelAsText.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/scan/testBuildPureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/mapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/store.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/valueSpecification.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/invocations/execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/invocations/testLoadModels.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/models/diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/models/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/models/results.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/scan/buildBasePureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/scan/buildPureModelAsText.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/scan/testBuildPureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/mapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/store.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/valueSpecification.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/invocations/execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/invocations/testLoadModels.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/models/diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/models/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/models/results.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/scan/buildBasePureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/scan/buildPureModelAsText.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/scan/testBuildPureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/mapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/store.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/valueSpecification.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/invocations/execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/invocations/testLoadModels.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/models/diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/models/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/models/results.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/scan/buildBasePureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/scan/buildPureModelAsText.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/scan/testBuildPureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/mapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/store.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/valueSpecification.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/invocations/execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/invocations/testLoadModels.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/models/diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/models/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/models/results.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/scan/buildBasePureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/scan/buildPureModelAsText.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/scan/testBuildPureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/mapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/store.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/valueSpecification.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/invocations/execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/invocations/testLoadModels.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/models/diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/models/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/models/results.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/scan/buildBasePureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/scan/buildPureModelAsText.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/scan/testBuildPureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/mapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/store.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/valueSpecification.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/invocations/execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/invocations/testBuildExecutionInput.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/invocations/testLoadModels.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/models/diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/models/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/models/results.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/scan/buildBasePureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/scan/buildPureModelAsText.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/scan/testBuildPureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/mapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/store.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/valueSpecification.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/invocations/execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/invocations/testBuildExecutionInput.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/invocations/testLoadModels.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/models/diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/models/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/models/results.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/scan/buildBasePureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/scan/buildPureModelAsText.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/scan/testBuildPureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/mapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/store.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/valueSpecification.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/invocations/execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/invocations/testBuildExecutionInput.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/invocations/testLoadModels.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/models/diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/models/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/models/results.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/scan/buildBasePureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/scan/buildPureModelAsText.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/scan/testBuildPureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/mapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/store.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/valueSpecification.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/invocations/execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/invocations/testBuildExecutionInput.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/invocations/testLoadModels.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/models/diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/models/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/models/results.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/scan/buildBasePureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/scan/buildPureModelAsText.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/scan/testBuildPureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/mapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/store.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/valueSpecification.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/invocations/execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/invocations/testBuildExecutionInput.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/invocations/testLoadModels.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/models/diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/models/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/models/results.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/scan/buildBasePureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/scan/buildPureModelAsText.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/scan/testBuildPureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/mapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/store.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/valueSpecification.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/extension/extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/invocations/execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/invocations/testBuildExecutionInput.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/invocations/testLoadModels.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/models/diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/models/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/models/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/models/results.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/scan/buildBasePureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/scan/buildPureModelAsText.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/scan/testBuildPureModel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/executionPlan.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/mapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/store.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/valueSpecification.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/clustering/clustering.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/deprecated/deprecated.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/extension/router_extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/externalFormat/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/externalFormat/routing.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/metamodel/clustering.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/metamodel/diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/metamodel/routing.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/operations/router_operations.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/platform/execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/platform/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/platform/routing.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/preeval/preeval.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/preeval/tests.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/printer/printer.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/router_entry.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/router_execution.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/router_main.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/routing/router_routing.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/analytics.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/builder.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/cluster.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/metamodel.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/routing.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/utils/utils.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/runtime/runtimeExtension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/section/section.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/serialization/toPureGrammar.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/store/storeContract.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tds/tds.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tds/tdsExtensions.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tds/tdsSchema.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tds/testTdsSchema.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/test/diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/test/testCollection.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/test/testable.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/test/tests/testTestCollection.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tools/testProfiles.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tools/tools_extension.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/treepath/treePath.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/valueSpec.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/aggregationAware/aggregationAware.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/aggregationAware/storeContract.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/chain.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/executionPlan_diagram.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/inMemory.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/storeContract.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/createInstances.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/delta.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/filter.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/autoMapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/chain/dataQualityChain.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/chain/filterChain.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/chain/parametersChain.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/chain/simpleChain.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/constraints.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/dataQuality.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/filterGraphFetch.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/filterInMapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/functionInMapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/graphWithAssociations.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/graphWithSubTypes/testOnSourceRoot.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/graphWithoutAssociations.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/merge.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/milestoning/MilestonedM2M.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/milestoning/model.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/multiStepFunctions.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/multiplicities.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/nilHandling.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/propertyUnion.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/qualifiedProperties.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/simpleObject.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/simpleObjectXml.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/sourceAssociationRequiredByMapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/testComplexTypeAutoMapping.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/testEquality.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/testExplosion.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/testUnitMeasure.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/toFromSameName.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/union.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/unitMeasure.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/userFunctions.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/util.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/merge.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/primitives.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/shared.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/simple.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/test/java/org/finos/legend/engine/pure/code/core/TestCoreCompiledStateIntegrity.java (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/test/java/org/finos/legend/engine/pure/code/core/TestIdBuilderCore.java (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-core/src/test/java/org/finos/legend/engine/pure/code/core/Test_Pure_Core.java (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-functions/pom.xml (95%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-functions/src/main/java/org/finos/legend/pure/code/core/CoreCoreFunctionsCodeRepositoryProvider.java (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-functions/src/main/resources/META-INF/services/org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositoryProvider (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions.definition.json (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/collection/containsAny.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/collection/in.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/meta/getAllPackageableElements.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/meta/hasStereotype.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/meta/value4Tag.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/edgePointPropertyName.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/getMilestonedGeneratedQualifiedPropertiesForEdgePointProperty.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/hasGeneratedMilestoningDatePropertyStereotype.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/hasGeneratedMilestoningPropertyStereotype.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/isEdgePointProperty.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/originalPropertyNameForEdgePointProperty.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/reverseMilestoningTransforms.pure (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-compiled-functions/src/test/java/org/finos/legend/engine/pure/code/core/Test_Pure_Core_Functions.java (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-core-extension/pom.xml (97%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/BindingLegendPureCoreExtension.java (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/CoreLegendPureCoreExtension.java (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/ExternalFormatLegendPureCoreExtension.java (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/FeatureLegendPureCoreExtension.java (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/JavaBindingLegendPureCoreExtension.java (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/LegendPureCoreExtension.java (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/PureCoreExtensionLoader.java (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/StoreLegendPureCoreExtension.java (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/TestLegendPureCoreExtension.java (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-core-extension/src/main/resources/META-INF/services/org.finos.legend.engine.pure.code.core.LegendPureCoreExtension (100%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-code-core-extension/src/test/java/org/finos/legend/engine/pure/code/core/core/TestExtensionAvailable.java (100%) rename {legend-engine-pure => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-diagram-java/pom.xml (99%) rename {legend-engine-pure => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-graph-java/pom.xml (96%) rename {legend-engine-pure => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-mapping-java/pom.xml (96%) rename {legend-engine-pure => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-path-java/pom.xml (98%) rename {legend-engine-pure => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-store-java/pom.xml (100%) rename {legend-engine-pure => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-tds-java/pom.xml (98%) rename {legend-engine-pure => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-java/pom.xml (94%) rename {legend-engine-pure => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-json-java/pom.xml (91%) rename {legend-engine-pure => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-relation-java/pom.xml (89%) rename {legend-engine-pure => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-java/pom.xml (100%) rename {legend-engine-pure => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-store-relational-java/pom.xml (87%) rename {legend-engine-pure => legend-engine-core/legend-engine-core-pure}/legend-engine-pure-platform-modular-generation/pom.xml (97%) rename {legend-engine-pure/legend-engine-pure-code => legend-engine-core/legend-engine-core-pure}/pom.xml (84%) rename legend-engine-core/{legend-engine-core-query-pure/legend-engine-query-pure => legend-engine-core-query-pure-rest}/pom.xml (94%) rename legend-engine-core/{legend-engine-core-query-pure/legend-engine-query-pure => legend-engine-core-query-pure-rest}/src/main/java/org/finos/legend/engine/query/pure/api/Execute.java (100%) rename legend-engine-core/{legend-engine-core-query-pure/legend-engine-query-pure => legend-engine-core-query-pure-rest}/src/main/java/org/finos/legend/engine/query/pure/cache/PureExecutionCacheKey.java (100%) rename legend-engine-core/{legend-engine-core-query-pure/legend-engine-query-pure => legend-engine-core-query-pure-rest}/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestExecuteFunctionExecutionPlan.java (100%) rename legend-engine-core/{legend-engine-core-query-pure/legend-engine-query-pure => legend-engine-core-query-pure-rest}/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestExecutionUtility.java (100%) rename legend-engine-core/{legend-engine-core-query-pure/legend-engine-query-pure => legend-engine-core-query-pure-rest}/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestM2MGrammarCompileAndExecute.java (100%) rename legend-engine-core/{legend-engine-core-query-pure/legend-engine-query-pure => legend-engine-core-query-pure-rest}/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestQueryExecutionWithParameters.java (100%) rename legend-engine-core/{legend-engine-core-query-pure/legend-engine-query-pure => legend-engine-core-query-pure-rest}/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestRelationalManagerOnExecution.java (100%) rename legend-engine-core/{legend-engine-core-query-pure/legend-engine-query-pure => legend-engine-core-query-pure-rest}/src/test/java/org/finos/legend/engine/query/pure/cache/TestExecutionPlanCache.java (100%) rename legend-engine-core/{legend-engine-core-query-pure/legend-engine-query-pure => legend-engine-core-query-pure-rest}/src/test/java/org/finos/legend/engine/query/pure/cache/TestPureExecutionCacheKey.java (100%) rename legend-engine-core/{legend-engine-core-query-pure/legend-engine-query-pure => legend-engine-core-query-pure-rest}/src/test/resources/log4j.properties (100%) rename legend-engine-core/{legend-engine-core-query-pure/legend-engine-query-pure => legend-engine-core-query-pure-rest}/src/test/resources/org.finos.legend.engine.query.pure.cache/simpleQueryWithSDLCInfo.json (100%) rename legend-engine-core/{legend-engine-core-query-pure/legend-engine-query-pure => legend-engine-core-query-pure-rest}/src/test/resources/org/finos/legend/engine/query/pure/api/test/inMemory/at_zero.pure (100%) rename legend-engine-core/{legend-engine-core-query-pure/legend-engine-query-pure => legend-engine-core-query-pure-rest}/src/test/resources/org/finos/legend/engine/query/pure/api/test/inMemory/derived.pure (100%) rename legend-engine-core/{legend-engine-core-query-pure/legend-engine-query-pure => legend-engine-core-query-pure-rest}/src/test/resources/org/finos/legend/engine/query/pure/api/test/inMemory/no_properties.pure (100%) rename legend-engine-core/{legend-engine-core-query-pure/legend-engine-query-pure => legend-engine-core-query-pure-rest}/src/test/resources/relationalQueryExecutionInputEnumZeroOne.json (100%) rename legend-engine-core/{legend-engine-core-query-pure/legend-engine-query-pure => legend-engine-core-query-pure-rest}/src/test/resources/relationalQueryExecutionInputNoParameters.json (100%) rename legend-engine-core/{legend-engine-core-query-pure/legend-engine-query-pure => legend-engine-core-query-pure-rest}/src/test/resources/relationalQueryExecutionInputZeroMany.json (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-data-generation/pom.xml (98%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-data-generation/src/main/java/org/finos/legend/engine/testData/generation/api/TestDataGeneration.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-data-generation/src/main/java/org/finos/legend/engine/testData/generation/model/TestDataGenerationInput.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-data-generation/src/main/java/org/finos/legend/engine/testData/generation/model/TestDataGenerationResult.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-data-generation/src/main/java/org/finos/legend/engine/testData/generation/service/TestDataGenerationService.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-data-generation/src/test/java/org.finos.legend.engine/testDataGeneration/TestDataGenerationTest.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-data-generation/src/test/resources/models/relationalModelTestDataGenerationInput.json (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-framework/pom.xml (98%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-framework/src/main/java/org/finos/legend/engine/test/shared/framework/PureTestHelperFramework.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-framework/src/main/java/org/finos/legend/engine/test/shared/framework/ServersState.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-framework/src/main/java/org/finos/legend/engine/test/shared/framework/TestServerResource.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-function/pom.xml (94%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-function/src/main/java/org/finos/legend/engine/testable/function/extension/FunctionTestRunner.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-function/src/main/java/org/finos/legend/engine/testable/function/extension/FunctionTestRunnerContext.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-function/src/main/java/org/finos/legend/engine/testable/function/extension/FunctionTestableRunnerExtension.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-function/src/main/resources/META-INF/services/org.finos.legend.engine.testable.extension.TestableRunnerExtension (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-function/src/test/java/org/finos/legend/engine/testable/function/TestFunctionTestSuite.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-function/src/test/resources/testable/legend-testable-function-test-model-join-relational.pure (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-function/src/test/resources/testable/legend-testable-function-test-model-m2m.pure (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-function/src/test/resources/testable/legend-testable-function-test-model-relational.pure (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-function/src/test/resources/testable/legend-testable-function-test-model.pure (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-mapping/pom.xml (91%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/test/runner/mapping/MappingTestRunner.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/test/runner/mapping/RichMappingTestResult.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/testable/mapping/extension/MappingTestRunner.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/testable/mapping/extension/MappingTestRunnerContext.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/testable/mapping/extension/MappingTestableRunnerExtension.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-mapping/src/main/resources/META-INF/services/org.finos.legend.engine.testable.extension.TestableRunnerExtension (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-mapping/src/test/java/org/finos/legend/engine/test/runner/mapping/TestLegacyMappingRunner.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-mapping/src/test/java/org/finos/legend/engine/test/runner/mapping/TestMappingTestRunner.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-mapping/src/test/java/org/finos/legend/engine/testable/mapping/extension/TestMappingTestRunner.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-mapping/src/test/java/org/finos/legend/engine/testable/mapping/extension/TestRelationalMappingRunner.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-mapping/src/test/resources/modelToModelMappingTests1.json (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-mapping/src/test/resources/modelToModelMappingTests2.json (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-shared/pom.xml (96%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-shared/src/main/java/org/finos/legend/engine/test/runner/shared/ComparisonError.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-shared/src/main/java/org/finos/legend/engine/test/runner/shared/JsonNodeComparator.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-shared/src/main/java/org/finos/legend/engine/test/runner/shared/TestResult.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-runner-shared/src/test/java/org/finos/legend/engine/test/runner/shared/TestJsonNodeComparator.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-server-shared/pom.xml (97%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-server-shared/src/main/java/org/finos/legend/engine/server/test/shared/PureWithEngineHelper.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-server-shared/src/main/java/org/finos/legend/engine/server/test/shared/TestServer.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-test-server-shared/src/main/java/org/finos/legend/engine/server/test/shared/TestServerConfiguration.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-testable-api/pom.xml (98%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-testable-api/src/main/java/org/finos/legend/engine/testable/api/TestableApi.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-testable/pom.xml (98%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/TestableRunner.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/assertion/TestAssertionEvaluator.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/assertion/TestAssertionHelper.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/connection/TestConnectionBuilder.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/extension/TestRunner.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/extension/TestableRunnerExtension.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/extension/TestableRunnerExtensionLoader.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/model/RunTestsInput.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/model/RunTestsResult.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/model/RunTestsTestableInput.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/model/UniqueTestId.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-testable/src/test/java/org/finos/legend/engine/testable/assertion/TestTestAssertionEvaluator.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/legend-engine-testable/src/test/java/org/finos/legend/engine/testable/connection/TestTestConnectionBuilder.java (100%) rename legend-engine-core/{legend-engine-core-test => legend-engine-core-testable}/pom.xml (96%) create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/PureIDEServer.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/ServerConfiguration.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/SourceLocationConfiguration.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/Activities.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/FileManagement.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/LifeCycle.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/Service.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/Suggestion.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/AbstractRenameConceptEntry.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/Concept.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/GetConcept.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/MovePackageableElements.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/RenameConcept.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/RenameConceptEntry.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/RenameConceptUtility.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/RenamePackageEntry.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/Execute.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/ContentType.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/ExecutionManager.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/ExecutionRequest.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/FunctionExecutionParser.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/HttpInformation.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/HttpResponseWriter.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/HttpServletResponseWriter.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/OutputFormat.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/go/ExecuteGo.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/go/GoRun.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/test/CallBack.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/test/ExecuteTests.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/test/TestNode.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/test/TestResult.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/test/TestRun.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/find/FindInSources.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/find/FindPureFile.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/find/FindTextPreview.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/source/UpdateSource.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/JSONResponseTools.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/Candidate.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/ExceptionTranslation.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/IDEExceptionResponse.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/IDEParserOrCompilerException.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/IDEPureUnmatchedFunctionExceptionResponse.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/IDEPureUnresolvedIdentifierExceptionResponse.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/IDEResponse.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/session/PureSession.java create mode 100644 legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/session/SimpleFunction.java create mode 100644 legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/pom.xml create mode 100644 legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/java/org/finos/legend/pure/code/core/CoreExternalFormatJavaPlatformBindingCodeRepositoryProvider.java rename legend-engine-xts-java/{legend-engine-xt-javaPlatformBinding-pure/src/main/java/org/finos/legend/pure/code/core/BindingJavaBindingLegendPureCoreExtension.java => legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/java/org/finos/legend/pure/code/core/ExternalFormatJavaBindingLegendPureCoreExtension.java} (82%) create mode 100644 legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/META-INF/services/org.finos.legend.engine.pure.code.core.LegendPureCoreExtension create mode 100644 legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/META-INF/services/org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositoryProvider create mode 100644 legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/core_java_platform_binding_external_format.definition.json rename legend-engine-xts-java/{legend-engine-xt-javaPlatformBinding-pure/src/main/resources/core_java_platform_binding/legendJavaPlatformBinding/binding => legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/core_java_platform_binding_external_format/legendJavaPlatformBinding/externalFormat}/bindingLegendJavaPlatformBindingExtension.pure (100%) rename legend-engine-xts-java/{legend-engine-xt-javaPlatformBinding-pure/src/main/resources/core_java_platform_binding/legendJavaPlatformBinding/binding => legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/core_java_platform_binding_external_format/legendJavaPlatformBinding/externalFormat}/descriptor.pure (100%) rename legend-engine-xts-java/{legend-engine-xt-javaPlatformBinding-pure/src/main/resources/core_java_platform_binding/legendJavaPlatformBinding/binding => legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/core_java_platform_binding_external_format/legendJavaPlatformBinding/externalFormat}/engineDependencies.pure (100%) rename legend-engine-xts-java/{legend-engine-xt-javaPlatformBinding-pure/src/main/resources/core_java_platform_binding/legendJavaPlatformBinding/binding => legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/core_java_platform_binding_external_format/legendJavaPlatformBinding/externalFormat}/executionPlanTest.pure (100%) rename legend-engine-xts-java/{legend-engine-xt-javaPlatformBinding-pure/src/main/resources/core_java_platform_binding/legendJavaPlatformBinding/binding => legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/core_java_platform_binding_external_format/legendJavaPlatformBinding/externalFormat}/shared.pure (100%) create mode 100644 legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/test/java/org/finos/legend/engine/pure/code/core/Test_Pure_ExternalFormatJavaPlatformBinding.java create mode 100644 legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/test/java/org/finos/legend/engine/pure/code/core/java/binding/TestExtensionAvailable.java create mode 100644 legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/legend-engine-xt-relationalStore-executionPlan-rest/pom.xml rename legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/{legend-engine-xt-relationalStore-executionPlan => legend-engine-xt-relationalStore-executionPlan-rest}/src/main/java/org/finos/legend/engine/plan/execution/stores/relational/api/RelationalExecutorInformation.java (99%) diff --git a/.gitignore b/.gitignore index 446aa40abb7..e2d904592b8 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,7 @@ **/dependency-reduced-pom.xml **/*.tokens **/*.patch +**/*.DS_Store # VS Code ignores .vscode diff --git a/.run/Server External.run.xml b/.run/Server External.run.xml index 372718b87cd..62fc6106161 100644 --- a/.run/Server External.run.xml +++ b/.run/Server External.run.xml @@ -1,8 +1,8 @@ - - dependency-analyze - - - - org.finos.legend.pure:legend-pure-runtime-java-extension-dsl-mapping - - org.finos.legend.pure:legend-pure-m2-dsl-mapping-grammar - org.finos.legend.pure:legend-pure-runtime-java-engine-compiled - - - @@ -83,41 +71,23 @@ - - org.apache.maven.plugins - maven-jar-plugin - - - - test-jar - - - - - - org.finos.legend.pure - legend-pure-m3-core - + + + + org.finos.legend.engine - legend-engine-shared-extensions - - - org.finos.legend.engine - legend-engine-pure-platform-java - - - org.finos.legend.engine - legend-engine-language-pure-modelManager + legend-engine-external-format-core + org.finos.legend.engine legend-engine-protocol @@ -134,38 +104,8 @@ org.finos.legend.engine legend-engine-language-pure-grammar - - org.finos.legend.engine - legend-engine-language-pure-compiler - - - org.finos.legend.engine - legend-engine-pure-code-compiled-core - - - - org.finos.legend.engine - legend-engine-language-pure-dsl-generation-pure - - - org.finos.legend.engine - legend-engine-external-shared - - - - - - javax.ws.rs - javax.ws.rs-api - - - io.swagger - swagger-annotations - - - org.antlr @@ -185,50 +125,6 @@ - - - com.fasterxml.jackson.core - jackson-databind - - - com.fasterxml.jackson.core - jackson-annotations - - - com.fasterxml.jackson.core - jackson-core - - - - - - io.opentracing - opentracing-util - - - io.opentracing - opentracing-api - - - - - - org.slf4j - slf4j-api - - - - - - org.pac4j.jax-rs - core - - - org.pac4j - pac4j-core - - - org.finos.legend.engine @@ -236,17 +132,6 @@ test-jar test - - org.finos.legend.engine - legend-engine-language-pure-compiler - test-jar - test - - - commons-io - commons-io - test - junit junit diff --git a/legend-engine-core/legend-engine-core-language-pure/legend-engine-external-shared-format-model/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/ExternalFormatLexerGrammar.g4 b/legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/ExternalFormatLexerGrammar.g4 similarity index 100% rename from legend-engine-core/legend-engine-core-language-pure/legend-engine-external-shared-format-model/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/ExternalFormatLexerGrammar.g4 rename to legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/ExternalFormatLexerGrammar.g4 diff --git a/legend-engine-core/legend-engine-core-language-pure/legend-engine-external-shared-format-model/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/ExternalFormatParserGrammar.g4 b/legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/ExternalFormatParserGrammar.g4 similarity index 100% rename from legend-engine-core/legend-engine-core-language-pure/legend-engine-external-shared-format-model/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/ExternalFormatParserGrammar.g4 rename to legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar/src/main/antlr4/org/finos/legend/engine/language/pure/grammar/from/antlr4/ExternalFormatParserGrammar.g4 diff --git a/legend-engine-core/legend-engine-core-language-pure/legend-engine-external-shared-format-model/src/main/java/org/finos/legend/engine/language/pure/grammar/from/ExternalFormatGrammarParserExtension.java b/legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/ExternalFormatGrammarParserExtension.java similarity index 100% rename from legend-engine-core/legend-engine-core-language-pure/legend-engine-external-shared-format-model/src/main/java/org/finos/legend/engine/language/pure/grammar/from/ExternalFormatGrammarParserExtension.java rename to legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/ExternalFormatGrammarParserExtension.java diff --git a/legend-engine-core/legend-engine-core-language-pure/legend-engine-external-shared-format-model/src/main/java/org/finos/legend/engine/language/pure/grammar/from/ExternalFormatParseTreeWalker.java b/legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/ExternalFormatParseTreeWalker.java similarity index 100% rename from legend-engine-core/legend-engine-core-language-pure/legend-engine-external-shared-format-model/src/main/java/org/finos/legend/engine/language/pure/grammar/from/ExternalFormatParseTreeWalker.java rename to legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/from/ExternalFormatParseTreeWalker.java diff --git a/legend-engine-core/legend-engine-core-language-pure/legend-engine-external-shared-format-model/src/main/java/org/finos/legend/engine/language/pure/grammar/to/ExternalFormatGrammarComposerExtension.java b/legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/to/ExternalFormatGrammarComposerExtension.java similarity index 100% rename from legend-engine-core/legend-engine-core-language-pure/legend-engine-external-shared-format-model/src/main/java/org/finos/legend/engine/language/pure/grammar/to/ExternalFormatGrammarComposerExtension.java rename to legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar/src/main/java/org/finos/legend/engine/language/pure/grammar/to/ExternalFormatGrammarComposerExtension.java diff --git a/legend-engine-core/legend-engine-core-language-pure/legend-engine-external-shared-format-model/src/main/resources/META-INF/services/org.finos.legend.engine.language.pure.grammar.from.extension.PureGrammarParserExtension b/legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar/src/main/resources/META-INF/services/org.finos.legend.engine.language.pure.grammar.from.extension.PureGrammarParserExtension similarity index 100% rename from legend-engine-core/legend-engine-core-language-pure/legend-engine-external-shared-format-model/src/main/resources/META-INF/services/org.finos.legend.engine.language.pure.grammar.from.extension.PureGrammarParserExtension rename to legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar/src/main/resources/META-INF/services/org.finos.legend.engine.language.pure.grammar.from.extension.PureGrammarParserExtension diff --git a/legend-engine-core/legend-engine-core-language-pure/legend-engine-external-shared-format-model/src/main/resources/META-INF/services/org.finos.legend.engine.language.pure.grammar.to.extension.PureGrammarComposerExtension b/legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar/src/main/resources/META-INF/services/org.finos.legend.engine.language.pure.grammar.to.extension.PureGrammarComposerExtension similarity index 100% rename from legend-engine-core/legend-engine-core-language-pure/legend-engine-external-shared-format-model/src/main/resources/META-INF/services/org.finos.legend.engine.language.pure.grammar.to.extension.PureGrammarComposerExtension rename to legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/legend-engine-external-format-grammar/src/main/resources/META-INF/services/org.finos.legend.engine.language.pure.grammar.to.extension.PureGrammarComposerExtension diff --git a/legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/pom.xml b/legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/pom.xml new file mode 100644 index 00000000000..9b7bc9b8a8e --- /dev/null +++ b/legend-engine-core/legend-engine-core-external-format/legend-engine-external-format-language/pom.xml @@ -0,0 +1,37 @@ + + + + + org.finos.legend.engine + legend-engine-core-external-format + 4.40.4-SNAPSHOT + + 4.0.0 + + legend-engine-external-format-language + pom + Legend Engine - External - Format - Language + + + legend-engine-external-format-core + legend-engine-external-format-grammar + legend-engine-external-format-compiler + legend-engine-external-format-generation + legend-engine-external-format-api + legend-engine-external-format-example + + \ No newline at end of file diff --git a/legend-engine-core/legend-engine-core-query-pure/pom.xml b/legend-engine-core/legend-engine-core-external-format/pom.xml similarity index 81% rename from legend-engine-core/legend-engine-core-query-pure/pom.xml rename to legend-engine-core/legend-engine-core-external-format/pom.xml index 4292c744185..b564e3bc681 100644 --- a/legend-engine-core/legend-engine-core-query-pure/pom.xml +++ b/legend-engine-core/legend-engine-core-external-format/pom.xml @@ -22,11 +22,12 @@ 4.0.0 - legend-engine-core-query-pure + legend-engine-core-external-format pom - Legend Engine - Core - Query - Pure + Legend Engine - External - Format - legend-engine-query-pure + legend-engine-external-format-execution + legend-engine-external-format-language \ No newline at end of file diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/pom.xml b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/pom.xml similarity index 93% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/pom.xml rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/pom.xml index 881251df8e0..3810f4825cc 100644 --- a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/pom.xml +++ b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/pom.xml @@ -21,7 +21,7 @@ org.finos.legend.engine - legend-engine-pure-code + legend-engine-core-pure 4.40.4-SNAPSHOT @@ -41,7 +41,7 @@ org.finos.legend.engine:legend-engine-pure-platform-dsl-path-java - org.finos.legend.pure:legend-pure-runtime-java-extension-dsl-store + org.finos.legend.pure:legend-pure-runtime-java-extension-compiled-dsl-store @@ -68,7 +68,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -142,7 +142,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -176,7 +176,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-mapping + legend-pure-runtime-java-extension-compiled-dsl-mapping ${legend.pure.version} @@ -187,13 +187,13 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-diagram + legend-pure-runtime-java-extension-compiled-dsl-diagram ${legend.pure.version} org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json ${legend.pure.version} @@ -219,7 +219,7 @@ - + org.finos.legend.pure @@ -252,7 +252,7 @@ - + @@ -292,7 +292,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-store + legend-pure-runtime-java-extension-compiled-dsl-store org.finos.legend.engine @@ -319,22 +319,22 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-store-relational + legend-pure-runtime-java-extension-compiled-store-relational runtime org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-mapping + legend-pure-runtime-java-extension-compiled-dsl-mapping runtime org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-graph + legend-pure-runtime-java-extension-compiled-dsl-graph runtime org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-path + legend-pure-runtime-java-extension-compiled-dsl-path runtime @@ -343,18 +343,18 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-tds + legend-pure-runtime-java-extension-compiled-dsl-tds runtime org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-shared-functions-json org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-diagram + legend-pure-runtime-java-extension-compiled-dsl-diagram runtime diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/java/org/finos/legend/engine/pure/code/core/CoreCodeRepositoryProvider.java b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/java/org/finos/legend/engine/pure/code/core/CoreCodeRepositoryProvider.java similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/java/org/finos/legend/engine/pure/code/core/CoreCodeRepositoryProvider.java rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/java/org/finos/legend/engine/pure/code/core/CoreCodeRepositoryProvider.java diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/META-INF/services/org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositoryProvider b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/META-INF/services/org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositoryProvider similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/META-INF/services/org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositoryProvider rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/META-INF/services/org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositoryProvider diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core.definition.json b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core.definition.json similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core.definition.json rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core.definition.json diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/coreExtensions.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/coreExtensions.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/coreExtensions.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/coreExtensions.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/fromJSON.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/fromJSON.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/fromJSON.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/fromJSON.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/json.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/json.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/json.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/json.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/jsonExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/jsonExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/jsonExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/jsonExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/modelSerialization.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/modelSerialization.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/modelSerialization.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/modelSerialization.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testFromJson.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testFromJson.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testFromJson.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testFromJson.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testFromJson2.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testFromJson2.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testFromJson2.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testFromJson2.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testJson.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testJson.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testJson.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testJson.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testToJson.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testToJson.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testToJson.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testToJson.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testToJson2.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testToJson2.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testToJson2.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/tests/testToJson2.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/toJSON.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/toJSON.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/toJSON.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/json/toJSON.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/yaml/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/yaml/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/yaml/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/yaml/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/yaml/metamodel_diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/yaml/metamodel_diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/yaml/metamodel_diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/yaml/metamodel_diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/yaml/serialization_yamlToString.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/yaml/serialization_yamlToString.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/yaml/serialization_yamlToString.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/yaml/serialization_yamlToString.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/yaml/tests/testtoyaml.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/yaml/tests/testtoyaml.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/yaml/tests/testtoyaml.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/external/format/yaml/tests/testtoyaml.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/legend/compiler/matchGenerator.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/legend/compiler/matchGenerator.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/legend/compiler/matchGenerator.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/legend/compiler/matchGenerator.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/legend/objectReference/objectReference.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/legend/objectReference/objectReference.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/legend/objectReference/objectReference.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/legend/objectReference/objectReference.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/legend/test/handlersTest.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/legend/test/handlersTest.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/legend/test/handlersTest.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/legend/test/handlersTest.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/legend/tools/devUtils.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/legend/tools/devUtils.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/legend/tools/devUtils.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/legend/tools/devUtils.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/binding/binding.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/binding/binding.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/binding/binding.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/binding/binding.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/binding/binding_diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/binding/binding_diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/binding/binding_diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/binding/binding_diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/binding/mapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/binding/mapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/binding/mapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/binding/mapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/binding/validation.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/binding/validation.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/binding/validation.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/binding/validation.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/executionPlan_diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/executionPlan_diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/executionPlan_diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/executionPlan_diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/executionPlan_generation.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/executionPlan_generation.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/executionPlan_generation.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/executionPlan_generation.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/executionPlan_print.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/executionPlan_print.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/executionPlan_print.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/executionPlan_print.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/model.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/model.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/model.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/model.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/tests/executionPlanTests.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/tests/executionPlanTests.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/tests/executionPlanTests.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/tests/executionPlanTests.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/tests/model.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/tests/model.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/tests/model.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/executionPlan/tests/model.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/externalFormat/externalFormatContract.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/externalFormat/externalFormatContract.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/externalFormat/externalFormatContract.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/externalFormat/externalFormatContract.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/functions/functions.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/functions/functions.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/functions/functions.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/functions/functions.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_21_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_21_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_21_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_21_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_22_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_22_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_22_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_22_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_23_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_23_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_23_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_23_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_24_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_24_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_24_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_24_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_24_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_24_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_24_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_24_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_24_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_24_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_24_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_24_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_25_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_25_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_25_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_25_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_25_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_25_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_25_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_25_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_25_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_25_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_25_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_25_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_26_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_26_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_26_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_26_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_26_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_26_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_26_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_26_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_26_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_26_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_26_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_26_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_27_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_27_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_27_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_27_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_27_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_27_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_27_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_27_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_27_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_27_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_27_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_27_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_28_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_28_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_28_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_28_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_28_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_28_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_28_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_28_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_28_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_28_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_28_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_28_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_29_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_29_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_29_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_29_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_29_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_29_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_29_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_29_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_29_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_29_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_29_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_29_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_30_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_30_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_30_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_30_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_30_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_30_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_30_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_30_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_30_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_30_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_30_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_30_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_31_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_31_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_31_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_31_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_31_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_31_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_31_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_31_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_31_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_31_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_31_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_31_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_32_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_32_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_32_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_32_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_32_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_32_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_32_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_32_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_32_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_32_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_32_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_32_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_33_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_33_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_33_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_33_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_33_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_33_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_33_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_33_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_33_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_33_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_33_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/v1_33_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/vX_X_X/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/vX_X_X/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/vX_X_X/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/vX_X_X/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/vX_X_X/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/vX_X_X/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/vX_X_X/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/vX_X_X/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/vX_X_X/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/vX_X_X/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/vX_X_X/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/protocols/pure/vX_X_X/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/schemaSet/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/schemaSet/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/schemaSet/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/schemaSet/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/schemaSet/metamodel_diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/schemaSet/metamodel_diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/schemaSet/metamodel_diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/schemaSet/metamodel_diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/transformation/generation.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/transformation/generation.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/transformation/generation.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/transformation/generation.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/transformation/tests/externalFormatContract.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/transformation/tests/externalFormatContract.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/transformation/tests/externalFormatContract.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/transformation/tests/externalFormatContract.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/utils/utils.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/utils/utils.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/utils/utils.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/binding/utils/utils.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/constraints/constraintsExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/constraints/constraintsExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/constraints/constraintsExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/constraints/constraintsExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/constraints/constraintsModelDiagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/constraints/constraintsModelDiagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/constraints/constraintsModelDiagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/constraints/constraintsModelDiagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/collectionExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/collectionExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/collectionExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/collectionExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/constraints.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/constraints.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/constraints.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/constraints.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/dateExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/dateExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/dateExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/dateExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/ioExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/ioExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/ioExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/ioExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/langExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/langExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/langExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/langExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/mathExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/mathExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/mathExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/mathExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/metaExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/metaExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/metaExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/metaExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/milestoningExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/milestoningExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/milestoningExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/milestoningExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/multiplicityExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/multiplicityExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/multiplicityExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/multiplicityExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/stringExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/stringExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/stringExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/stringExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/testExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/testExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/testExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/testExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collectionExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collectionExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collectionExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collectionExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testAnd.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testAnd.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testAnd.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testAnd.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testContainsAll.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testContainsAll.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testContainsAll.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testContainsAll.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testGetPropertyValues.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testGetPropertyValues.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testGetPropertyValues.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testGetPropertyValues.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testGroupBy.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testGroupBy.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testGroupBy.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testGroupBy.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testHead.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testHead.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testHead.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testHead.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testIntersection.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testIntersection.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testIntersection.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testIntersection.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testMap.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testMap.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testMap.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testMap.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testMapCollection.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testMapCollection.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testMapCollection.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testMapCollection.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testMax.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testMax.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testMax.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testMax.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testMin.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testMin.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testMin.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testMin.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testOneOf.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testOneOf.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testOneOf.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testOneOf.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testPartition.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testPartition.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testPartition.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testPartition.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testRemoveAll.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testRemoveAll.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testRemoveAll.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testRemoveAll.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testRemoveDuplicates.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testRemoveDuplicates.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testRemoveDuplicates.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testRemoveDuplicates.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testSortBy.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testSortBy.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testSortBy.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/collections/testSortBy.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDate.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDate.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDate.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDate.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDateElementFunctions.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDateElementFunctions.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDateElementFunctions.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDateElementFunctions.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDayEqualityFunctions.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDayEqualityFunctions.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDayEqualityFunctions.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDayEqualityFunctions.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDayOfWeekArithmetic.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDayOfWeekArithmetic.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDayOfWeekArithmetic.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDayOfWeekArithmetic.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDayOfWeekNumber.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDayOfWeekNumber.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDayOfWeekNumber.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDayOfWeekNumber.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDurationArithmetic.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDurationArithmetic.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDurationArithmetic.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testDurationArithmetic.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testFirstDayOf.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testFirstDayOf.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testFirstDayOf.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testFirstDayOf.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testMonthNumber.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testMonthNumber.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testMonthNumber.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testMonthNumber.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testTime.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testTime.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testTime.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/date/testTime.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/dateExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/dateExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/dateExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/dateExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/lang/testCast.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/lang/testCast.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/lang/testCast.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/lang/testCast.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/lang/testDot.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/lang/testDot.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/lang/testDot.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/lang/testDot.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/lang/testIsFalse.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/lang/testIsFalse.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/lang/testIsFalse.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/lang/testIsFalse.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/lang/testIsTrue.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/lang/testIsTrue.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/lang/testIsTrue.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/lang/testIsTrue.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/langExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/langExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/langExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/langExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testInferenceOnFunctionExpression.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testInferenceOnFunctionExpression.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testInferenceOnFunctionExpression.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testInferenceOnFunctionExpression.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testLambda.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testLambda.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testLambda.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testLambda.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testMatching.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testMatching.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testMatching.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testMatching.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testOpenVariablesOnLambda.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testOpenVariablesOnLambda.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testOpenVariablesOnLambda.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testOpenVariablesOnLambda.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testVariableNameSpaces.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testVariableNameSpaces.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testVariableNameSpaces.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/language/testVariableNameSpaces.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/mathExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/mathExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/mathExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/mathExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testAbs.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testAbs.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testAbs.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testAbs.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testAverage.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testAverage.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testAverage.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testAverage.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testMax.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testMax.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testMax.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testMax.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testMin.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testMin.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testMin.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testMin.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testSum.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testSum.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testSum.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testSum.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testTrig.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testTrig.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testTrig.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testTrig.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testVariance.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testVariance.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testVariance.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/math/testVariance.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testAllSpecializations.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testAllSpecializations.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testAllSpecializations.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testAllSpecializations.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testClass.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testClass.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testClass.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testClass.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testElementPath.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testElementPath.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testElementPath.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testElementPath.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testExtractEnumValue.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testExtractEnumValue.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testExtractEnumValue.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testExtractEnumValue.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testFunctionAsParameter.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testFunctionAsParameter.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testFunctionAsParameter.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testFunctionAsParameter.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testFunctionReturnType.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testFunctionReturnType.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testFunctionReturnType.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testFunctionReturnType.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testIsAbstract.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testIsAbstract.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testIsAbstract.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testIsAbstract.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testIsAny.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testIsAny.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testIsAny.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/meta/testIsAny.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/metaExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/metaExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/metaExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/metaExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/metaExtention_funcs.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/metaExtention_funcs.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/metaExtention_funcs.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/metaExtention_funcs.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/multiplicity/testHasLowerBound.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/multiplicity/testHasLowerBound.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/multiplicity/testHasLowerBound.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/multiplicity/testHasLowerBound.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/multiplicity/testIsMultiplicityConcrete.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/multiplicity/testIsMultiplicityConcrete.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/multiplicity/testIsMultiplicityConcrete.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/multiplicity/testIsMultiplicityConcrete.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/multiplicity/testIsZeroOne.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/multiplicity/testIsZeroOne.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/multiplicity/testIsZeroOne.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/multiplicity/testIsZeroOne.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testEqualIgnoreCase.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testEqualIgnoreCase.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testEqualIgnoreCase.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testEqualIgnoreCase.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testLastIndexOf.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testLastIndexOf.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testLastIndexOf.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testLastIndexOf.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testLeft.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testLeft.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testLeft.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testLeft.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testMakeString.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testMakeString.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testMakeString.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testMakeString.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testRight.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testRight.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testRight.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testRight.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testToRepresentation.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testToRepresentation.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testToRepresentation.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testToRepresentation.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testToUpperFirstCharacter.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testToUpperFirstCharacter.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testToUpperFirstCharacter.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testToUpperFirstCharacter.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testUUID.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testUUID.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testUUID.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/string/testUUID.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/stringExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/stringExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/stringExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/stringExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/test/testIsTest.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/test/testIsTest.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/test/testIsTest.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/test/testIsTest.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/test/testIsTestElement.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/test/testIsTestElement.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/test/testIsTestElement.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/test/testIsTestElement.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/testModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/testModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/testModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/tests/testModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/unit.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/unit.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/unit.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/corefunctions/unit.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/data/data.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/data/data.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/data/data.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/data/data.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/data/diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/data/diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/data/diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/data/diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/dataQuality/dataQuality.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/dataQuality/dataQuality.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/dataQuality/dataQuality.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/dataQuality/dataQuality.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/documentation/documentation_extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/documentation/documentation_extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/documentation/documentation_extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/documentation/documentation_extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/enterprise/enterprise.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/enterprise/enterprise.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/enterprise/enterprise.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/enterprise/enterprise.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlanFeature.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlanFeature.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlanFeature.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlanFeature.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan_diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan_diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan_diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan_diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan_execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan_execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan_execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan_execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan_generation.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan_generation.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan_generation.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan_generation.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan_print.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan_print.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan_print.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/executionPlan_print.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/extensions.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/extensions.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/extensions.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/extensions.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/platformBinding/platformBinding.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/platformBinding/platformBinding.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/platformBinding/platformBinding.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/platformBinding/platformBinding.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/platformBinding/typeInfo/typeInfo.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/platformBinding/typeInfo/typeInfo.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/platformBinding/typeInfo/typeInfo.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/platformBinding/typeInfo/typeInfo.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/platformBinding/typeInfo/typeInfoTest.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/platformBinding/typeInfo/typeInfoTest.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/platformBinding/typeInfo/typeInfoTest.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/platformBinding/typeInfo/typeInfoTest.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/test/executionPlan_execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/test/executionPlan_execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/test/executionPlan_execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/test/executionPlan_execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/test/testExecutionPlanFeatureFlag.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/test/testExecutionPlanFeatureFlag.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/test/testExecutionPlanFeatureFlag.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/executionPlan/test/testExecutionPlanFeatureFlag.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/extensions/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/extensions/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/extensions/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/extensions/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/extensions/functions.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/extensions/functions.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/extensions/functions.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/extensions/functions.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/function/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/function/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/function/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/function/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/domain/domainManagement.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/domain/domainManagement.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/domain/domainManagement.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/domain/domainManagement.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/domain/tests/testDomainManagement.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/domain/tests/testDomainManagement.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/domain/tests/testDomainManagement.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/domain/tests/testDomainManagement.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/graphExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/graphExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/graphExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/graphExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/graphFetch.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/graphFetch.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/graphFetch.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/graphFetch.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/graphFetchExecutionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/graphFetchExecutionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/graphFetchExecutionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/graphFetchExecutionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/graphFetch_routing.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/graphFetch_routing.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/graphFetch_routing.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/graphFetch_routing.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/sourceTreeCalc/subType/testOnSourceRoot.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/sourceTreeCalc/subType/testOnSourceRoot.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/sourceTreeCalc/subType/testOnSourceRoot.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/sourceTreeCalc/subType/testOnSourceRoot.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/sourceTreeCalc/testSourceTreeCalc.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/sourceTreeCalc/testSourceTreeCalc.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/sourceTreeCalc/testSourceTreeCalc.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/sourceTreeCalc/testSourceTreeCalc.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/testCrossStoreGraphFetch.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/testCrossStoreGraphFetch.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/testCrossStoreGraphFetch.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/testCrossStoreGraphFetch.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/testPropertyTreeConversion.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/testPropertyTreeConversion.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/testPropertyTreeConversion.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/testPropertyTreeConversion.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/testRouting.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/testRouting.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/testRouting.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/testRouting.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/testUnion.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/testUnion.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/testUnion.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/graphFetch/tests/testUnion.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/helperFunctions.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/helperFunctions.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/helperFunctions.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/helperFunctions.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/scanExecute.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/scanExecute.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/scanExecute.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/scanExecute.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/scanMapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/scanMapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/scanMapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/scanMapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/scanProject.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/scanProject.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/scanProject.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/scanProject.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/scanProperties.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/scanProperties.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/scanProperties.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/lineage/scanProperties.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mapping/XStore.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mapping/XStore.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mapping/XStore.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mapping/XStore.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mapping/mappingExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mapping/mappingExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mapping/mappingExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mapping/mappingExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mapping/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mapping/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mapping/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mapping/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mapping/modelToModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mapping/modelToModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mapping/modelToModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mapping/modelToModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/metamodel_diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/metamodel_diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/metamodel_diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/metamodel_diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/milestoning/milestoning.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/milestoning/milestoning.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/milestoning/milestoning.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/milestoning/milestoning.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/model/modelUnit.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/model/modelUnit.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/model/modelUnit.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/model/modelUnit.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/model/modelUnitTests.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/model/modelUnitTests.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/model/modelUnitTests.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/model/modelUnitTests.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mutation/mutation.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mutation/mutation.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mutation/mutation.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/mutation/mutation.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/platform/executionPlan/executionPlan_generation.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/platform/executionPlan/executionPlan_generation.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/platform/executionPlan/executionPlan_generation.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/platform/executionPlan/executionPlan_generation.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/generation/builder/generation.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/generation/builder/generation.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/generation/builder/generation.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/generation/builder/generation.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/generation/builder/generation_test.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/generation/builder/generation_test.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/generation/builder/generation_test.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/generation/builder/generation_test.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/generation/serialization/scan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/generation/serialization/scan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/generation/serialization/scan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/generation/serialization/scan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/generation/serialization/scanTest.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/generation/serialization/scanTest.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/generation/serialization/scanTest.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/generation/serialization/scanTest.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/protocol.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/protocol.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/protocol.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/protocol.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/invocations/execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/invocations/execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/invocations/execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/invocations/execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/invocations/testLoadModels.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/invocations/testLoadModels.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/invocations/testLoadModels.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/invocations/testLoadModels.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/models/diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/models/diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/models/diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/models/diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/models/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/models/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/models/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/models/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/models/results.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/models/results.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/models/results.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/models/results.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/scan/buildBasePureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/scan/buildBasePureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/scan/buildBasePureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/scan/buildBasePureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/mapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/mapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/mapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/mapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/store.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/store.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/store.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/store.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/valueSpecification.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/valueSpecification.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/valueSpecification.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_18_0/transfers/valueSpecification.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/invocations/execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/invocations/execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/invocations/execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/invocations/execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/invocations/testLoadModels.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/invocations/testLoadModels.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/invocations/testLoadModels.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/invocations/testLoadModels.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/models/diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/models/diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/models/diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/models/diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/models/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/models/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/models/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/models/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/models/results.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/models/results.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/models/results.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/models/results.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/scan/buildBasePureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/scan/buildBasePureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/scan/buildBasePureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/scan/buildBasePureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/scan/buildPureModelAsText.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/scan/buildPureModelAsText.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/scan/buildPureModelAsText.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/scan/buildPureModelAsText.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/scan/testBuildPureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/scan/testBuildPureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/scan/testBuildPureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/scan/testBuildPureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/mapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/mapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/mapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/mapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/store.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/store.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/store.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/store.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/valueSpecification.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/valueSpecification.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/valueSpecification.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_19_0/transfers/valueSpecification.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/invocations/execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/invocations/execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/invocations/execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/invocations/execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/invocations/testLoadModels.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/invocations/testLoadModels.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/invocations/testLoadModels.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/invocations/testLoadModels.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/models/diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/models/diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/models/diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/models/diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/models/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/models/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/models/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/models/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/models/results.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/models/results.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/models/results.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/models/results.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/scan/buildBasePureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/scan/buildBasePureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/scan/buildBasePureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/scan/buildBasePureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/scan/buildPureModelAsText.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/scan/buildPureModelAsText.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/scan/buildPureModelAsText.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/scan/buildPureModelAsText.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/scan/testBuildPureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/scan/testBuildPureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/scan/testBuildPureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/scan/testBuildPureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/mapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/mapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/mapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/mapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/store.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/store.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/store.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/store.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/valueSpecification.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/valueSpecification.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/valueSpecification.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_20_0/transfers/valueSpecification.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/invocations/execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/invocations/execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/invocations/execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/invocations/execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/invocations/testLoadModels.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/invocations/testLoadModels.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/invocations/testLoadModels.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/invocations/testLoadModels.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/models/diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/models/diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/models/diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/models/diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/models/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/models/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/models/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/models/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/models/results.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/models/results.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/models/results.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/models/results.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/scan/buildBasePureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/scan/buildBasePureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/scan/buildBasePureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/scan/buildBasePureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/scan/buildPureModelAsText.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/scan/buildPureModelAsText.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/scan/buildPureModelAsText.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/scan/buildPureModelAsText.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/scan/testBuildPureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/scan/testBuildPureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/scan/testBuildPureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/scan/testBuildPureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/mapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/mapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/mapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/mapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/store.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/store.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/store.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/store.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/valueSpecification.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/valueSpecification.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/valueSpecification.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_21_0/transfers/valueSpecification.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/invocations/execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/invocations/execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/invocations/execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/invocations/execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/invocations/testLoadModels.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/invocations/testLoadModels.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/invocations/testLoadModels.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/invocations/testLoadModels.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/models/diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/models/diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/models/diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/models/diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/models/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/models/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/models/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/models/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/models/results.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/models/results.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/models/results.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/models/results.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/scan/buildBasePureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/scan/buildBasePureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/scan/buildBasePureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/scan/buildBasePureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/scan/buildPureModelAsText.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/scan/buildPureModelAsText.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/scan/buildPureModelAsText.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/scan/buildPureModelAsText.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/scan/testBuildPureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/scan/testBuildPureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/scan/testBuildPureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/scan/testBuildPureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/mapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/mapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/mapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/mapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/store.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/store.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/store.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/store.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/valueSpecification.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/valueSpecification.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/valueSpecification.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_22_0/transfers/valueSpecification.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/invocations/execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/invocations/execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/invocations/execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/invocations/execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/invocations/testLoadModels.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/invocations/testLoadModels.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/invocations/testLoadModels.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/invocations/testLoadModels.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/models/diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/models/diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/models/diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/models/diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/models/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/models/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/models/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/models/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/models/results.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/models/results.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/models/results.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/models/results.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/scan/buildBasePureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/scan/buildBasePureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/scan/buildBasePureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/scan/buildBasePureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/scan/buildPureModelAsText.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/scan/buildPureModelAsText.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/scan/buildPureModelAsText.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/scan/buildPureModelAsText.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/scan/testBuildPureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/scan/testBuildPureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/scan/testBuildPureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/scan/testBuildPureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/mapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/mapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/mapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/mapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/store.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/store.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/store.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/store.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/valueSpecification.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/valueSpecification.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/valueSpecification.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_23_0/transfers/valueSpecification.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/invocations/execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/invocations/execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/invocations/execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/invocations/execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/invocations/testLoadModels.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/invocations/testLoadModels.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/invocations/testLoadModels.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/invocations/testLoadModels.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/models/diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/models/diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/models/diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/models/diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/models/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/models/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/models/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/models/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/models/results.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/models/results.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/models/results.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/models/results.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/scan/buildBasePureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/scan/buildBasePureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/scan/buildBasePureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/scan/buildBasePureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/scan/buildPureModelAsText.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/scan/buildPureModelAsText.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/scan/buildPureModelAsText.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/scan/buildPureModelAsText.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/scan/testBuildPureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/scan/testBuildPureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/scan/testBuildPureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/scan/testBuildPureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/mapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/mapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/mapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/mapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/store.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/store.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/store.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/store.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/valueSpecification.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/valueSpecification.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/valueSpecification.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_24_0/transfers/valueSpecification.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/invocations/execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/invocations/execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/invocations/execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/invocations/execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/invocations/testLoadModels.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/invocations/testLoadModels.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/invocations/testLoadModels.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/invocations/testLoadModels.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/models/diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/models/diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/models/diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/models/diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/models/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/models/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/models/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/models/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/models/results.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/models/results.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/models/results.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/models/results.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/scan/buildBasePureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/scan/buildBasePureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/scan/buildBasePureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/scan/buildBasePureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/scan/buildPureModelAsText.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/scan/buildPureModelAsText.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/scan/buildPureModelAsText.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/scan/buildPureModelAsText.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/scan/testBuildPureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/scan/testBuildPureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/scan/testBuildPureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/scan/testBuildPureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/mapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/mapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/mapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/mapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/store.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/store.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/store.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/store.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/valueSpecification.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/valueSpecification.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/valueSpecification.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_25_0/transfers/valueSpecification.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/invocations/execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/invocations/execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/invocations/execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/invocations/execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/invocations/testLoadModels.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/invocations/testLoadModels.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/invocations/testLoadModels.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/invocations/testLoadModels.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/models/diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/models/diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/models/diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/models/diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/models/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/models/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/models/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/models/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/models/results.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/models/results.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/models/results.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/models/results.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/scan/buildBasePureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/scan/buildBasePureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/scan/buildBasePureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/scan/buildBasePureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/scan/buildPureModelAsText.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/scan/buildPureModelAsText.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/scan/buildPureModelAsText.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/scan/buildPureModelAsText.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/scan/testBuildPureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/scan/testBuildPureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/scan/testBuildPureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/scan/testBuildPureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/mapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/mapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/mapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/mapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/store.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/store.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/store.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/store.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/valueSpecification.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/valueSpecification.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/valueSpecification.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_26_0/transfers/valueSpecification.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/invocations/execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/invocations/execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/invocations/execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/invocations/execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/invocations/testLoadModels.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/invocations/testLoadModels.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/invocations/testLoadModels.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/invocations/testLoadModels.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/models/diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/models/diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/models/diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/models/diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/models/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/models/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/models/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/models/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/models/results.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/models/results.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/models/results.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/models/results.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/scan/buildBasePureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/scan/buildBasePureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/scan/buildBasePureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/scan/buildBasePureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/scan/buildPureModelAsText.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/scan/buildPureModelAsText.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/scan/buildPureModelAsText.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/scan/buildPureModelAsText.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/scan/testBuildPureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/scan/testBuildPureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/scan/testBuildPureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/scan/testBuildPureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/mapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/mapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/mapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/mapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/store.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/store.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/store.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/store.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/valueSpecification.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/valueSpecification.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/valueSpecification.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_27_0/transfers/valueSpecification.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/invocations/execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/invocations/execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/invocations/execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/invocations/execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/invocations/testLoadModels.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/invocations/testLoadModels.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/invocations/testLoadModels.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/invocations/testLoadModels.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/models/diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/models/diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/models/diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/models/diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/models/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/models/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/models/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/models/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/models/results.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/models/results.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/models/results.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/models/results.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/scan/buildBasePureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/scan/buildBasePureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/scan/buildBasePureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/scan/buildBasePureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/scan/buildPureModelAsText.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/scan/buildPureModelAsText.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/scan/buildPureModelAsText.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/scan/buildPureModelAsText.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/scan/testBuildPureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/scan/testBuildPureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/scan/testBuildPureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/scan/testBuildPureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/mapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/mapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/mapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/mapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/store.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/store.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/store.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/store.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/valueSpecification.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/valueSpecification.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/valueSpecification.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_28_0/transfers/valueSpecification.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/invocations/execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/invocations/execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/invocations/execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/invocations/execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/invocations/testBuildExecutionInput.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/invocations/testBuildExecutionInput.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/invocations/testBuildExecutionInput.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/invocations/testBuildExecutionInput.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/invocations/testLoadModels.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/invocations/testLoadModels.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/invocations/testLoadModels.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/invocations/testLoadModels.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/models/diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/models/diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/models/diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/models/diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/models/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/models/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/models/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/models/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/models/results.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/models/results.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/models/results.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/models/results.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/scan/buildBasePureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/scan/buildBasePureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/scan/buildBasePureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/scan/buildBasePureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/scan/buildPureModelAsText.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/scan/buildPureModelAsText.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/scan/buildPureModelAsText.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/scan/buildPureModelAsText.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/scan/testBuildPureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/scan/testBuildPureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/scan/testBuildPureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/scan/testBuildPureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/mapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/mapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/mapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/mapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/store.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/store.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/store.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/store.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/valueSpecification.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/valueSpecification.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/valueSpecification.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_29_0/transfers/valueSpecification.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/invocations/execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/invocations/execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/invocations/execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/invocations/execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/invocations/testBuildExecutionInput.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/invocations/testBuildExecutionInput.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/invocations/testBuildExecutionInput.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/invocations/testBuildExecutionInput.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/invocations/testLoadModels.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/invocations/testLoadModels.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/invocations/testLoadModels.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/invocations/testLoadModels.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/models/diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/models/diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/models/diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/models/diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/models/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/models/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/models/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/models/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/models/results.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/models/results.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/models/results.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/models/results.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/scan/buildBasePureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/scan/buildBasePureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/scan/buildBasePureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/scan/buildBasePureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/scan/buildPureModelAsText.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/scan/buildPureModelAsText.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/scan/buildPureModelAsText.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/scan/buildPureModelAsText.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/scan/testBuildPureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/scan/testBuildPureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/scan/testBuildPureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/scan/testBuildPureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/mapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/mapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/mapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/mapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/store.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/store.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/store.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/store.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/valueSpecification.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/valueSpecification.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/valueSpecification.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_30_0/transfers/valueSpecification.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/invocations/execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/invocations/execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/invocations/execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/invocations/execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/invocations/testBuildExecutionInput.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/invocations/testBuildExecutionInput.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/invocations/testBuildExecutionInput.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/invocations/testBuildExecutionInput.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/invocations/testLoadModels.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/invocations/testLoadModels.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/invocations/testLoadModels.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/invocations/testLoadModels.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/models/diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/models/diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/models/diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/models/diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/models/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/models/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/models/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/models/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/models/results.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/models/results.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/models/results.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/models/results.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/scan/buildBasePureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/scan/buildBasePureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/scan/buildBasePureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/scan/buildBasePureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/scan/buildPureModelAsText.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/scan/buildPureModelAsText.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/scan/buildPureModelAsText.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/scan/buildPureModelAsText.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/scan/testBuildPureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/scan/testBuildPureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/scan/testBuildPureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/scan/testBuildPureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/mapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/mapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/mapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/mapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/store.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/store.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/store.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/store.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/valueSpecification.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/valueSpecification.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/valueSpecification.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_31_0/transfers/valueSpecification.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/invocations/execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/invocations/execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/invocations/execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/invocations/execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/invocations/testBuildExecutionInput.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/invocations/testBuildExecutionInput.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/invocations/testBuildExecutionInput.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/invocations/testBuildExecutionInput.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/invocations/testLoadModels.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/invocations/testLoadModels.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/invocations/testLoadModels.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/invocations/testLoadModels.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/models/diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/models/diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/models/diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/models/diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/models/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/models/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/models/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/models/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/models/results.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/models/results.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/models/results.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/models/results.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/scan/buildBasePureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/scan/buildBasePureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/scan/buildBasePureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/scan/buildBasePureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/scan/buildPureModelAsText.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/scan/buildPureModelAsText.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/scan/buildPureModelAsText.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/scan/buildPureModelAsText.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/scan/testBuildPureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/scan/testBuildPureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/scan/testBuildPureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/scan/testBuildPureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/mapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/mapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/mapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/mapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/store.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/store.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/store.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/store.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/valueSpecification.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/valueSpecification.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/valueSpecification.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_32_0/transfers/valueSpecification.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/invocations/execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/invocations/execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/invocations/execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/invocations/execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/invocations/testBuildExecutionInput.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/invocations/testBuildExecutionInput.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/invocations/testBuildExecutionInput.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/invocations/testBuildExecutionInput.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/invocations/testLoadModels.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/invocations/testLoadModels.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/invocations/testLoadModels.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/invocations/testLoadModels.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/models/diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/models/diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/models/diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/models/diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/models/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/models/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/models/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/models/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/models/results.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/models/results.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/models/results.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/models/results.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/scan/buildBasePureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/scan/buildBasePureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/scan/buildBasePureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/scan/buildBasePureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/scan/buildPureModelAsText.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/scan/buildPureModelAsText.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/scan/buildPureModelAsText.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/scan/buildPureModelAsText.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/scan/testBuildPureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/scan/testBuildPureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/scan/testBuildPureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/scan/testBuildPureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/mapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/mapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/mapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/mapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/store.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/store.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/store.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/store.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/valueSpecification.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/valueSpecification.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/valueSpecification.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/v1_33_0/transfers/valueSpecification.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/extension/extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/extension/extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/extension/extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/extension/extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/invocations/execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/invocations/execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/invocations/execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/invocations/execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/invocations/testBuildExecutionInput.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/invocations/testBuildExecutionInput.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/invocations/testBuildExecutionInput.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/invocations/testBuildExecutionInput.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/invocations/testLoadModels.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/invocations/testLoadModels.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/invocations/testLoadModels.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/invocations/testLoadModels.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/models/diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/models/diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/models/diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/models/diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/models/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/models/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/models/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/models/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/models/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/models/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/models/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/models/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/models/results.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/models/results.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/models/results.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/models/results.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/scan/buildBasePureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/scan/buildBasePureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/scan/buildBasePureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/scan/buildBasePureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/scan/buildPureModelAsText.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/scan/buildPureModelAsText.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/scan/buildPureModelAsText.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/scan/buildPureModelAsText.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/scan/testBuildPureModel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/scan/testBuildPureModel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/scan/testBuildPureModel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/scan/testBuildPureModel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/executionPlan.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/executionPlan.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/executionPlan.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/executionPlan.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/mapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/mapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/mapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/mapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/store.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/store.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/store.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/store.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/valueSpecification.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/valueSpecification.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/valueSpecification.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/protocol/vX_X_X/transfers/valueSpecification.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/clustering/clustering.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/clustering/clustering.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/clustering/clustering.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/clustering/clustering.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/deprecated/deprecated.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/deprecated/deprecated.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/deprecated/deprecated.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/deprecated/deprecated.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/extension/router_extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/extension/router_extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/extension/router_extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/extension/router_extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/externalFormat/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/externalFormat/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/externalFormat/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/externalFormat/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/externalFormat/routing.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/externalFormat/routing.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/externalFormat/routing.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/externalFormat/routing.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/metamodel/clustering.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/metamodel/clustering.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/metamodel/clustering.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/metamodel/clustering.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/metamodel/diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/metamodel/diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/metamodel/diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/metamodel/diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/metamodel/routing.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/metamodel/routing.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/metamodel/routing.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/metamodel/routing.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/operations/router_operations.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/operations/router_operations.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/operations/router_operations.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/operations/router_operations.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/platform/execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/platform/execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/platform/execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/platform/execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/platform/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/platform/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/platform/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/platform/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/platform/routing.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/platform/routing.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/platform/routing.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/platform/routing.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/preeval/preeval.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/preeval/preeval.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/preeval/preeval.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/preeval/preeval.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/preeval/tests.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/preeval/tests.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/preeval/tests.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/preeval/tests.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/printer/printer.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/printer/printer.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/printer/printer.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/printer/printer.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/router_entry.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/router_entry.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/router_entry.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/router_entry.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/router_execution.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/router_execution.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/router_execution.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/router_execution.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/router_main.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/router_main.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/router_main.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/router_main.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/routing/router_routing.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/routing/router_routing.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/routing/router_routing.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/routing/router_routing.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/analytics.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/analytics.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/analytics.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/analytics.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/builder.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/builder.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/builder.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/builder.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/cluster.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/cluster.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/cluster.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/cluster.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/metamodel.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/metamodel.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/metamodel.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/metamodel.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/routing.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/routing.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/routing.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/store/routing.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/utils/utils.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/utils/utils.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/utils/utils.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/router/utils/utils.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/runtime/runtimeExtension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/runtime/runtimeExtension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/runtime/runtimeExtension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/runtime/runtimeExtension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/section/section.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/section/section.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/section/section.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/section/section.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/serialization/toPureGrammar.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/serialization/toPureGrammar.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/serialization/toPureGrammar.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/serialization/toPureGrammar.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/store/storeContract.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/store/storeContract.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/store/storeContract.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/store/storeContract.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tds/tds.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tds/tds.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tds/tds.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tds/tds.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tds/tdsExtensions.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tds/tdsExtensions.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tds/tdsExtensions.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tds/tdsExtensions.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tds/tdsSchema.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tds/tdsSchema.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tds/tdsSchema.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tds/tdsSchema.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tds/testTdsSchema.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tds/testTdsSchema.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tds/testTdsSchema.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tds/testTdsSchema.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/test/diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/test/diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/test/diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/test/diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/test/testCollection.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/test/testCollection.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/test/testCollection.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/test/testCollection.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/test/testable.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/test/testable.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/test/testable.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/test/testable.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/test/tests/testTestCollection.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/test/tests/testTestCollection.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/test/tests/testTestCollection.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/test/tests/testTestCollection.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tools/testProfiles.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tools/testProfiles.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tools/testProfiles.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tools/testProfiles.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tools/tools_extension.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tools/tools_extension.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tools/tools_extension.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/tools/tools_extension.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/treepath/treePath.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/treepath/treePath.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/treepath/treePath.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/treepath/treePath.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/valueSpec.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/valueSpec.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/valueSpec.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/pure/valueSpec.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/aggregationAware/aggregationAware.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/aggregationAware/aggregationAware.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/aggregationAware/aggregationAware.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/aggregationAware/aggregationAware.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/aggregationAware/storeContract.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/aggregationAware/storeContract.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/aggregationAware/storeContract.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/aggregationAware/storeContract.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/chain.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/chain.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/chain.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/chain.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/executionPlan_diagram.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/executionPlan_diagram.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/executionPlan_diagram.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/executionPlan_diagram.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/inMemory.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/inMemory.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/inMemory.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/inMemory.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/storeContract.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/storeContract.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/storeContract.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/storeContract.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/createInstances.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/createInstances.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/createInstances.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/createInstances.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/delta.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/delta.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/delta.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/delta.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/filter.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/filter.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/filter.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/filter.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/autoMapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/autoMapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/autoMapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/autoMapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/chain/dataQualityChain.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/chain/dataQualityChain.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/chain/dataQualityChain.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/chain/dataQualityChain.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/chain/filterChain.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/chain/filterChain.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/chain/filterChain.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/chain/filterChain.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/chain/parametersChain.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/chain/parametersChain.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/chain/parametersChain.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/chain/parametersChain.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/chain/simpleChain.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/chain/simpleChain.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/chain/simpleChain.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/chain/simpleChain.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/constraints.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/constraints.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/constraints.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/constraints.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/dataQuality.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/dataQuality.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/dataQuality.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/dataQuality.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/filterGraphFetch.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/filterGraphFetch.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/filterGraphFetch.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/filterGraphFetch.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/filterInMapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/filterInMapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/filterInMapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/filterInMapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/functionInMapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/functionInMapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/functionInMapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/functionInMapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/graphWithAssociations.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/graphWithAssociations.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/graphWithAssociations.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/graphWithAssociations.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/graphWithSubTypes/testOnSourceRoot.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/graphWithSubTypes/testOnSourceRoot.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/graphWithSubTypes/testOnSourceRoot.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/graphWithSubTypes/testOnSourceRoot.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/graphWithoutAssociations.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/graphWithoutAssociations.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/graphWithoutAssociations.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/graphWithoutAssociations.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/merge.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/merge.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/merge.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/merge.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/milestoning/MilestonedM2M.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/milestoning/MilestonedM2M.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/milestoning/MilestonedM2M.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/milestoning/MilestonedM2M.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/milestoning/model.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/milestoning/model.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/milestoning/model.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/milestoning/model.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/multiStepFunctions.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/multiStepFunctions.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/multiStepFunctions.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/multiStepFunctions.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/multiplicities.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/multiplicities.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/multiplicities.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/multiplicities.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/nilHandling.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/nilHandling.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/nilHandling.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/nilHandling.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/propertyUnion.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/propertyUnion.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/propertyUnion.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/propertyUnion.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/qualifiedProperties.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/qualifiedProperties.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/qualifiedProperties.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/qualifiedProperties.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/simpleObject.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/simpleObject.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/simpleObject.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/simpleObject.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/simpleObjectXml.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/simpleObjectXml.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/simpleObjectXml.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/simpleObjectXml.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/sourceAssociationRequiredByMapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/sourceAssociationRequiredByMapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/sourceAssociationRequiredByMapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/sourceAssociationRequiredByMapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/testComplexTypeAutoMapping.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/testComplexTypeAutoMapping.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/testComplexTypeAutoMapping.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/testComplexTypeAutoMapping.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/testEquality.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/testEquality.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/testEquality.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/testEquality.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/testExplosion.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/testExplosion.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/testExplosion.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/testExplosion.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/testUnitMeasure.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/testUnitMeasure.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/testUnitMeasure.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/testUnitMeasure.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/toFromSameName.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/toFromSameName.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/toFromSameName.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/toFromSameName.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/union.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/union.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/union.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/union.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/unitMeasure.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/unitMeasure.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/unitMeasure.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/unitMeasure.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/userFunctions.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/userFunctions.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/userFunctions.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/userFunctions.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/util.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/util.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/util.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/legend/util.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/merge.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/merge.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/merge.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/merge.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/primitives.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/primitives.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/primitives.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/primitives.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/shared.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/shared.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/shared.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/shared.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/simple.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/simple.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/simple.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/main/resources/core/store/m2m/tests/simple.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/test/java/org/finos/legend/engine/pure/code/core/TestCoreCompiledStateIntegrity.java b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/test/java/org/finos/legend/engine/pure/code/core/TestCoreCompiledStateIntegrity.java similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/test/java/org/finos/legend/engine/pure/code/core/TestCoreCompiledStateIntegrity.java rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/test/java/org/finos/legend/engine/pure/code/core/TestCoreCompiledStateIntegrity.java diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/test/java/org/finos/legend/engine/pure/code/core/TestIdBuilderCore.java b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/test/java/org/finos/legend/engine/pure/code/core/TestIdBuilderCore.java similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/test/java/org/finos/legend/engine/pure/code/core/TestIdBuilderCore.java rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/test/java/org/finos/legend/engine/pure/code/core/TestIdBuilderCore.java diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/test/java/org/finos/legend/engine/pure/code/core/Test_Pure_Core.java b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/test/java/org/finos/legend/engine/pure/code/core/Test_Pure_Core.java similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core/src/test/java/org/finos/legend/engine/pure/code/core/Test_Pure_Core.java rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core/src/test/java/org/finos/legend/engine/pure/code/core/Test_Pure_Core.java diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/pom.xml b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/pom.xml similarity index 95% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/pom.xml rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/pom.xml index c5dbbf76195..f6912258847 100644 --- a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/pom.xml +++ b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/pom.xml @@ -21,7 +21,7 @@ org.finos.legend.engine - legend-engine-pure-code + legend-engine-core-pure 4.40.4-SNAPSHOT @@ -52,7 +52,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -80,12 +80,12 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} org.finos.legend.pure - legend-pure-runtime-java-extension-functions + legend-pure-runtime-java-extension-compiled-functions-base ${legend.pure.version} diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/java/org/finos/legend/pure/code/core/CoreCoreFunctionsCodeRepositoryProvider.java b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/java/org/finos/legend/pure/code/core/CoreCoreFunctionsCodeRepositoryProvider.java similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/java/org/finos/legend/pure/code/core/CoreCoreFunctionsCodeRepositoryProvider.java rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/java/org/finos/legend/pure/code/core/CoreCoreFunctionsCodeRepositoryProvider.java diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/META-INF/services/org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositoryProvider b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/META-INF/services/org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositoryProvider similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/META-INF/services/org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositoryProvider rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/META-INF/services/org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositoryProvider diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions.definition.json b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions.definition.json similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions.definition.json rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions.definition.json diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/collection/containsAny.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/collection/containsAny.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/collection/containsAny.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/collection/containsAny.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/collection/in.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/collection/in.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/collection/in.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/collection/in.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/meta/getAllPackageableElements.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/meta/getAllPackageableElements.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/meta/getAllPackageableElements.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/meta/getAllPackageableElements.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/meta/hasStereotype.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/meta/hasStereotype.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/meta/hasStereotype.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/meta/hasStereotype.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/meta/value4Tag.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/meta/value4Tag.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/meta/value4Tag.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/meta/value4Tag.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/edgePointPropertyName.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/edgePointPropertyName.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/edgePointPropertyName.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/edgePointPropertyName.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/getMilestonedGeneratedQualifiedPropertiesForEdgePointProperty.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/getMilestonedGeneratedQualifiedPropertiesForEdgePointProperty.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/getMilestonedGeneratedQualifiedPropertiesForEdgePointProperty.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/getMilestonedGeneratedQualifiedPropertiesForEdgePointProperty.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/hasGeneratedMilestoningDatePropertyStereotype.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/hasGeneratedMilestoningDatePropertyStereotype.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/hasGeneratedMilestoningDatePropertyStereotype.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/hasGeneratedMilestoningDatePropertyStereotype.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/hasGeneratedMilestoningPropertyStereotype.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/hasGeneratedMilestoningPropertyStereotype.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/hasGeneratedMilestoningPropertyStereotype.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/hasGeneratedMilestoningPropertyStereotype.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/isEdgePointProperty.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/isEdgePointProperty.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/isEdgePointProperty.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/isEdgePointProperty.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/originalPropertyNameForEdgePointProperty.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/originalPropertyNameForEdgePointProperty.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/originalPropertyNameForEdgePointProperty.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/originalPropertyNameForEdgePointProperty.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/reverseMilestoningTransforms.pure b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/reverseMilestoningTransforms.pure similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/reverseMilestoningTransforms.pure rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/main/resources/core_functions/milestoning/reverseMilestoningTransforms.pure diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/test/java/org/finos/legend/engine/pure/code/core/Test_Pure_Core_Functions.java b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/test/java/org/finos/legend/engine/pure/code/core/Test_Pure_Core_Functions.java similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-functions/src/test/java/org/finos/legend/engine/pure/code/core/Test_Pure_Core_Functions.java rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-functions/src/test/java/org/finos/legend/engine/pure/code/core/Test_Pure_Core_Functions.java diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/pom.xml b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/pom.xml similarity index 97% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/pom.xml rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/pom.xml index dff66625284..67ba5671fd2 100644 --- a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/pom.xml +++ b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/pom.xml @@ -21,7 +21,7 @@ org.finos.legend.engine - legend-engine-pure-code + legend-engine-core-pure 4.40.4-SNAPSHOT diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/BindingLegendPureCoreExtension.java b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/BindingLegendPureCoreExtension.java similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/BindingLegendPureCoreExtension.java rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/BindingLegendPureCoreExtension.java diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/CoreLegendPureCoreExtension.java b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/CoreLegendPureCoreExtension.java similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/CoreLegendPureCoreExtension.java rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/CoreLegendPureCoreExtension.java diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/ExternalFormatLegendPureCoreExtension.java b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/ExternalFormatLegendPureCoreExtension.java similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/ExternalFormatLegendPureCoreExtension.java rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/ExternalFormatLegendPureCoreExtension.java diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/FeatureLegendPureCoreExtension.java b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/FeatureLegendPureCoreExtension.java similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/FeatureLegendPureCoreExtension.java rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/FeatureLegendPureCoreExtension.java diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/JavaBindingLegendPureCoreExtension.java b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/JavaBindingLegendPureCoreExtension.java similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/JavaBindingLegendPureCoreExtension.java rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/JavaBindingLegendPureCoreExtension.java diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/LegendPureCoreExtension.java b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/LegendPureCoreExtension.java similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/LegendPureCoreExtension.java rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/LegendPureCoreExtension.java diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/PureCoreExtensionLoader.java b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/PureCoreExtensionLoader.java similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/PureCoreExtensionLoader.java rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/PureCoreExtensionLoader.java diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/StoreLegendPureCoreExtension.java b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/StoreLegendPureCoreExtension.java similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/StoreLegendPureCoreExtension.java rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/StoreLegendPureCoreExtension.java diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/TestLegendPureCoreExtension.java b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/TestLegendPureCoreExtension.java similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/TestLegendPureCoreExtension.java rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/main/java/org/finos/legend/engine/pure/code/core/TestLegendPureCoreExtension.java diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/main/resources/META-INF/services/org.finos.legend.engine.pure.code.core.LegendPureCoreExtension b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/main/resources/META-INF/services/org.finos.legend.engine.pure.code.core.LegendPureCoreExtension similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/main/resources/META-INF/services/org.finos.legend.engine.pure.code.core.LegendPureCoreExtension rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/main/resources/META-INF/services/org.finos.legend.engine.pure.code.core.LegendPureCoreExtension diff --git a/legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/test/java/org/finos/legend/engine/pure/code/core/core/TestExtensionAvailable.java b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/test/java/org/finos/legend/engine/pure/code/core/core/TestExtensionAvailable.java similarity index 100% rename from legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-core-extension/src/test/java/org/finos/legend/engine/pure/code/core/core/TestExtensionAvailable.java rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-core-extension/src/test/java/org/finos/legend/engine/pure/code/core/core/TestExtensionAvailable.java diff --git a/legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-diagram-java/pom.xml b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-diagram-java/pom.xml similarity index 99% rename from legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-diagram-java/pom.xml rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-diagram-java/pom.xml index 7c1beeb51c4..c1de0213206 100644 --- a/legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-diagram-java/pom.xml +++ b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-diagram-java/pom.xml @@ -59,7 +59,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-diagram + legend-pure-runtime-java-extension-compiled-dsl-diagram ${legend.pure.version} diff --git a/legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-graph-java/pom.xml b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-graph-java/pom.xml similarity index 96% rename from legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-graph-java/pom.xml rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-graph-java/pom.xml index 357c6f8641c..337169fce6a 100644 --- a/legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-graph-java/pom.xml +++ b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-graph-java/pom.xml @@ -59,18 +59,18 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-graph + legend-pure-runtime-java-extension-compiled-dsl-graph ${legend.pure.version} org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} org.finos.legend.pure - legend-pure-runtime-java-extension-functions + legend-pure-runtime-java-extension-compiled-functions-base ${legend.pure.version} @@ -91,7 +91,6 @@ org.finos.legend.pure legend-pure-m2-dsl-graph-pure - ${legend.pure.version} diff --git a/legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-mapping-java/pom.xml b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-mapping-java/pom.xml similarity index 96% rename from legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-mapping-java/pom.xml rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-mapping-java/pom.xml index 1c3a92360c1..7f92220edc1 100644 --- a/legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-mapping-java/pom.xml +++ b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-mapping-java/pom.xml @@ -64,18 +64,18 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-mapping + legend-pure-runtime-java-extension-compiled-dsl-mapping ${legend.pure.version} org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} org.finos.legend.pure - legend-pure-runtime-java-extension-functions + legend-pure-runtime-java-extension-compiled-functions-base ${legend.pure.version} diff --git a/legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-path-java/pom.xml b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-path-java/pom.xml similarity index 98% rename from legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-path-java/pom.xml rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-path-java/pom.xml index c1889070a65..b9325dbce8a 100644 --- a/legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-path-java/pom.xml +++ b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-path-java/pom.xml @@ -59,7 +59,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-path + legend-pure-runtime-java-extension-compiled-dsl-path ${legend.pure.version} @@ -80,7 +80,6 @@ org.finos.legend.pure legend-pure-m2-dsl-path-pure - ${legend.pure.version} diff --git a/legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-store-java/pom.xml b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-store-java/pom.xml similarity index 100% rename from legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-store-java/pom.xml rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-store-java/pom.xml diff --git a/legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-tds-java/pom.xml b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-tds-java/pom.xml similarity index 98% rename from legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-tds-java/pom.xml rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-tds-java/pom.xml index dc568b66b6f..2248efb9834 100644 --- a/legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-tds-java/pom.xml +++ b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-dsl-tds-java/pom.xml @@ -75,7 +75,6 @@ org.finos.legend.pure legend-pure-m2-dsl-tds-pure - ${legend.pure.version} diff --git a/legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-java/pom.xml b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-java/pom.xml similarity index 94% rename from legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-java/pom.xml rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-java/pom.xml index 568ea5fac16..c6955edc651 100644 --- a/legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-java/pom.xml +++ b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-java/pom.xml @@ -54,12 +54,12 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} org.finos.legend.pure - legend-pure-runtime-java-extension-functions + legend-pure-runtime-java-extension-compiled-functions-base ${legend.pure.version} @@ -81,10 +81,6 @@ org.finos.legend.pure legend-pure-runtime-java-engine-compiled - - org.finos.legend.pure - legend-pure-runtime-java-extension-functions - org.finos.legend.pure legend-pure-runtime-java-engine-shared @@ -95,6 +91,11 @@ legend-engine-pure-platform-java + + org.finos.legend.pure + legend-pure-runtime-java-extension-compiled-functions-base + + org.eclipse.collections eclipse-collections-api diff --git a/legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-json-java/pom.xml b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-json-java/pom.xml similarity index 91% rename from legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-json-java/pom.xml rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-json-java/pom.xml index 939902b4a4e..680e8810eb7 100644 --- a/legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-json-java/pom.xml +++ b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-json-java/pom.xml @@ -59,7 +59,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json ${legend.pure.version} @@ -87,11 +87,15 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json org.finos.legend.pure - legend-pure-runtime-java-extension-functions-shared-conversion + legend-pure-runtime-java-extension-shared-functions-json + + + org.finos.legend.pure + legend-pure-runtime-java-extension-shared-functions-conversion diff --git a/legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-relation-java/pom.xml b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-relation-java/pom.xml similarity index 89% rename from legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-relation-java/pom.xml rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-relation-java/pom.xml index f4b3de5c014..92da1727f70 100644 --- a/legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-relation-java/pom.xml +++ b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-functions-relation-java/pom.xml @@ -59,7 +59,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-relation + legend-pure-runtime-java-extension-compiled-functions-relation ${legend.pure.version} @@ -85,16 +85,11 @@ org.finos.legend.pure legend-pure-runtime-java-engine-compiled - - - - org.finos.legend.pure - legend-pure-runtime-java-extension-functions-relation + legend-pure-runtime-java-extension-compiled-functions-relation - org.finos.legend.engine legend-engine-pure-platform-java @@ -103,10 +98,6 @@ org.finos.legend.engine legend-engine-pure-platform-functions-java - - - - org.eclipse.collections diff --git a/legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-java/pom.xml b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-java/pom.xml similarity index 100% rename from legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-java/pom.xml rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-java/pom.xml diff --git a/legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-store-relational-java/pom.xml b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-store-relational-java/pom.xml similarity index 87% rename from legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-store-relational-java/pom.xml rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-store-relational-java/pom.xml index a21bbf00d8d..a6b0e1ab77e 100644 --- a/legend-engine-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-store-relational-java/pom.xml +++ b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/legend-engine-pure-platform-store-relational-java/pom.xml @@ -59,7 +59,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-store-relational + legend-pure-runtime-java-extension-compiled-store-relational ${legend.pure.version} @@ -70,18 +70,18 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-mapping + legend-pure-runtime-java-extension-compiled-dsl-mapping ${legend.pure.version} org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} org.finos.legend.pure - legend-pure-runtime-java-extension-functions + legend-pure-runtime-java-extension-compiled-functions-base ${legend.pure.version} @@ -122,17 +122,20 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-mapping + legend-pure-runtime-java-extension-compiled-dsl-mapping org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-store + legend-pure-runtime-java-extension-compiled-dsl-store org.finos.legend.pure - legend-pure-runtime-java-extension-store-relational + legend-pure-runtime-java-extension-compiled-store-relational + + + org.finos.legend.pure + legend-pure-runtime-java-extension-shared-store-relational - org.finos.legend.engine legend-engine-pure-platform-java @@ -145,6 +148,10 @@ org.finos.legend.engine legend-engine-pure-platform-dsl-mapping-java + + org.finos.legend.engine + legend-engine-pure-platform-dsl-store-java + org.eclipse.collections diff --git a/legend-engine-pure/legend-engine-pure-platform-modular-generation/pom.xml b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/pom.xml similarity index 97% rename from legend-engine-pure/legend-engine-pure-platform-modular-generation/pom.xml rename to legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/pom.xml index bd33cfa0dce..8398970588d 100644 --- a/legend-engine-pure/legend-engine-pure-platform-modular-generation/pom.xml +++ b/legend-engine-core/legend-engine-core-pure/legend-engine-pure-platform-modular-generation/pom.xml @@ -17,7 +17,7 @@ org.finos.legend.engine - legend-engine-pure + legend-engine-core-pure 4.40.4-SNAPSHOT 4.0.0 diff --git a/legend-engine-pure/legend-engine-pure-code/pom.xml b/legend-engine-core/legend-engine-core-pure/pom.xml similarity index 84% rename from legend-engine-pure/legend-engine-pure-code/pom.xml rename to legend-engine-core/legend-engine-core-pure/pom.xml index abaf29cf1af..c238d2e2d15 100644 --- a/legend-engine-pure/legend-engine-pure-code/pom.xml +++ b/legend-engine-core/legend-engine-core-pure/pom.xml @@ -17,18 +17,19 @@ org.finos.legend.engine - legend-engine-pure + legend-engine-core 4.40.4-SNAPSHOT 4.0.0 - legend-engine-pure-code + legend-engine-core-pure pom - Legend Engine - Pure - Code + Legend Engine - Core - Pure legend-engine-pure-code-compiled-core legend-engine-pure-code-compiled-functions legend-engine-pure-code-core-extension + legend-engine-pure-platform-modular-generation \ No newline at end of file diff --git a/legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/pom.xml b/legend-engine-core/legend-engine-core-query-pure-rest/pom.xml similarity index 94% rename from legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/pom.xml rename to legend-engine-core/legend-engine-core-query-pure-rest/pom.xml index da33c01f679..80e6fe2bf15 100644 --- a/legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/pom.xml +++ b/legend-engine-core/legend-engine-core-query-pure-rest/pom.xml @@ -18,11 +18,11 @@ org.finos.legend.engine - legend-engine-core-query-pure + legend-engine-core 4.40.4-SNAPSHOT 4.0.0 - legend-engine-query-pure + legend-engine-core-query-pure-rest Legend Engine - Query - Pure @@ -45,6 +45,10 @@ org.finos.legend.engine legend-engine-pure-platform-dsl-mapping-java + + org.finos.legend.engine + legend-engine-pure-platform-dsl-store-java + @@ -175,12 +179,12 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json test org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-mapping + legend-pure-runtime-java-extension-compiled-dsl-mapping test diff --git a/legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/main/java/org/finos/legend/engine/query/pure/api/Execute.java b/legend-engine-core/legend-engine-core-query-pure-rest/src/main/java/org/finos/legend/engine/query/pure/api/Execute.java similarity index 100% rename from legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/main/java/org/finos/legend/engine/query/pure/api/Execute.java rename to legend-engine-core/legend-engine-core-query-pure-rest/src/main/java/org/finos/legend/engine/query/pure/api/Execute.java diff --git a/legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/main/java/org/finos/legend/engine/query/pure/cache/PureExecutionCacheKey.java b/legend-engine-core/legend-engine-core-query-pure-rest/src/main/java/org/finos/legend/engine/query/pure/cache/PureExecutionCacheKey.java similarity index 100% rename from legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/main/java/org/finos/legend/engine/query/pure/cache/PureExecutionCacheKey.java rename to legend-engine-core/legend-engine-core-query-pure-rest/src/main/java/org/finos/legend/engine/query/pure/cache/PureExecutionCacheKey.java diff --git a/legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestExecuteFunctionExecutionPlan.java b/legend-engine-core/legend-engine-core-query-pure-rest/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestExecuteFunctionExecutionPlan.java similarity index 100% rename from legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestExecuteFunctionExecutionPlan.java rename to legend-engine-core/legend-engine-core-query-pure-rest/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestExecuteFunctionExecutionPlan.java diff --git a/legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestExecutionUtility.java b/legend-engine-core/legend-engine-core-query-pure-rest/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestExecutionUtility.java similarity index 100% rename from legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestExecutionUtility.java rename to legend-engine-core/legend-engine-core-query-pure-rest/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestExecutionUtility.java diff --git a/legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestM2MGrammarCompileAndExecute.java b/legend-engine-core/legend-engine-core-query-pure-rest/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestM2MGrammarCompileAndExecute.java similarity index 100% rename from legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestM2MGrammarCompileAndExecute.java rename to legend-engine-core/legend-engine-core-query-pure-rest/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestM2MGrammarCompileAndExecute.java diff --git a/legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestQueryExecutionWithParameters.java b/legend-engine-core/legend-engine-core-query-pure-rest/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestQueryExecutionWithParameters.java similarity index 100% rename from legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestQueryExecutionWithParameters.java rename to legend-engine-core/legend-engine-core-query-pure-rest/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestQueryExecutionWithParameters.java diff --git a/legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestRelationalManagerOnExecution.java b/legend-engine-core/legend-engine-core-query-pure-rest/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestRelationalManagerOnExecution.java similarity index 100% rename from legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestRelationalManagerOnExecution.java rename to legend-engine-core/legend-engine-core-query-pure-rest/src/test/java/org/finos/legend/engine/query/pure/api/test/inMemory/TestRelationalManagerOnExecution.java diff --git a/legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/java/org/finos/legend/engine/query/pure/cache/TestExecutionPlanCache.java b/legend-engine-core/legend-engine-core-query-pure-rest/src/test/java/org/finos/legend/engine/query/pure/cache/TestExecutionPlanCache.java similarity index 100% rename from legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/java/org/finos/legend/engine/query/pure/cache/TestExecutionPlanCache.java rename to legend-engine-core/legend-engine-core-query-pure-rest/src/test/java/org/finos/legend/engine/query/pure/cache/TestExecutionPlanCache.java diff --git a/legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/java/org/finos/legend/engine/query/pure/cache/TestPureExecutionCacheKey.java b/legend-engine-core/legend-engine-core-query-pure-rest/src/test/java/org/finos/legend/engine/query/pure/cache/TestPureExecutionCacheKey.java similarity index 100% rename from legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/java/org/finos/legend/engine/query/pure/cache/TestPureExecutionCacheKey.java rename to legend-engine-core/legend-engine-core-query-pure-rest/src/test/java/org/finos/legend/engine/query/pure/cache/TestPureExecutionCacheKey.java diff --git a/legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/resources/log4j.properties b/legend-engine-core/legend-engine-core-query-pure-rest/src/test/resources/log4j.properties similarity index 100% rename from legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/resources/log4j.properties rename to legend-engine-core/legend-engine-core-query-pure-rest/src/test/resources/log4j.properties diff --git a/legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/resources/org.finos.legend.engine.query.pure.cache/simpleQueryWithSDLCInfo.json b/legend-engine-core/legend-engine-core-query-pure-rest/src/test/resources/org.finos.legend.engine.query.pure.cache/simpleQueryWithSDLCInfo.json similarity index 100% rename from legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/resources/org.finos.legend.engine.query.pure.cache/simpleQueryWithSDLCInfo.json rename to legend-engine-core/legend-engine-core-query-pure-rest/src/test/resources/org.finos.legend.engine.query.pure.cache/simpleQueryWithSDLCInfo.json diff --git a/legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/resources/org/finos/legend/engine/query/pure/api/test/inMemory/at_zero.pure b/legend-engine-core/legend-engine-core-query-pure-rest/src/test/resources/org/finos/legend/engine/query/pure/api/test/inMemory/at_zero.pure similarity index 100% rename from legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/resources/org/finos/legend/engine/query/pure/api/test/inMemory/at_zero.pure rename to legend-engine-core/legend-engine-core-query-pure-rest/src/test/resources/org/finos/legend/engine/query/pure/api/test/inMemory/at_zero.pure diff --git a/legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/resources/org/finos/legend/engine/query/pure/api/test/inMemory/derived.pure b/legend-engine-core/legend-engine-core-query-pure-rest/src/test/resources/org/finos/legend/engine/query/pure/api/test/inMemory/derived.pure similarity index 100% rename from legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/resources/org/finos/legend/engine/query/pure/api/test/inMemory/derived.pure rename to legend-engine-core/legend-engine-core-query-pure-rest/src/test/resources/org/finos/legend/engine/query/pure/api/test/inMemory/derived.pure diff --git a/legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/resources/org/finos/legend/engine/query/pure/api/test/inMemory/no_properties.pure b/legend-engine-core/legend-engine-core-query-pure-rest/src/test/resources/org/finos/legend/engine/query/pure/api/test/inMemory/no_properties.pure similarity index 100% rename from legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/resources/org/finos/legend/engine/query/pure/api/test/inMemory/no_properties.pure rename to legend-engine-core/legend-engine-core-query-pure-rest/src/test/resources/org/finos/legend/engine/query/pure/api/test/inMemory/no_properties.pure diff --git a/legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/resources/relationalQueryExecutionInputEnumZeroOne.json b/legend-engine-core/legend-engine-core-query-pure-rest/src/test/resources/relationalQueryExecutionInputEnumZeroOne.json similarity index 100% rename from legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/resources/relationalQueryExecutionInputEnumZeroOne.json rename to legend-engine-core/legend-engine-core-query-pure-rest/src/test/resources/relationalQueryExecutionInputEnumZeroOne.json diff --git a/legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/resources/relationalQueryExecutionInputNoParameters.json b/legend-engine-core/legend-engine-core-query-pure-rest/src/test/resources/relationalQueryExecutionInputNoParameters.json similarity index 100% rename from legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/resources/relationalQueryExecutionInputNoParameters.json rename to legend-engine-core/legend-engine-core-query-pure-rest/src/test/resources/relationalQueryExecutionInputNoParameters.json diff --git a/legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/resources/relationalQueryExecutionInputZeroMany.json b/legend-engine-core/legend-engine-core-query-pure-rest/src/test/resources/relationalQueryExecutionInputZeroMany.json similarity index 100% rename from legend-engine-core/legend-engine-core-query-pure/legend-engine-query-pure/src/test/resources/relationalQueryExecutionInputZeroMany.json rename to legend-engine-core/legend-engine-core-query-pure-rest/src/test/resources/relationalQueryExecutionInputZeroMany.json diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-data-generation/pom.xml b/legend-engine-core/legend-engine-core-testable/legend-engine-test-data-generation/pom.xml similarity index 98% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-data-generation/pom.xml rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-data-generation/pom.xml index 6ee2f40c95d..9969521b35a 100644 --- a/legend-engine-core/legend-engine-core-test/legend-engine-test-data-generation/pom.xml +++ b/legend-engine-core/legend-engine-core-testable/legend-engine-test-data-generation/pom.xml @@ -2,7 +2,7 @@ org.finos.legend.engine - legend-engine-core-test + legend-engine-core-testable 4.40.4-SNAPSHOT 4.0.0 diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-data-generation/src/main/java/org/finos/legend/engine/testData/generation/api/TestDataGeneration.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-data-generation/src/main/java/org/finos/legend/engine/testData/generation/api/TestDataGeneration.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-data-generation/src/main/java/org/finos/legend/engine/testData/generation/api/TestDataGeneration.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-data-generation/src/main/java/org/finos/legend/engine/testData/generation/api/TestDataGeneration.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-data-generation/src/main/java/org/finos/legend/engine/testData/generation/model/TestDataGenerationInput.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-data-generation/src/main/java/org/finos/legend/engine/testData/generation/model/TestDataGenerationInput.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-data-generation/src/main/java/org/finos/legend/engine/testData/generation/model/TestDataGenerationInput.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-data-generation/src/main/java/org/finos/legend/engine/testData/generation/model/TestDataGenerationInput.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-data-generation/src/main/java/org/finos/legend/engine/testData/generation/model/TestDataGenerationResult.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-data-generation/src/main/java/org/finos/legend/engine/testData/generation/model/TestDataGenerationResult.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-data-generation/src/main/java/org/finos/legend/engine/testData/generation/model/TestDataGenerationResult.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-data-generation/src/main/java/org/finos/legend/engine/testData/generation/model/TestDataGenerationResult.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-data-generation/src/main/java/org/finos/legend/engine/testData/generation/service/TestDataGenerationService.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-data-generation/src/main/java/org/finos/legend/engine/testData/generation/service/TestDataGenerationService.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-data-generation/src/main/java/org/finos/legend/engine/testData/generation/service/TestDataGenerationService.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-data-generation/src/main/java/org/finos/legend/engine/testData/generation/service/TestDataGenerationService.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-data-generation/src/test/java/org.finos.legend.engine/testDataGeneration/TestDataGenerationTest.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-data-generation/src/test/java/org.finos.legend.engine/testDataGeneration/TestDataGenerationTest.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-data-generation/src/test/java/org.finos.legend.engine/testDataGeneration/TestDataGenerationTest.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-data-generation/src/test/java/org.finos.legend.engine/testDataGeneration/TestDataGenerationTest.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-data-generation/src/test/resources/models/relationalModelTestDataGenerationInput.json b/legend-engine-core/legend-engine-core-testable/legend-engine-test-data-generation/src/test/resources/models/relationalModelTestDataGenerationInput.json similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-data-generation/src/test/resources/models/relationalModelTestDataGenerationInput.json rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-data-generation/src/test/resources/models/relationalModelTestDataGenerationInput.json diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-framework/pom.xml b/legend-engine-core/legend-engine-core-testable/legend-engine-test-framework/pom.xml similarity index 98% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-framework/pom.xml rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-framework/pom.xml index 101ddf5e891..26d4bc3895e 100644 --- a/legend-engine-core/legend-engine-core-test/legend-engine-test-framework/pom.xml +++ b/legend-engine-core/legend-engine-core-testable/legend-engine-test-framework/pom.xml @@ -18,7 +18,7 @@ org.finos.legend.engine - legend-engine-core-test + legend-engine-core-testable 4.40.4-SNAPSHOT 4.0.0 diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-framework/src/main/java/org/finos/legend/engine/test/shared/framework/PureTestHelperFramework.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-framework/src/main/java/org/finos/legend/engine/test/shared/framework/PureTestHelperFramework.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-framework/src/main/java/org/finos/legend/engine/test/shared/framework/PureTestHelperFramework.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-framework/src/main/java/org/finos/legend/engine/test/shared/framework/PureTestHelperFramework.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-framework/src/main/java/org/finos/legend/engine/test/shared/framework/ServersState.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-framework/src/main/java/org/finos/legend/engine/test/shared/framework/ServersState.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-framework/src/main/java/org/finos/legend/engine/test/shared/framework/ServersState.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-framework/src/main/java/org/finos/legend/engine/test/shared/framework/ServersState.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-framework/src/main/java/org/finos/legend/engine/test/shared/framework/TestServerResource.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-framework/src/main/java/org/finos/legend/engine/test/shared/framework/TestServerResource.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-framework/src/main/java/org/finos/legend/engine/test/shared/framework/TestServerResource.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-framework/src/main/java/org/finos/legend/engine/test/shared/framework/TestServerResource.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/pom.xml b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/pom.xml similarity index 94% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/pom.xml rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/pom.xml index b105af00558..fc97c9f0b9f 100644 --- a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/pom.xml +++ b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/pom.xml @@ -18,7 +18,7 @@ org.finos.legend.engine - legend-engine-core-test + legend-engine-core-testable 4.40.4-SNAPSHOT 4.0.0 @@ -48,7 +48,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java org.finos.legend.engine @@ -141,7 +141,12 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure + test + + + org.finos.legend.engine + legend-engine-configuration-plan-generation-serialization test diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/src/main/java/org/finos/legend/engine/testable/function/extension/FunctionTestRunner.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/src/main/java/org/finos/legend/engine/testable/function/extension/FunctionTestRunner.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/src/main/java/org/finos/legend/engine/testable/function/extension/FunctionTestRunner.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/src/main/java/org/finos/legend/engine/testable/function/extension/FunctionTestRunner.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/src/main/java/org/finos/legend/engine/testable/function/extension/FunctionTestRunnerContext.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/src/main/java/org/finos/legend/engine/testable/function/extension/FunctionTestRunnerContext.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/src/main/java/org/finos/legend/engine/testable/function/extension/FunctionTestRunnerContext.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/src/main/java/org/finos/legend/engine/testable/function/extension/FunctionTestRunnerContext.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/src/main/java/org/finos/legend/engine/testable/function/extension/FunctionTestableRunnerExtension.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/src/main/java/org/finos/legend/engine/testable/function/extension/FunctionTestableRunnerExtension.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/src/main/java/org/finos/legend/engine/testable/function/extension/FunctionTestableRunnerExtension.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/src/main/java/org/finos/legend/engine/testable/function/extension/FunctionTestableRunnerExtension.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/src/main/resources/META-INF/services/org.finos.legend.engine.testable.extension.TestableRunnerExtension b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/src/main/resources/META-INF/services/org.finos.legend.engine.testable.extension.TestableRunnerExtension similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/src/main/resources/META-INF/services/org.finos.legend.engine.testable.extension.TestableRunnerExtension rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/src/main/resources/META-INF/services/org.finos.legend.engine.testable.extension.TestableRunnerExtension diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/src/test/java/org/finos/legend/engine/testable/function/TestFunctionTestSuite.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/src/test/java/org/finos/legend/engine/testable/function/TestFunctionTestSuite.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/src/test/java/org/finos/legend/engine/testable/function/TestFunctionTestSuite.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/src/test/java/org/finos/legend/engine/testable/function/TestFunctionTestSuite.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/src/test/resources/testable/legend-testable-function-test-model-join-relational.pure b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/src/test/resources/testable/legend-testable-function-test-model-join-relational.pure similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/src/test/resources/testable/legend-testable-function-test-model-join-relational.pure rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/src/test/resources/testable/legend-testable-function-test-model-join-relational.pure diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/src/test/resources/testable/legend-testable-function-test-model-m2m.pure b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/src/test/resources/testable/legend-testable-function-test-model-m2m.pure similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/src/test/resources/testable/legend-testable-function-test-model-m2m.pure rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/src/test/resources/testable/legend-testable-function-test-model-m2m.pure diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/src/test/resources/testable/legend-testable-function-test-model-relational.pure b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/src/test/resources/testable/legend-testable-function-test-model-relational.pure similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/src/test/resources/testable/legend-testable-function-test-model-relational.pure rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/src/test/resources/testable/legend-testable-function-test-model-relational.pure diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/src/test/resources/testable/legend-testable-function-test-model.pure b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/src/test/resources/testable/legend-testable-function-test-model.pure similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-function/src/test/resources/testable/legend-testable-function-test-model.pure rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-function/src/test/resources/testable/legend-testable-function-test-model.pure diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/pom.xml b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/pom.xml similarity index 91% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/pom.xml rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/pom.xml index b13d522bb0b..0f91d38241b 100644 --- a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/pom.xml +++ b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/pom.xml @@ -18,7 +18,7 @@ org.finos.legend.engine - legend-engine-core-test + legend-engine-core-testable 4.40.4-SNAPSHOT 4.0.0 @@ -35,7 +35,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json runtime @@ -58,7 +58,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java org.finos.legend.engine @@ -163,7 +163,7 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-core test @@ -173,7 +173,12 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure + test + + + org.finos.legend.engine + legend-engine-configuration-plan-generation-serialization test diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/test/runner/mapping/MappingTestRunner.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/test/runner/mapping/MappingTestRunner.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/test/runner/mapping/MappingTestRunner.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/test/runner/mapping/MappingTestRunner.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/test/runner/mapping/RichMappingTestResult.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/test/runner/mapping/RichMappingTestResult.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/test/runner/mapping/RichMappingTestResult.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/test/runner/mapping/RichMappingTestResult.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/testable/mapping/extension/MappingTestRunner.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/testable/mapping/extension/MappingTestRunner.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/testable/mapping/extension/MappingTestRunner.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/testable/mapping/extension/MappingTestRunner.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/testable/mapping/extension/MappingTestRunnerContext.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/testable/mapping/extension/MappingTestRunnerContext.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/testable/mapping/extension/MappingTestRunnerContext.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/testable/mapping/extension/MappingTestRunnerContext.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/testable/mapping/extension/MappingTestableRunnerExtension.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/testable/mapping/extension/MappingTestableRunnerExtension.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/testable/mapping/extension/MappingTestableRunnerExtension.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/main/java/org/finos/legend/engine/testable/mapping/extension/MappingTestableRunnerExtension.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/main/resources/META-INF/services/org.finos.legend.engine.testable.extension.TestableRunnerExtension b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/main/resources/META-INF/services/org.finos.legend.engine.testable.extension.TestableRunnerExtension similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/main/resources/META-INF/services/org.finos.legend.engine.testable.extension.TestableRunnerExtension rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/main/resources/META-INF/services/org.finos.legend.engine.testable.extension.TestableRunnerExtension diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/test/java/org/finos/legend/engine/test/runner/mapping/TestLegacyMappingRunner.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/test/java/org/finos/legend/engine/test/runner/mapping/TestLegacyMappingRunner.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/test/java/org/finos/legend/engine/test/runner/mapping/TestLegacyMappingRunner.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/test/java/org/finos/legend/engine/test/runner/mapping/TestLegacyMappingRunner.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/test/java/org/finos/legend/engine/test/runner/mapping/TestMappingTestRunner.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/test/java/org/finos/legend/engine/test/runner/mapping/TestMappingTestRunner.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/test/java/org/finos/legend/engine/test/runner/mapping/TestMappingTestRunner.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/test/java/org/finos/legend/engine/test/runner/mapping/TestMappingTestRunner.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/test/java/org/finos/legend/engine/testable/mapping/extension/TestMappingTestRunner.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/test/java/org/finos/legend/engine/testable/mapping/extension/TestMappingTestRunner.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/test/java/org/finos/legend/engine/testable/mapping/extension/TestMappingTestRunner.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/test/java/org/finos/legend/engine/testable/mapping/extension/TestMappingTestRunner.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/test/java/org/finos/legend/engine/testable/mapping/extension/TestRelationalMappingRunner.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/test/java/org/finos/legend/engine/testable/mapping/extension/TestRelationalMappingRunner.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/test/java/org/finos/legend/engine/testable/mapping/extension/TestRelationalMappingRunner.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/test/java/org/finos/legend/engine/testable/mapping/extension/TestRelationalMappingRunner.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/test/resources/modelToModelMappingTests1.json b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/test/resources/modelToModelMappingTests1.json similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/test/resources/modelToModelMappingTests1.json rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/test/resources/modelToModelMappingTests1.json diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/test/resources/modelToModelMappingTests2.json b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/test/resources/modelToModelMappingTests2.json similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-mapping/src/test/resources/modelToModelMappingTests2.json rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-mapping/src/test/resources/modelToModelMappingTests2.json diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-shared/pom.xml b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-shared/pom.xml similarity index 96% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-shared/pom.xml rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-shared/pom.xml index 2f6dc6e9820..0e8ec0523fa 100644 --- a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-shared/pom.xml +++ b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-shared/pom.xml @@ -18,7 +18,7 @@ org.finos.legend.engine - legend-engine-core-test + legend-engine-core-testable 4.40.4-SNAPSHOT 4.0.0 diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-shared/src/main/java/org/finos/legend/engine/test/runner/shared/ComparisonError.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-shared/src/main/java/org/finos/legend/engine/test/runner/shared/ComparisonError.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-shared/src/main/java/org/finos/legend/engine/test/runner/shared/ComparisonError.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-shared/src/main/java/org/finos/legend/engine/test/runner/shared/ComparisonError.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-shared/src/main/java/org/finos/legend/engine/test/runner/shared/JsonNodeComparator.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-shared/src/main/java/org/finos/legend/engine/test/runner/shared/JsonNodeComparator.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-shared/src/main/java/org/finos/legend/engine/test/runner/shared/JsonNodeComparator.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-shared/src/main/java/org/finos/legend/engine/test/runner/shared/JsonNodeComparator.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-shared/src/main/java/org/finos/legend/engine/test/runner/shared/TestResult.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-shared/src/main/java/org/finos/legend/engine/test/runner/shared/TestResult.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-shared/src/main/java/org/finos/legend/engine/test/runner/shared/TestResult.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-shared/src/main/java/org/finos/legend/engine/test/runner/shared/TestResult.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-runner-shared/src/test/java/org/finos/legend/engine/test/runner/shared/TestJsonNodeComparator.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-shared/src/test/java/org/finos/legend/engine/test/runner/shared/TestJsonNodeComparator.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-runner-shared/src/test/java/org/finos/legend/engine/test/runner/shared/TestJsonNodeComparator.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-runner-shared/src/test/java/org/finos/legend/engine/test/runner/shared/TestJsonNodeComparator.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-server-shared/pom.xml b/legend-engine-core/legend-engine-core-testable/legend-engine-test-server-shared/pom.xml similarity index 97% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-server-shared/pom.xml rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-server-shared/pom.xml index 19b7571214a..03c4734a4ff 100644 --- a/legend-engine-core/legend-engine-core-test/legend-engine-test-server-shared/pom.xml +++ b/legend-engine-core/legend-engine-core-testable/legend-engine-test-server-shared/pom.xml @@ -18,7 +18,7 @@ org.finos.legend.engine - legend-engine-core-test + legend-engine-core-testable 4.40.4-SNAPSHOT 4.0.0 diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-server-shared/src/main/java/org/finos/legend/engine/server/test/shared/PureWithEngineHelper.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-server-shared/src/main/java/org/finos/legend/engine/server/test/shared/PureWithEngineHelper.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-server-shared/src/main/java/org/finos/legend/engine/server/test/shared/PureWithEngineHelper.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-server-shared/src/main/java/org/finos/legend/engine/server/test/shared/PureWithEngineHelper.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-server-shared/src/main/java/org/finos/legend/engine/server/test/shared/TestServer.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-server-shared/src/main/java/org/finos/legend/engine/server/test/shared/TestServer.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-server-shared/src/main/java/org/finos/legend/engine/server/test/shared/TestServer.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-server-shared/src/main/java/org/finos/legend/engine/server/test/shared/TestServer.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-test-server-shared/src/main/java/org/finos/legend/engine/server/test/shared/TestServerConfiguration.java b/legend-engine-core/legend-engine-core-testable/legend-engine-test-server-shared/src/main/java/org/finos/legend/engine/server/test/shared/TestServerConfiguration.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-test-server-shared/src/main/java/org/finos/legend/engine/server/test/shared/TestServerConfiguration.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-test-server-shared/src/main/java/org/finos/legend/engine/server/test/shared/TestServerConfiguration.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-testable-api/pom.xml b/legend-engine-core/legend-engine-core-testable/legend-engine-testable-api/pom.xml similarity index 98% rename from legend-engine-core/legend-engine-core-test/legend-engine-testable-api/pom.xml rename to legend-engine-core/legend-engine-core-testable/legend-engine-testable-api/pom.xml index a2126333e01..1d9790133d5 100644 --- a/legend-engine-core/legend-engine-core-test/legend-engine-testable-api/pom.xml +++ b/legend-engine-core/legend-engine-core-testable/legend-engine-testable-api/pom.xml @@ -18,7 +18,7 @@ org.finos.legend.engine - legend-engine-core-test + legend-engine-core-testable 4.40.4-SNAPSHOT 4.0.0 diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-testable-api/src/main/java/org/finos/legend/engine/testable/api/TestableApi.java b/legend-engine-core/legend-engine-core-testable/legend-engine-testable-api/src/main/java/org/finos/legend/engine/testable/api/TestableApi.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-testable-api/src/main/java/org/finos/legend/engine/testable/api/TestableApi.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-testable-api/src/main/java/org/finos/legend/engine/testable/api/TestableApi.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-testable/pom.xml b/legend-engine-core/legend-engine-core-testable/legend-engine-testable/pom.xml similarity index 98% rename from legend-engine-core/legend-engine-core-test/legend-engine-testable/pom.xml rename to legend-engine-core/legend-engine-core-testable/legend-engine-testable/pom.xml index b1d1c15a813..4fd83f92216 100644 --- a/legend-engine-core/legend-engine-core-test/legend-engine-testable/pom.xml +++ b/legend-engine-core/legend-engine-core-testable/legend-engine-testable/pom.xml @@ -18,7 +18,7 @@ org.finos.legend.engine - legend-engine-core-test + legend-engine-core-testable 4.40.4-SNAPSHOT 4.0.0 diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/TestableRunner.java b/legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/TestableRunner.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/TestableRunner.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/TestableRunner.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/assertion/TestAssertionEvaluator.java b/legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/assertion/TestAssertionEvaluator.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/assertion/TestAssertionEvaluator.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/assertion/TestAssertionEvaluator.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/assertion/TestAssertionHelper.java b/legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/assertion/TestAssertionHelper.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/assertion/TestAssertionHelper.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/assertion/TestAssertionHelper.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/connection/TestConnectionBuilder.java b/legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/connection/TestConnectionBuilder.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/connection/TestConnectionBuilder.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/connection/TestConnectionBuilder.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/extension/TestRunner.java b/legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/extension/TestRunner.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/extension/TestRunner.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/extension/TestRunner.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/extension/TestableRunnerExtension.java b/legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/extension/TestableRunnerExtension.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/extension/TestableRunnerExtension.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/extension/TestableRunnerExtension.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/extension/TestableRunnerExtensionLoader.java b/legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/extension/TestableRunnerExtensionLoader.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/extension/TestableRunnerExtensionLoader.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/extension/TestableRunnerExtensionLoader.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/model/RunTestsInput.java b/legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/model/RunTestsInput.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/model/RunTestsInput.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/model/RunTestsInput.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/model/RunTestsResult.java b/legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/model/RunTestsResult.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/model/RunTestsResult.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/model/RunTestsResult.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/model/RunTestsTestableInput.java b/legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/model/RunTestsTestableInput.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/model/RunTestsTestableInput.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/model/RunTestsTestableInput.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/model/UniqueTestId.java b/legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/model/UniqueTestId.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/model/UniqueTestId.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/main/java/org/finos/legend/engine/testable/model/UniqueTestId.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-testable/src/test/java/org/finos/legend/engine/testable/assertion/TestTestAssertionEvaluator.java b/legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/test/java/org/finos/legend/engine/testable/assertion/TestTestAssertionEvaluator.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-testable/src/test/java/org/finos/legend/engine/testable/assertion/TestTestAssertionEvaluator.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/test/java/org/finos/legend/engine/testable/assertion/TestTestAssertionEvaluator.java diff --git a/legend-engine-core/legend-engine-core-test/legend-engine-testable/src/test/java/org/finos/legend/engine/testable/connection/TestTestConnectionBuilder.java b/legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/test/java/org/finos/legend/engine/testable/connection/TestTestConnectionBuilder.java similarity index 100% rename from legend-engine-core/legend-engine-core-test/legend-engine-testable/src/test/java/org/finos/legend/engine/testable/connection/TestTestConnectionBuilder.java rename to legend-engine-core/legend-engine-core-testable/legend-engine-testable/src/test/java/org/finos/legend/engine/testable/connection/TestTestConnectionBuilder.java diff --git a/legend-engine-core/legend-engine-core-test/pom.xml b/legend-engine-core/legend-engine-core-testable/pom.xml similarity index 96% rename from legend-engine-core/legend-engine-core-test/pom.xml rename to legend-engine-core/legend-engine-core-testable/pom.xml index 17519fd7c37..0583429636e 100644 --- a/legend-engine-core/legend-engine-core-test/pom.xml +++ b/legend-engine-core/legend-engine-core-testable/pom.xml @@ -22,7 +22,7 @@ 4.0.0 - legend-engine-core-test + legend-engine-core-testable pom Legend Engine - Core - Test diff --git a/legend-engine-core/pom.xml b/legend-engine-core/pom.xml index c4581c374d8..e006b82cc49 100644 --- a/legend-engine-core/pom.xml +++ b/legend-engine-core/pom.xml @@ -27,11 +27,11 @@ Legend Engine - Core - legend-engine-core-executionPlan-execution - legend-engine-core-executionPlan-generation - legend-engine-core-language-pure - legend-engine-core-query-pure + legend-engine-core-base legend-engine-core-shared - legend-engine-core-test + legend-engine-core-pure + legend-engine-core-testable + legend-engine-core-external-format + legend-engine-core-query-pure-rest \ No newline at end of file diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light-metadata-pure/pom.xml b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light-metadata-pure/pom.xml index caf10aed8ee..c464d24a693 100644 --- a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light-metadata-pure/pom.xml +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light-metadata-pure/pom.xml @@ -159,7 +159,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure runtime diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light-pure/pom.xml b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light-pure/pom.xml index bcf7ba7f0f9..ac1fbb6576f 100644 --- a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light-pure/pom.xml +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light-pure/pom.xml @@ -55,7 +55,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -152,7 +152,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-relation + legend-pure-runtime-java-extension-compiled-functions-relation ${legend.pure.version} runtime diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/pom.xml b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/pom.xml index 8fdd503d6dc..dc56abf0dd8 100644 --- a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/pom.xml +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/pom.xml @@ -26,8 +26,73 @@ legend-engine-pure-ide-light Legend Engine - Pure IDE Light + + false + 9.0.0 + https://registry.npmjs.org/@finos/legend-application-pure-ide-deployment/-/legend-application-pure-ide-deployment-${pure-ide.web-application.version}.tgz + + + + + src/main/resources + + + + com.googlecode.maven-download-plugin + download-maven-plugin + + + download-web-content + initialize + + wget + + + + + ${skip.yarn} + ${pure-ide.web-application.url} + true + ${project.build.directory}/web-content + + + + org.apache.maven.plugins + maven-resources-plugin + + + + default-resources + + true + + + + + default-testResources + + true + + + + copy-web-content + process-resources + + copy-resources + + + ${project.build.directory}/classes/web + + + ${project.build.directory}/web-content/package/dist + + + + + + maven-shade-plugin @@ -68,7 +133,7 @@ org.finos.legend.pure - legend-pure-ide-light + legend-pure-m4 org.finos.legend.pure @@ -87,12 +152,57 @@ runtime + org.finos.legend.pure - legend-pure-runtime-java-engine-interpreted + legend-pure-runtime-java-extension-interpreted-functions-base + runtime + + + org.finos.legend.pure + legend-pure-runtime-java-extension-interpreted-functions-json + runtime + + + org.finos.legend.pure + legend-pure-runtime-java-extension-interpreted-store-relational + runtime + + + org.finos.legend.pure + legend-pure-m2-dsl-diagram-grammar + runtime + + + org.finos.legend.pure + legend-pure-m2-dsl-mapping-grammar + runtime + + + org.finos.legend.pure + legend-pure-m2-functions-json-pure + runtime + + + org.finos.legend.pure + legend-pure-m2-store-relational-pure + runtime + + org.finos.legend.pure + legend-pure-runtime-java-engine-interpreted + + + org.finos.legend.pure + legend-pure-runtime-java-extension-shared-functions-json + + + org.finos.legend.pure + legend-pure-runtime-java-engine-shared + + org.finos.legend.engine legend-engine-pure-runtime-execution @@ -108,7 +218,6 @@ legend-engine-pure-runtime-compiler - org.finos.legend.engine legend-engine-extensions-collection-generation @@ -120,33 +229,41 @@ runtime - org.finos.legend.engine legend-engine-xt-elasticsearch-executionPlan-test runtime ${project.version} + - com.smoketurner - dropwizard-swagger + com.fasterxml.jackson.core + jackson-annotations + - javax.servlet - javax.servlet-api + org.eclipse.collections + eclipse-collections - org.eclipse.jetty - jetty-servlets + org.eclipse.collections + eclipse-collections-api + - io.dropwizard - dropwizard-core + org.apache.commons + commons-lang3 + + + com.googlecode.json-simple + json-simple + + io.dropwizard - dropwizard-assets + dropwizard-core io.dropwizard @@ -156,14 +273,52 @@ io.dropwizard dropwizard-jersey + + io.dropwizard + dropwizard-assets + io.dropwizard dropwizard-configuration + + - org.eclipse.collections - eclipse-collections-api + org.eclipse.jetty + jetty-servlets + + + + + com.smoketurner + dropwizard-swagger + + + + + + javax.servlet + javax.servlet-api + + + + + + javax.ws.rs + javax.ws.rs-api + + io.swagger + swagger-annotations + + + + + joda-time + joda-time + runtime + + diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/PureIDELight.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/PureIDELight.java index 965298afdf2..b732e7420d8 100644 --- a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/PureIDELight.java +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/PureIDELight.java @@ -17,8 +17,8 @@ import org.eclipse.collections.api.factory.Lists; import org.eclipse.collections.api.list.MutableList; import org.finos.legend.engine.pure.runtime.compiler.interpreted.natives.LegendCompileMixedProcessorSupport; -import org.finos.legend.pure.ide.light.PureIDEServer; -import org.finos.legend.pure.ide.light.SourceLocationConfiguration; +import org.finos.legend.engine.ide.PureIDEServer; +import org.finos.legend.engine.ide.SourceLocationConfiguration; import org.finos.legend.pure.m3.serialization.filesystem.repository.GenericCodeRepository; import org.finos.legend.pure.m3.serialization.filesystem.usercodestorage.RepositoryCodeStorage; import org.finos.legend.pure.m3.serialization.filesystem.usercodestorage.fs.MutableFSCodeStorage; @@ -38,10 +38,9 @@ public static void main(String[] args) throws Exception protected MutableList buildRepositories(SourceLocationConfiguration sourceLocationConfiguration) { return Lists.mutable.empty() - .with(this.buildCore("legend-engine-config/legend-engine-pure-code-compiled-core-configuration", "configuration")) .with(this.buildCore("legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light-metadata-pure", "ide_metadata")) - .with(this.buildCore("legend-engine-pure/legend-engine-pure-code/legend-engine-pure-code-compiled-core", "")) - .with(this.buildCore("legend-engine-core/legend-engine-core-language-pure/legend-engine-protocol-generation-pure", "protocol_generation")) + .with(this.buildCore("legend-engine-core/legend-engine-core-pure/legend-engine-pure-code-compiled-core", "")) + .with(this.buildCore("legend-engine-core/legend-engine-core-base/legend-engine-core-language-pure/legend-engine-protocol-generation-pure", "protocol_generation")) .with(this.buildCore("legend-engine-xts-persistence/legend-engine-xt-persistence-pure", "persistence")) .with(this.buildCore("legend-engine-xts-mastery/legend-engine-xt-mastery-pure", "mastery")) .with(this.buildCore("legend-engine-xts-functionActivator/legend-engine-xt-functionActivator-pure", "function_activator")) diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/PureIDELight_NoExtension.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/PureIDELight_NoExtension.java index 327a1658a1f..719bf7c5541 100644 --- a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/PureIDELight_NoExtension.java +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/PureIDELight_NoExtension.java @@ -27,24 +27,22 @@ import org.eclipse.collections.api.list.MutableList; import org.eclipse.jetty.servlets.CrossOriginFilter; import org.finos.legend.engine.pure.runtime.compiler.interpreted.natives.LegendCompileMixedProcessorSupport; -import org.finos.legend.pure.ide.light.ServerConfiguration; -import org.finos.legend.pure.ide.light.SourceLocationConfiguration; -import org.finos.legend.pure.ide.light.api.Activities; -import org.finos.legend.pure.ide.light.api.FileManagement; -import org.finos.legend.pure.ide.light.api.LifeCycle; -import org.finos.legend.pure.ide.light.api.Service; -import org.finos.legend.pure.ide.light.api.Suggestion; -import org.finos.legend.pure.ide.light.api.concept.Concept; -import org.finos.legend.pure.ide.light.api.concept.MovePackageableElements; -import org.finos.legend.pure.ide.light.api.concept.RenameConcept; -import org.finos.legend.pure.ide.light.api.execution.function.Execute; -import org.finos.legend.pure.ide.light.api.execution.go.ExecuteGo; -import org.finos.legend.pure.ide.light.api.execution.test.ExecuteTests; -import org.finos.legend.pure.ide.light.api.find.FindInSources; -import org.finos.legend.pure.ide.light.api.find.FindPureFile; -import org.finos.legend.pure.ide.light.api.find.FindTextPreview; -import org.finos.legend.pure.ide.light.api.source.UpdateSource; -import org.finos.legend.pure.ide.light.session.PureSession; +import org.finos.legend.engine.ide.api.Activities; +import org.finos.legend.engine.ide.api.FileManagement; +import org.finos.legend.engine.ide.api.LifeCycle; +import org.finos.legend.engine.ide.api.Service; +import org.finos.legend.engine.ide.api.Suggestion; +import org.finos.legend.engine.ide.api.concept.Concept; +import org.finos.legend.engine.ide.api.concept.MovePackageableElements; +import org.finos.legend.engine.ide.api.concept.RenameConcept; +import org.finos.legend.engine.ide.api.execution.function.Execute; +import org.finos.legend.engine.ide.api.execution.go.ExecuteGo; +import org.finos.legend.engine.ide.api.execution.test.ExecuteTests; +import org.finos.legend.engine.ide.api.find.FindInSources; +import org.finos.legend.engine.ide.api.find.FindPureFile; +import org.finos.legend.engine.ide.api.find.FindTextPreview; +import org.finos.legend.engine.ide.api.source.UpdateSource; +import org.finos.legend.engine.ide.session.PureSession; import org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepository; import org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositoryProviderHelper; import org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositorySet; diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/PureIDEServer.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/PureIDEServer.java new file mode 100644 index 00000000000..150e3f049b4 --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/PureIDEServer.java @@ -0,0 +1,158 @@ +// Copyright 2020 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide; + +import io.dropwizard.Application; +import io.dropwizard.assets.AssetsBundle; +import io.dropwizard.setup.Bootstrap; +import io.dropwizard.setup.Environment; +import io.federecio.dropwizard.swagger.SwaggerBundle; +import io.federecio.dropwizard.swagger.SwaggerBundleConfiguration; +import io.federecio.dropwizard.swagger.SwaggerResource; +import org.eclipse.collections.api.factory.Lists; +import org.eclipse.collections.api.factory.Maps; +import org.eclipse.collections.api.factory.Sets; +import org.eclipse.collections.api.list.MutableList; +import org.eclipse.collections.api.set.MutableSet; +import org.eclipse.jetty.servlets.CrossOriginFilter; +import org.finos.legend.engine.ide.ServerConfiguration; +import org.finos.legend.engine.ide.SourceLocationConfiguration; +import org.finos.legend.engine.ide.api.*; +import org.finos.legend.engine.ide.api.concept.Concept; +import org.finos.legend.engine.ide.api.concept.MovePackageableElements; +import org.finos.legend.engine.ide.api.concept.RenameConcept; +import org.finos.legend.engine.ide.api.execution.function.Execute; +import org.finos.legend.engine.ide.api.execution.go.ExecuteGo; +import org.finos.legend.engine.ide.api.execution.test.ExecuteTests; +import org.finos.legend.engine.ide.api.find.FindInSources; +import org.finos.legend.engine.ide.api.find.FindPureFile; +import org.finos.legend.engine.ide.api.find.FindTextPreview; +import org.finos.legend.engine.ide.api.source.UpdateSource; +import org.finos.legend.engine.ide.session.PureSession; +import org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepository; +import org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositoryProviderHelper; +import org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositorySet; +import org.finos.legend.pure.m3.serialization.filesystem.usercodestorage.RepositoryCodeStorage; +import org.finos.legend.pure.m3.serialization.filesystem.usercodestorage.classpath.ClassLoaderCodeStorage; + +import javax.servlet.DispatcherType; +import javax.servlet.FilterRegistration; +import java.util.EnumSet; +import java.util.List; +import java.util.Map; + +public abstract class PureIDEServer extends Application +{ + private PureSession pureSession; + + @Override + public void initialize(Bootstrap bootstrap) + { + bootstrap.addBundle(new SwaggerBundle() + { + @Override + protected SwaggerBundleConfiguration getSwaggerBundleConfiguration( + ServerConfiguration configuration) + { + return configuration.swagger; + } + }); + bootstrap.addBundle(new AssetsBundle("/web/ide", "/ide", "index.html", "static")); + } + + @Override + public void run(ServerConfiguration configuration, Environment environment) throws Exception + { + environment.jersey().setUrlPattern("/*"); + environment.jersey().register(new SwaggerResource( + "", + configuration.swagger.getSwaggerViewConfiguration(), + configuration.swagger.getSwaggerOAuth2Configuration(), + configuration.swagger.getContextRoot() + + (configuration.swagger.getContextRoot().endsWith("/") ? "" : "/") + "api") + ); + + this.pureSession = new PureSession(configuration.sourceLocationConfiguration, this.getRepositories(configuration.sourceLocationConfiguration, configuration.requiredRepositories)); + + environment.jersey().register(new Concept(pureSession)); + environment.jersey().register(new RenameConcept(pureSession)); + environment.jersey().register(new MovePackageableElements(pureSession)); + + environment.jersey().register(new Execute(pureSession)); + environment.jersey().register(new ExecuteGo(pureSession)); + environment.jersey().register(new ExecuteTests(pureSession)); + + environment.jersey().register(new FindInSources(pureSession)); + environment.jersey().register(new FindPureFile(pureSession)); + environment.jersey().register(new FindTextPreview((pureSession))); + + environment.jersey().register(new UpdateSource(pureSession)); + + environment.jersey().register(new Activities(pureSession)); + environment.jersey().register(new FileManagement(pureSession)); + environment.jersey().register(new LifeCycle(pureSession)); + + environment.jersey().register(new Suggestion(pureSession)); + + environment.jersey().register(new Service(pureSession)); + + enableCors(environment); + + postInit(); + } + + protected void postInit() + { + } + + private void enableCors(Environment environment) + { + FilterRegistration.Dynamic corsFilter = environment.servlets().addFilter("CORS", CrossOriginFilter.class); + corsFilter.setInitParameter(CrossOriginFilter.ALLOWED_METHODS_PARAM, "GET,PUT,POST,DELETE,OPTIONS"); + corsFilter.setInitParameter(CrossOriginFilter.ALLOWED_ORIGINS_PARAM, "*"); + corsFilter.setInitParameter(CrossOriginFilter.ALLOWED_TIMING_ORIGINS_PARAM, "*"); + corsFilter.setInitParameter(CrossOriginFilter.ALLOWED_HEADERS_PARAM, "X-Requested-With,Content-Type,Accept,Origin,Access-Control-Allow-Credentials,x-b3-parentspanid,x-b3-sampled,x-b3-spanid,x-b3-traceid"); + corsFilter.setInitParameter(CrossOriginFilter.CHAIN_PREFLIGHT_PARAM, "false"); + corsFilter.addMappingForUrlPatterns(EnumSet.of(DispatcherType.REQUEST), false, "*"); + } + + private MutableList getRepositories(org.finos.legend.engine.ide.SourceLocationConfiguration sourceLocationConfiguration, List requiredRepositories) + { + Map repoToCodeStorageMap = Maps.mutable.empty(); + repoToCodeStorageMap.putAll(CodeRepositoryProviderHelper.findCodeRepositories().toMap(r -> r, ClassLoaderCodeStorage::new)); + repoToCodeStorageMap.putAll(this.buildRepositories(sourceLocationConfiguration).toMap(cs -> cs.getAllRepositories().getOnly(), cs -> cs)); + + CodeRepositorySet codeRepositorySet = CodeRepositorySet.newBuilder().withCodeRepositories(repoToCodeStorageMap.keySet()).build(); + + if (requiredRepositories != null) + { + MutableSet requiredSet = Sets.mutable.withAll(requiredRepositories); + if (codeRepositorySet.hasRepository("pure_ide")) + { + requiredSet.add("pure_ide"); + } + codeRepositorySet = codeRepositorySet.subset(requiredSet); + } + + return codeRepositorySet.getRepositories().collect(repoToCodeStorageMap::get, Lists.mutable.ofInitialCapacity(codeRepositorySet.size())); + } + + public PureSession getPureSession() + { + return pureSession; + } + + protected abstract MutableList buildRepositories(SourceLocationConfiguration sourceLocationConfiguration); +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/ServerConfiguration.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/ServerConfiguration.java new file mode 100644 index 00000000000..b0521074fe3 --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/ServerConfiguration.java @@ -0,0 +1,32 @@ +// Copyright 2020 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import io.dropwizard.Configuration; +import io.federecio.dropwizard.swagger.SwaggerBundleConfiguration; +import org.finos.legend.engine.ide.SourceLocationConfiguration; + +import java.util.List; + +@JsonIgnoreProperties( + ignoreUnknown = true +) +public class ServerConfiguration extends Configuration +{ + public SwaggerBundleConfiguration swagger; + public SourceLocationConfiguration sourceLocationConfiguration; + public List requiredRepositories; +} \ No newline at end of file diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/SourceLocationConfiguration.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/SourceLocationConfiguration.java new file mode 100644 index 00000000000..415c6c719f3 --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/SourceLocationConfiguration.java @@ -0,0 +1,27 @@ +// Copyright 2021 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; + +@JsonIgnoreProperties( + ignoreUnknown = true +) +public class SourceLocationConfiguration +{ + public String welcomeFileDirectory; + public String coreFilesLocation; + public String ideFilesLocation; +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/Activities.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/Activities.java new file mode 100644 index 00000000000..8a0fb70cf95 --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/Activities.java @@ -0,0 +1,88 @@ +// Copyright 2020 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api; + +import io.swagger.annotations.Api; +import org.finos.legend.engine.ide.session.PureSession; +import org.json.simple.JSONObject; +import org.json.simple.JSONValue; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.ws.rs.GET; +import javax.ws.rs.Path; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.StreamingOutput; +import java.io.PrintWriter; + +@Api(tags = "Activities") +@Path("/") +public class Activities +{ + private PureSession pureSession; + + public Activities(PureSession pureSession) + { + this.pureSession = pureSession; + } + + @GET + @Path("conceptsActivity") + public Response conceptsActivity() + { + return Response.ok((StreamingOutput) outputStream -> + { + outputStream.write(("{\"initializing\":" + !this.pureSession.getPureRuntime().isInitializedNoLock() + ",\"text\":\"" + this.pureSession.message.getMessage() + "\"}").getBytes()); + outputStream.close(); + }).build(); + } + + @GET + @Path("executionActivity") + public Response executionActivity(@Context HttpServletRequest request, @Context HttpServletResponse response) + { + return Response.ok((StreamingOutput) outputStream -> + { + boolean isExecuting = false; + boolean isInitializing = true; + if (pureSession != null) + { + isInitializing = pureSession.getPureRuntime().isInitializing(); + isExecuting = pureSession.getCurrentExecutionCount() != 0; + } + outputStream.write(("{\"executing\":" + (isExecuting || isInitializing) + ",\"text\":\"" + pureSession.message.getMessage() + "\"}").getBytes()); + outputStream.close(); + }).build(); + } + + @GET + @Path("initializationActivity") + public Response initializationActivity() + { + return Response.ok((StreamingOutput) outStream -> + { + JSONObject json = new JSONObject(); + json.put("initializing", false); + json.put("text", this.pureSession.message.getMessage()); + json.put("archiveLocked", false); + try (PrintWriter writer = new PrintWriter(outStream)) + { + JSONValue.writeJSONString(json, writer); + } + outStream.close(); + }).build(); + } +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/FileManagement.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/FileManagement.java new file mode 100644 index 00000000000..ac4bec9aa91 --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/FileManagement.java @@ -0,0 +1,378 @@ +// Copyright 2020 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api; + +import io.swagger.annotations.Api; +import org.eclipse.collections.api.block.predicate.Predicate; +import org.eclipse.collections.api.list.MutableList; +import org.eclipse.collections.impl.utility.LazyIterate; +import org.finos.legend.engine.ide.helpers.response.ExceptionTranslation; +import org.finos.legend.engine.ide.session.PureSession; +import org.finos.legend.pure.m3.serialization.filesystem.repository.ScratchCodeRepository; +import org.finos.legend.pure.m3.serialization.filesystem.usercodestorage.CodeStorageNode; +import org.finos.legend.pure.m3.serialization.filesystem.usercodestorage.CodeStorageNodeStatus; +import org.finos.legend.pure.m3.serialization.filesystem.usercodestorage.ImmutableRepositoryCodeStorage; +import org.finos.legend.pure.m3.serialization.filesystem.usercodestorage.MutableRepositoryCodeStorage; +import org.finos.legend.pure.m3.serialization.filesystem.usercodestorage.classpath.Version; +import org.finos.legend.pure.m3.serialization.filesystem.usercodestorage.vcs.VersionControlledCodeStorage; +import org.finos.legend.pure.m3.serialization.filesystem.usercodestorage.welcome.WelcomeCodeStorage; +import org.json.simple.JSONObject; +import org.json.simple.JSONValue; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.ws.rs.*; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.StreamingOutput; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.util.Comparator; +import java.util.Iterator; +import java.util.Optional; +import java.util.regex.Pattern; + +@Api(tags = "File Management") +@Path("/") +public class FileManagement +{ + private static final Pattern FILE_NAME_PATTERN = Pattern.compile("/?+(\\w+/)*+\\w+(\\.\\w++)*+"); + + private final PureSession session; + + public FileManagement(PureSession session) + { + this.session = session; + } + + + private static final Predicate IGNORED_NODE = (Predicate) node -> + { + String name = node.getName(); + return ".svn".equals(name) || (name != null && name.endsWith(".iml")); + }; + + private static final Comparator NODE_COMPARATOR = (node1, node2) -> + { + if (node1.isDirectory()) + { + return node2.isDirectory() ? node1.getName().compareTo(node2.getName()) : -1; + } + else + { + return node2.isDirectory() ? 1 : node1.getName().compareTo(node2.getName()); + } + }; + + @DELETE + @Path("deleteFile/{filePath:.+}") + public Response deleteFile(@PathParam("filePath") String filePath, @Context HttpServletRequest request, @Context HttpServletResponse response) + { + try + { + session.getPureRuntime().delete("/" + filePath); + return Response.ok((StreamingOutput) outputStream -> + { + outputStream.write(("{\"cached\":" + false + "}").getBytes()); + outputStream.close(); + }).build(); + } + catch (Exception e) + { + return Response.status(Response.Status.BAD_REQUEST).entity((StreamingOutput) outputStream -> + { + outputStream.write(("\"" + JSONValue.escape(ExceptionTranslation.buildExceptionMessage(session, e, new ByteArrayOutputStream()).getText()) + "\"").getBytes()); + outputStream.close(); + }).build(); + } + } + + @POST + @Path("newFile/{filePath:.+}") + public Response newFile(@PathParam("filePath") String filePath, @Context HttpServletRequest request, @Context HttpServletResponse response) + { + try + { + session.getPureRuntime().create("/" + filePath); + + return Response.ok((StreamingOutput) outputStream -> + { + outputStream.write(("{\"cached\":" + false + "}").getBytes()); + outputStream.close(); + }).build(); + } + catch (Exception e) + { + return Response.status(Response.Status.BAD_REQUEST).entity((StreamingOutput) outputStream -> + { + outputStream.write(("\"" + JSONValue.escape(ExceptionTranslation.buildExceptionMessage(session, e, new ByteArrayOutputStream()).getText()) + "\"").getBytes()); + outputStream.close(); + }).build(); + } + } + + @POST + @Path("newFolder/{filePath:.+}") + public Response newFolder(@PathParam("filePath") String filePath, @Context HttpServletRequest request, @Context HttpServletResponse response) + { + try + { + session.getCodeStorage().createFolder("/" + filePath); + + return Response.ok((StreamingOutput) outputStream -> + { + outputStream.write(("{\"cached\":" + false + "}").getBytes()); + outputStream.close(); + }).build(); + } + catch (Exception e) + { + return Response.status(Response.Status.BAD_REQUEST).entity((StreamingOutput) outputStream -> + { + outputStream.write(("\"" + JSONValue.escape(ExceptionTranslation.buildExceptionMessage(session, e, new ByteArrayOutputStream()).getText()) + "\"").getBytes()); + outputStream.close(); + }).build(); + } + } + + @PUT + @Path("renameFile") + public Response renameFile(RenameFileInput input, @Context HttpServletRequest request, @Context HttpServletResponse response) + { + try + { + String oldPath = input.oldPath; + String newPath = input.newPath; + + if (oldPath == null || !FILE_NAME_PATTERN.matcher(oldPath).matches()) + { + throw new IllegalArgumentException("Invalid old path"); + } + if (newPath == null || !FILE_NAME_PATTERN.matcher(newPath).matches()) + { + throw new IllegalArgumentException("Invalid new path"); + } + + this.session.getPureRuntime().move(oldPath, newPath); + + return Response.ok((StreamingOutput) outputStream -> + { + outputStream.write(("{\"oldPath\":\"" + JSONValue.escape(oldPath) + "\",\"newPath\":\"" + JSONObject.escape(newPath) + "\"}").getBytes()); + outputStream.close(); + }).build(); + } + catch (Exception e) + { + return Response.status(Response.Status.BAD_REQUEST).entity((StreamingOutput) outputStream -> + { + outputStream.write(("\"" + JSONValue.escape(ExceptionTranslation.buildExceptionMessage(session, e, new ByteArrayOutputStream()).getText()) + "\"").getBytes()); + outputStream.close(); + }).build(); + } + } + + @GET + @Path("dir") + public Response dir(@Context HttpServletRequest request, @Context HttpServletResponse response) + { + try + { + response.setContentType("application/json"); + String path = request.getParameter("parameters"); + StringBuilder json = new StringBuilder("["); + MutableList nodes = LazyIterate.reject(session.getCodeStorage().getFiles(path), IGNORED_NODE).toSortedList(NODE_COMPARATOR); + if ("/".equals(path)) + { + nodes.sortThis((o1, o2) -> + { + String name1 = WelcomeCodeStorage.WELCOME_FILE_NAME.equals(o1.getName()) || "platform".equals(o1.getName()) || ScratchCodeRepository.NAME.equals(o1.getName()) ? "zzz" + o1.getName() : o1.getName(); + String name2 = WelcomeCodeStorage.WELCOME_FILE_NAME.equals(o2.getName()) || "platform".equals(o2.getName()) || ScratchCodeRepository.NAME.equals(o2.getName()) ? "zzz" + o2.getName() : o2.getName(); + return name1.compareTo(name2); + }); + } + ; + if (nodes.notEmpty()) + { + MutableRepositoryCodeStorage codeStorage = session.getCodeStorage(); + Iterator iterator = nodes.iterator(); + writeNode(json, codeStorage, path, iterator.next()); + while (iterator.hasNext()) + { + json.append(','); + writeNode(json, codeStorage, path, iterator.next()); + } + } + json.append(']'); + + return Response.ok((StreamingOutput) outputStream -> + { + outputStream.write(json.toString().getBytes(), 0, json.length()); + outputStream.close(); + }).build(); + } + catch (Exception e) + { + return Response.status(Response.Status.BAD_REQUEST).entity((StreamingOutput) outputStream -> + { + outputStream.write(("\"" + JSONValue.escape(ExceptionTranslation.buildExceptionMessage(session, e, new ByteArrayOutputStream()).getText()) + "\"").getBytes()); + outputStream.close(); + }).build(); + } + } + + @GET + @Path("fileAsJson/{filePath:.+}") + public Response fileAsJson(@PathParam("filePath") String filePath) + { + try + { + MutableRepositoryCodeStorage codeStorage = session.getCodeStorage(); + if (codeStorage == null) + { + throw new RuntimeException("Cannot find code storage"); + } + byte[] content; + try + { + content = codeStorage.getContentAsBytes(filePath); + } + catch (Exception e) + { + StringBuilder message = new StringBuilder("Error accessing resource \""); + message.append(filePath); + message.append('"'); + if (e.getMessage() != null) + { + message.append(": "); + message.append(e.getMessage()); + } + throw new IOException(message.toString(), e); + } + if (content == null) + { + throw new IOException("Could not find resource \"" + filePath + "\""); + } + + return Response.ok((StreamingOutput) outputStream -> + { + outputStream.write(this.transformContent(content, codeStorage.getOriginalCodeStorage(codeStorage.getRepositoryForPath(filePath)) instanceof ImmutableRepositoryCodeStorage)); + outputStream.close(); + }).build(); + } + catch (Exception e) + { + return Response.status(Response.Status.BAD_REQUEST).entity((StreamingOutput) outputStream -> + { + outputStream.write(("\"" + JSONValue.escape(ExceptionTranslation.buildExceptionMessage(session, e, new ByteArrayOutputStream()).getText()) + "\"").getBytes()); + outputStream.close(); + }).build(); + } + } + + private byte[] transformContent(byte[] content, boolean isImmutable) + { + JSONObject object = new JSONObject(); + object.put("content", new String(content)); + object.put("RO", isImmutable); + return object.toJSONString().getBytes(); + } + + private void writeNode(StringBuilder builder, MutableRepositoryCodeStorage codeStorage, String path, CodeStorageNode node) + { + String fullPath = "/".equals(path) ? (path + node.getName()) : (path + "/" + node.getName()); + if (node.isDirectory()) + { + if ("/".equals(path)) + { + writeRepoNode(builder, codeStorage, fullPath, node); + } + else + { + writeDirectoryNode(builder, fullPath, codeStorage, node); + } + } + else + { + writeFileNode(builder, codeStorage, fullPath, node); + } + } + + private void writeRepoNode(StringBuilder builder, MutableRepositoryCodeStorage cs, String path, CodeStorageNode repo) + { + VersionControlledCodeStorage codeStorage = (VersionControlledCodeStorage) cs; + // Assume SVN until Git code storage is added + Optional currentRev = codeStorage.getCurrentRevision(path); + long currentRevision = currentRev.isPresent() ? Long.parseLong(currentRev.get()) : 0L; + String repoName = codeStorage.getRepositoryForPath(path).getName(); + builder.append("{\"li_attr\":{\"id\":\"file_"); + builder.append(path); + builder.append("\",\"path\":\"").append(path).append("\",\"file\":false,\"repo\":true"); + builder.append(",\"RO\":").append(codeStorage.getOriginalCodeStorage(codeStorage.getRepositoryForPath(path)) instanceof ImmutableRepositoryCodeStorage); + builder.append("},\"text\":\""); + builder.append(repo.getName()); + if (currentRevision >= 0) + { + builder.append("\",\"icon\":\"/ide/pure/icons/filesystem/cloud.png\",\"state\":\"closed\",\"children\":true}"); + } + else if ("platform".equals(repoName)) + { + builder.append(" ("); + builder.append(Version.SERVER); + builder.append(')'); + builder.append("\",\"icon\":\"/ide/pure/icons/wrench.png\",\"state\":\"closed\",\"children\":true}"); + } + else + { + builder.append("\",\"icon\":\"/ide/pure/icons/scratchpad.png\",\"state\":\"closed\",\"children\":true}"); + } + } + + private void writeDirectoryNode(StringBuilder builder, String path, MutableRepositoryCodeStorage codeStorage, CodeStorageNode directory) + { + builder.append("{\"li_attr\":{\"id\":\"file_"); + builder.append(path); + builder.append("\",\"path\":\"").append(path).append("\",\"file\":false"); + builder.append(",\"RO\":").append(codeStorage.getOriginalCodeStorage(codeStorage.getRepositoryForPath(path)) instanceof ImmutableRepositoryCodeStorage); + builder.append("},\"text\":\""); + builder.append(directory.getName()); + builder.append("\",\"state\":\"closed\",\"children\":").append(!codeStorage.isEmptyFolder(path)).append("}"); + } + + private void writeFileNode(StringBuilder builder, MutableRepositoryCodeStorage codeStorage, String path, CodeStorageNode file) + { + builder.append("{\"li_attr\":{\"id\":\"file_"); + builder.append(path); + builder.append("\",\"path\":\"").append(path).append("\",\"file\":true"); + builder.append(",\"RO\":").append(codeStorage.getOriginalCodeStorage(codeStorage.getRepositoryForPath(path)) instanceof ImmutableRepositoryCodeStorage); + + if (file.getStatus() != CodeStorageNodeStatus.NORMAL) + { + builder.append(",\"statusType\":\""); + builder.append(file.getStatus()); + builder.append('"'); + } + + builder.append("},\"text\":\""); + builder.append(file.getName()); + builder.append("\",\"icon\":\"/ide/pure/icons/filesystem/txt.png\"}"); + } + + + public static class RenameFileInput + { + public String oldPath; + public String newPath; + } +} \ No newline at end of file diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/LifeCycle.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/LifeCycle.java new file mode 100644 index 00000000000..71cbe84eb8e --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/LifeCycle.java @@ -0,0 +1,88 @@ +// Copyright 2020 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api; + +import io.swagger.annotations.Api; +import org.finos.legend.engine.ide.session.PureSession; +import org.finos.legend.pure.m3.serialization.runtime.PureRuntime; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.ws.rs.GET; +import javax.ws.rs.POST; +import javax.ws.rs.Path; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.StreamingOutput; +import java.io.IOException; + +@Api(tags = "LifeCycle") +@Path("/") +public class LifeCycle +{ + private PureSession pureSession; + + public LifeCycle(PureSession pureSession) + { + this.pureSession = pureSession; + } + + @GET + @Path("initialize") + public Response initialize() + { + PureRuntime pureRuntime = pureSession.getPureRuntime(); + + return Response.ok((StreamingOutput) outStream -> + { + if (pureRuntime.isFullyInitialized()) + { + outStream.write(("{\"cached\":false, \"datamarts\": [" + pureSession.getPureRuntime().getCodeStorage().getAllRepositories().collect(s -> "\"" + s.getName() + "\"").makeString(",") + "]}").getBytes()); + outStream.close(); + return; + } + + try + { + pureRuntime.reset(); + pureRuntime.initialize(pureSession.message); + outStream.write("{\"text\":\"Full recompile completed successfully\", \"cached\":".getBytes()); + outStream.write((pureRuntime.getCache().getCacheState().isCached() + "}").getBytes()); + outStream.close(); + } + catch (IOException | RuntimeException | Error e) + { + //e.printStackTrace(); + pureSession.getPureRuntime().getCache().deleteCache(); + throw e; + } + }).build(); + } + + @POST + @Path("executeSaveAndReset") + public Response executeSaveAndReset(@Context HttpServletRequest request, @Context HttpServletResponse response) + { + return Response.ok((StreamingOutput) outputStream -> + { + PureRuntime pureRuntime = pureSession.getPureRuntime(); + pureRuntime.reset(); + pureRuntime.getCache().deleteCache(); + pureSession.saveFiles(request, response); + outputStream.write(("{\"text\":\"Reset Done\", \"cached\":" + false + "}").getBytes()); + outputStream.close(); + }).build(); + } +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/Service.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/Service.java new file mode 100644 index 00000000000..19020df8933 --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/Service.java @@ -0,0 +1,62 @@ +// Copyright 2023 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.eclipse.collections.api.tuple.Pair; +import org.finos.legend.engine.ide.api.execution.function.manager.ContentType; +import org.finos.legend.engine.ide.api.execution.function.manager.ExecutionManager; +import org.finos.legend.engine.ide.api.execution.function.manager.ExecutionRequest; +import org.finos.legend.engine.ide.api.execution.function.manager.HttpServletResponseWriter; +import org.finos.legend.engine.ide.session.PureSession; +import org.finos.legend.pure.m4.coreinstance.CoreInstance; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.ws.rs.GET; +import javax.ws.rs.Path; +import javax.ws.rs.PathParam; +import javax.ws.rs.core.Context; +import java.io.IOException; +import java.util.Map; + +@Api(tags = "Service") +@Path("") +public class Service +{ + private final PureSession pureSession; + + public Service(PureSession pureSession) + { + this.pureSession = pureSession; + } + + @GET + @Path("{path:.+}") + @ApiOperation(value = "") + public void exec(@Context HttpServletRequest request, @Context HttpServletResponse response, @PathParam("path") String path) throws IOException + { + Pair> result = this.pureSession.getPureRuntime().getURLPatternLibrary().tryExecution("/" + path, this.pureSession.getPureRuntime().getProcessorSupport(), request.getParameterMap()); + if (result == null) + { + response.sendError(404, "The service '" + path + "' can't be found!"); + return; + } + + ExecutionManager executionManager = new ExecutionManager(pureSession.getFunctionExecution()); + executionManager.execute(new ExecutionRequest(result.getTwo()), new HttpServletResponseWriter(response), ContentType.text); + } +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/Suggestion.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/Suggestion.java new file mode 100644 index 00000000000..f4467316cb3 --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/Suggestion.java @@ -0,0 +1,554 @@ +// Copyright 2023 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api; + +import io.swagger.annotations.Api; +import org.eclipse.collections.api.RichIterable; +import org.eclipse.collections.api.factory.Lists; +import org.eclipse.collections.api.factory.Sets; +import org.eclipse.collections.api.list.ListIterable; +import org.eclipse.collections.api.list.MutableList; +import org.eclipse.collections.api.set.MutableSet; +import org.finos.legend.engine.ide.helpers.response.ExceptionTranslation; +import org.finos.legend.engine.ide.session.PureSession; +import org.finos.legend.pure.m3.coreinstance.Package; +import org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.extension.Profile; +import org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.function.PackageableFunction; +import org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.function.property.Property; +import org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.type.Class; +import org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.type.Enumeration; +import org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.valuespecification.InstanceValueInstance; +import org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.valuespecification.SimpleFunctionExpression; +import org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.valuespecification.VariableExpressionInstance; +import org.finos.legend.pure.m3.navigation.M3Properties; +import org.finos.legend.pure.m3.navigation.PackageableElement.PackageableElement; +import org.finos.legend.pure.m3.navigation.ProcessorSupport; +import org.finos.legend.pure.m3.navigation._class._Class; +import org.finos.legend.pure.m3.navigation.function.Function; +import org.finos.legend.pure.m3.serialization.runtime.PureRuntime; +import org.finos.legend.pure.m3.serialization.runtime.Source; +import org.finos.legend.pure.m4.coreinstance.CoreInstance; +import org.json.simple.JSONValue; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.ws.rs.POST; +import javax.ws.rs.Path; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.StreamingOutput; +import java.io.ByteArrayOutputStream; +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +@Api(tags = "Suggestion") +@Path("/") +public class Suggestion +{ + // NOTE: this is the list of auto-import packages defined in m3.pure + private static final List AUTO_IMPORTS = Arrays.asList( + "meta::pure::metamodel", + "meta::pure::metamodel::type", + "meta::pure::metamodel::type::generics", + "meta::pure::metamodel::relationship", + "meta::pure::metamodel::valuespecification", + "meta::pure::metamodel::multiplicity", + "meta::pure::metamodel::function", + "meta::pure::metamodel::function::property", + "meta::pure::metamodel::extension", + "meta::pure::metamodel::import", + "meta::pure::functions::date", + "meta::pure::functions::string", + "meta::pure::functions::collection", + "meta::pure::functions::meta", + "meta::pure::functions::constraints", + "meta::pure::functions::lang", + "meta::pure::functions::boolean", + "meta::pure::functions::tools", + "meta::pure::functions::io", + "meta::pure::functions::math", + "meta::pure::functions::asserts", + "meta::pure::functions::test", + "meta::pure::functions::multiplicity", + "meta::pure::router", + "meta::pure::service", + "meta::pure::tds", + "meta::pure::tools", + "meta::pure::profiles" + ); + private final PureSession session; + + public Suggestion(PureSession session) + { + this.session = session; + } + + @POST + @Path("suggestion/incompletePath") + public Response getSuggestionsForIncompletePath( + @Context HttpServletRequest request, + IncompletePathSuggestionInput input, + @Context HttpServletResponse response) + { + PureRuntime runtime = this.session.getPureRuntime(); + ProcessorSupport processorSupport = runtime.getProcessorSupport(); + try + { + CoreInstance coreInstance = runtime.getCoreInstance(input.path); + if (coreInstance instanceof Package) + { + ListIterable children = coreInstance.getValueForMetaPropertyToMany(M3Properties.children) + .select(child -> input.types == null || input.types.isEmpty() || input.types.contains(child.getClassifier().getName())); + + return Response.ok((StreamingOutput) outputStream -> + { + outputStream.write("[".getBytes()); + for (int i = 0; i < children.size(); i++) + { + CoreInstance child = children.get(i); + String pureName = child instanceof PackageableFunction ? child.getValueForMetaPropertyToOne(M3Properties.functionName).getName() : child.getValueForMetaPropertyToOne(M3Properties.name).getName(); + String text = child instanceof PackageableFunction ? Function.prettyPrint(child, processorSupport) : child.getValueForMetaPropertyToOne(M3Properties.name).getName(); + MutableList requiredClassProperties = child instanceof Class ? _Class.getSimpleProperties(child, processorSupport) + // NOTE: make sure to only consider required (non-qualified) properties: i.e. multiplicity lower bound != 0 + .selectInstancesOf(Property.class).select(prop -> + { + CoreInstance lowerBound = prop.getValueForMetaPropertyToOne(M3Properties.multiplicity).getValueForMetaPropertyToOne(M3Properties.lowerBound); + // NOTE: here the lower bound can be nullish when there's multiplicity parameter being used + // but we skip that case for now + return lowerBound != null && !lowerBound.getValueForMetaPropertyToOne(M3Properties.value).getName().equals("0"); + } + ).toList() : Lists.mutable.empty(); + + outputStream.write("{\"pureType\":\"".getBytes()); + outputStream.write(JSONValue.escape(child.getClassifier().getName()).getBytes()); + outputStream.write("\",\"pureName\":\"".getBytes()); + outputStream.write(JSONValue.escape(pureName).getBytes()); + outputStream.write("\",\"pureId\":\"".getBytes()); + outputStream.write(JSONValue.escape(PackageableElement.getUserPathForPackageableElement(child)).getBytes()); + outputStream.write("\",\"text\":\"".getBytes()); + outputStream.write(JSONValue.escape(text).getBytes()); + outputStream.write("\"".getBytes()); + + if (requiredClassProperties.notEmpty()) + { + outputStream.write(",\"requiredClassProperties\":[".getBytes()); + + for (int j = 0; j < requiredClassProperties.size(); j++) + { + outputStream.write("\"".getBytes()); + outputStream.write(JSONValue.escape(requiredClassProperties.get(j).getValueForMetaPropertyToOne(M3Properties.name).getName()).getBytes()); + outputStream.write("\"".getBytes()); + + if (j != requiredClassProperties.size() - 1) + { + outputStream.write(",".getBytes()); + } + } + + outputStream.write("]".getBytes()); + } + + outputStream.write("}".getBytes()); + + if (i != children.size() - 1) + { + outputStream.write(",".getBytes()); + } + } + outputStream.write("]".getBytes()); + outputStream.close(); + }).build(); + } + return Response.ok((StreamingOutput) outputStream -> + { + outputStream.write("[]".getBytes()); + outputStream.close(); + }).build(); + } + catch (Exception e) + { + return Response.status(Response.Status.BAD_REQUEST).entity((StreamingOutput) outputStream -> + { + outputStream.write(("\"" + JSONValue.escape(ExceptionTranslation.buildExceptionMessage(session, e, new ByteArrayOutputStream()).getText()) + "\"").getBytes()); + outputStream.close(); + }).build(); + } + } + + public static class IncompletePathSuggestionInput + { + public String path; + public List types; + } + + @POST + @Path("suggestion/identifier") + public Response getSuggestionsForIdentifier(@Context HttpServletRequest request, + IdentifierSuggestionInput input, + @Context HttpServletResponse response) + { + PureRuntime runtime = this.session.getPureRuntime(); + ProcessorSupport processorSupport = runtime.getProcessorSupport(); + // NOTE: here we take into account: first, the imported packages in scope, then the root package (::) and lastly + // the auto imported packages in the global scope + MutableList allPackagePaths = Lists.mutable.withAll(input.importPaths).with("::").withAll(AUTO_IMPORTS).distinct(); + + try + { + MutableList packages = allPackagePaths.collect(runtime::getCoreInstance).selectInstancesOf(Package.class); + return Response.ok((StreamingOutput) outputStream -> + { + List children = packages.flatCollect(pack -> pack.getValueForMetaPropertyToMany(M3Properties.children)) + // we do not need to get the packages here + .select(child -> !(child instanceof Package)) + .select(child -> input.types == null || input.types.isEmpty() || input.types.contains(child.getClassifier().getName())); + + outputStream.write("[".getBytes()); + for (int i = 0; i < children.size(); i++) + { + CoreInstance child = children.get(i); + String pureName = child instanceof PackageableFunction ? child.getValueForMetaPropertyToOne(M3Properties.functionName).getName() : child.getValueForMetaPropertyToOne(M3Properties.name).getName(); + String text = child instanceof PackageableFunction ? Function.prettyPrint(child, processorSupport) : child.getValueForMetaPropertyToOne(M3Properties.name).getName(); + MutableList requiredClassProperties = child instanceof Class ? _Class.getSimpleProperties(child, processorSupport) + // NOTE: make sure to only consider required (non-qualified) properties: i.e. multiplicity lower bound != 0 + .selectInstancesOf(Property.class).select(prop -> + { + CoreInstance lowerBound = prop.getValueForMetaPropertyToOne(M3Properties.multiplicity).getValueForMetaPropertyToOne(M3Properties.lowerBound); + // NOTE: here the lower bound can be nullish when there's multiplicity parameter being used + // but we skip that case for now + return lowerBound != null && !lowerBound.getValueForMetaPropertyToOne(M3Properties.value).getName().equals("0"); + } + ).toList() : Lists.mutable.empty(); + + outputStream.write("{\"pureType\":\"".getBytes()); + outputStream.write(JSONValue.escape(child.getClassifier().getName()).getBytes()); + outputStream.write("\",\"pureName\":\"".getBytes()); + outputStream.write(JSONValue.escape(pureName).getBytes()); + outputStream.write("\",\"pureId\":\"".getBytes()); + outputStream.write(JSONValue.escape(PackageableElement.getUserPathForPackageableElement(child)).getBytes()); + outputStream.write("\",\"text\":\"".getBytes()); + outputStream.write(JSONValue.escape(text).getBytes()); + outputStream.write("\"".getBytes()); + + if (requiredClassProperties.notEmpty()) + { + outputStream.write(",\"requiredClassProperties\":[".getBytes()); + + for (int j = 0; j < requiredClassProperties.size(); j++) + { + outputStream.write("\"".getBytes()); + outputStream.write(JSONValue.escape(requiredClassProperties.get(j).getValueForMetaPropertyToOne(M3Properties.name).getName()).getBytes()); + outputStream.write("\"".getBytes()); + + if (j != requiredClassProperties.size() - 1) + { + outputStream.write(",".getBytes()); + } + } + + outputStream.write("]".getBytes()); + } + + outputStream.write("}".getBytes()); + + if (i != children.size() - 1) + { + outputStream.write(",".getBytes()); + } + } + outputStream.write("]".getBytes()); + outputStream.close(); + }).build(); + } + catch (Exception e) + { + return Response.status(Response.Status.BAD_REQUEST).entity((StreamingOutput) outputStream -> + { + outputStream.write(("\"" + JSONValue.escape(ExceptionTranslation.buildExceptionMessage(session, e, new ByteArrayOutputStream()).getText()) + "\"").getBytes()); + outputStream.close(); + }).build(); + } + } + + public static class IdentifierSuggestionInput + { + public List importPaths; + public List types; + } + + @POST + @Path("suggestion/attribute") + public Response getSuggestionsForAttribute(@Context HttpServletRequest request, + AttributeSuggestionInput input, + @Context HttpServletResponse response) + { + PureRuntime runtime = this.session.getPureRuntime(); + ProcessorSupport processorSupport = runtime.getProcessorSupport(); + // NOTE: here we take into account: first, the imported packages in scope, then the root package (::) and lastly + // the auto imported packages in the global scope + MutableList allPackagePaths = Lists.mutable.withAll(input.importPaths).withAll(AUTO_IMPORTS).distinct(); + MutableList paths = input.path.contains("::") ? Lists.mutable.of(input.path) : allPackagePaths.collect(pkg -> pkg.concat("::" + input.path)); + + try + { + MutableList suggestions = paths.collect(runtime::getCoreInstance) + // These are the sensible elements to get attributes from at the moment + .select(el -> el instanceof Class || el instanceof Enumeration || el instanceof Profile) + .flatCollect(el -> + { + if (el instanceof Class) + { + return _Class.computePropertiesByName(el, Lists.mutable.withAll(_Class.SIMPLE_PROPERTIES_PROPERTIES).withAll(_Class.QUALIFIED_PROPERTIES_PROPERTIES), processorSupport).collect(property -> new AttributeSuggestion( + property.getClassifier().getName(), + property.getValueForMetaPropertyToOne(M3Properties.name).getName(), + el.getClassifier().getName(), + PackageableElement.getUserPathForPackageableElement(el) + )); + } + if (el instanceof Profile) + { + return Lists.mutable.withAll(el.getValueForMetaPropertyToMany(M3Properties.p_tags).collect(tag -> new AttributeSuggestion( + tag.getClassifier().getName(), + tag.getValueForMetaPropertyToOne(M3Properties.value).getName(), + el.getClassifier().getName(), + PackageableElement.getUserPathForPackageableElement(el) + ))).withAll(el.getValueForMetaPropertyToMany(M3Properties.p_stereotypes).collect(stereotype -> new AttributeSuggestion( + stereotype.getClassifier().getName(), + stereotype.getValueForMetaPropertyToOne(M3Properties.value).getName(), + el.getClassifier().getName(), + PackageableElement.getUserPathForPackageableElement(el))) + ); + } + if (el instanceof Enumeration) + { + return el.getValueForMetaPropertyToMany(M3Properties.values).collect(enumValue -> new AttributeSuggestion( + enumValue.getClassifier().getName(), + enumValue.getValueForMetaPropertyToOne(M3Properties.name).getName(), + el.getClassifier().getName(), + PackageableElement.getUserPathForPackageableElement(el) + )); + } + return Collections.emptyList(); + }); + return Response.ok((StreamingOutput) outputStream -> + { + outputStream.write("[".getBytes()); + for (int i = 0; i < suggestions.size(); i++) + { + AttributeSuggestion suggestion = suggestions.get(i); + + outputStream.write("{\"pureType\":\"".getBytes()); + outputStream.write(JSONValue.escape(suggestion.pureType).getBytes()); + outputStream.write("\",\"pureName\":\"".getBytes()); + outputStream.write(JSONValue.escape(suggestion.pureName).getBytes()); + outputStream.write("\",\"owner\":\"".getBytes()); + outputStream.write(JSONValue.escape(suggestion.owner).getBytes()); + outputStream.write("\",\"ownerPureType\":\"".getBytes()); + outputStream.write(JSONValue.escape(suggestion.ownerPureType).getBytes()); + outputStream.write("\"}".getBytes()); + + if (i != suggestions.size() - 1) + { + outputStream.write(",".getBytes()); + } + } + outputStream.write("]".getBytes()); + outputStream.close(); + }).build(); + } + catch (Exception e) + { + return Response.status(Response.Status.BAD_REQUEST).entity((StreamingOutput) outputStream -> + { + outputStream.write(("\"" + JSONValue.escape(ExceptionTranslation.buildExceptionMessage(session, e, new ByteArrayOutputStream()).getText()) + "\"").getBytes()); + outputStream.close(); + }).build(); + } + } + + private static class AttributeSuggestion + { + public final String pureType; + public final String pureName; + public final String ownerPureType; + public final String owner; + + public AttributeSuggestion(String pureType, String pureName, String ownerPureType, String owner) + { + this.pureType = pureType; + this.pureName = pureName; + this.ownerPureType = ownerPureType; + this.owner = owner; + } + } + + public static class AttributeSuggestionInput + { + public List importPaths; + public String path; + } + + @POST + @Path("suggestion/class") + public Response getSuggestionsForClass(@Context HttpServletRequest request, + ClassSuggestionInput input, + @Context HttpServletResponse response) + { + PureRuntime runtime = this.session.getPureRuntime(); + ProcessorSupport processorSupport = runtime.getProcessorSupport(); + MutableList packagePaths = Lists.mutable.withAll(input.importPaths).withAll(AUTO_IMPORTS).distinct(); + + try + { + MutableList classes = packagePaths.collect(runtime::getCoreInstance) + .flatCollect(pkg -> pkg.getValueForMetaPropertyToMany(M3Properties.children)) + .selectInstancesOf(Class.class); + return Response.ok((StreamingOutput) outputStream -> + { + outputStream.write("[".getBytes()); + for (int i = 0; i < classes.size(); i++) + { + Class cls = classes.get(i); + MutableList requiredClassProperties = _Class.getSimpleProperties(cls, processorSupport) + // NOTE: make sure to only consider required (non-qualified) properties: i.e. multiplicity lower bound != 0 + .selectInstancesOf(Property.class).select(prop -> + { + CoreInstance lowerBound = prop.getValueForMetaPropertyToOne(M3Properties.multiplicity).getValueForMetaPropertyToOne(M3Properties.lowerBound); + // NOTE: here the lower bound can be nullish when there's multiplicity parameter being used + // but we skip that case for now + return lowerBound != null && !lowerBound.getValueForMetaPropertyToOne(M3Properties.value).getName().equals("0"); + } + ).toList(); + + outputStream.write("{\"pureName\":\"".getBytes()); + outputStream.write(JSONValue.escape(cls.getValueForMetaPropertyToOne(M3Properties.name).getName()).getBytes()); + outputStream.write("\",\"pureId\":\"".getBytes()); + outputStream.write(JSONValue.escape(PackageableElement.getUserPathForPackageableElement(cls)).getBytes()); + outputStream.write("\",\"requiredClassProperties\":[".getBytes()); + + for (int j = 0; j < requiredClassProperties.size(); j++) + { + outputStream.write("\"".getBytes()); + outputStream.write(JSONValue.escape(requiredClassProperties.get(j).getValueForMetaPropertyToOne(M3Properties.name).getName()).getBytes()); + outputStream.write("\"".getBytes()); + + if (j != requiredClassProperties.size() - 1) + { + outputStream.write(",".getBytes()); + } + } + + outputStream.write("]}".getBytes()); + + if (i != classes.size() - 1) + { + outputStream.write(",".getBytes()); + } + } + + outputStream.write("]".getBytes()); + outputStream.close(); + }).build(); + } + catch (Exception e) + { + return Response.status(Response.Status.BAD_REQUEST).entity((StreamingOutput) outputStream -> + { + outputStream.write(("\"" + JSONValue.escape(ExceptionTranslation.buildExceptionMessage(session, e, new ByteArrayOutputStream()).getText()) + "\"").getBytes()); + outputStream.close(); + }).build(); + } + } + + public static class ClassSuggestionInput + { + public List importPaths; + } + + @POST + @Path("suggestion/variable") + public Response getSuggestionsForVariable(@Context HttpServletRequest request, + VariableSuggestionInput input, + @Context HttpServletResponse response) + { + PureRuntime runtime = this.session.getPureRuntime(); + try + { + Source source = runtime.getSourceById(input.sourceId); + ListIterable functionsOrLambdas = source.findFunctionsOrLambasAt(input.line, input.column); + MutableSet varNames = Sets.mutable.empty(); + + for (CoreInstance fn : functionsOrLambdas) + { + // scan for the let expressions then follows by the parameters + RichIterable letVars = fn.getValueForMetaPropertyToMany(M3Properties.expressionSequence) + .select(expression -> expression instanceof SimpleFunctionExpression && "letFunction".equals(((SimpleFunctionExpression) expression)._functionName())) + .collect(expression -> ((SimpleFunctionExpression) expression)._parametersValues().toList().getFirst()) + // NOTE: make sure to only consider let statements prior to the call + .select(letVar -> letVar.getSourceInformation().getEndLine() < input.line || (letVar.getSourceInformation().getEndLine() == input.line && letVar.getSourceInformation().getEndColumn() < input.column)) + .selectInstancesOf(InstanceValueInstance.class); + for (InstanceValueInstance var : letVars) + { + varNames.add(var.getValueForMetaPropertyToOne(M3Properties.values).getName()); + } + RichIterable params = fn.getValueForMetaPropertyToOne(M3Properties.classifierGenericType) + .getValueForMetaPropertyToOne(M3Properties.typeArguments) + .getValueForMetaPropertyToOne(M3Properties.rawType) + .getValueForMetaPropertyToMany(M3Properties.parameters) + .selectInstancesOf(VariableExpressionInstance.class); + for (VariableExpressionInstance var : params) + { + varNames.add(var._name()); + } + } + MutableList suggestions = Lists.mutable.withAll(varNames); + + return Response.ok((StreamingOutput) outputStream -> + { + outputStream.write("[".getBytes()); + for (int i = 0; i < suggestions.size(); i++) + { + String varName = suggestions.get(i); + outputStream.write("{\"name\":\"".getBytes()); + outputStream.write(JSONValue.escape(varName).getBytes()); + outputStream.write("\"}".getBytes()); + + if (i != suggestions.size() - 1) + { + outputStream.write(",".getBytes()); + } + } + outputStream.write("]".getBytes()); + outputStream.close(); + }).build(); + } + catch (Exception e) + { + return Response.status(Response.Status.BAD_REQUEST).entity((StreamingOutput) outputStream -> + { + outputStream.write(("\"" + JSONValue.escape(ExceptionTranslation.buildExceptionMessage(session, e, new ByteArrayOutputStream()).getText()) + "\"").getBytes()); + outputStream.close(); + }).build(); + } + } + + public static class VariableSuggestionInput + { + public String sourceId; + public int line; + public int column; + } +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/AbstractRenameConceptEntry.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/AbstractRenameConceptEntry.java new file mode 100644 index 00000000000..30d038837a5 --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/AbstractRenameConceptEntry.java @@ -0,0 +1,59 @@ +// Copyright 2022 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api.concept; + +public abstract class AbstractRenameConceptEntry +{ + private final int lineIndex; + private final int columnIndex; + private final String name; + private final String type; + + public AbstractRenameConceptEntry(int lineIndex, int columnIndex, String name, String type) + { + this.lineIndex = lineIndex; + this.columnIndex = columnIndex; + this.name = name; + this.type = type; + } + + public int getConceptLineIndex() + { + return this.lineIndex; + } + + public int getConceptColumnIndex() + { + return this.columnIndex; + } + + public String getConceptName() + { + return this.name; + } + + public String getConceptType() + { + return this.type; + } + + abstract int getReplaceLineIndex(); + + abstract int getReplaceColumnIndex(); + + abstract String getOriginalReplaceString(); + + abstract String getNewReplaceString(); +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/Concept.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/Concept.java new file mode 100644 index 00000000000..453e58a6659 --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/Concept.java @@ -0,0 +1,118 @@ +// Copyright 2020 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api.concept; + +import io.swagger.annotations.Api; +import org.finos.legend.engine.ide.api.concept.GetConcept; +import org.finos.legend.engine.ide.session.PureSession; +import org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.function.ConcreteFunctionDefinition; +import org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.function.property.QualifiedPropertyInstance; +import org.finos.legend.pure.m3.navigation.Instance; +import org.finos.legend.pure.m3.navigation.M3Paths; +import org.finos.legend.pure.m3.navigation.M3Properties; +import org.finos.legend.pure.m3.navigation.PackageableElement.PackageableElement; +import org.finos.legend.pure.m3.serialization.runtime.PureRuntime; +import org.finos.legend.pure.m3.serialization.runtime.Source; +import org.finos.legend.pure.m4.coreinstance.CoreInstance; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.ws.rs.GET; +import javax.ws.rs.POST; +import javax.ws.rs.Path; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.StreamingOutput; +import java.io.IOException; +import java.io.OutputStream; + +@Api(tags = "Concepts") +@Path("/") +public class Concept +{ + private final PureSession session; + + public Concept(PureSession session) + { + this.session = session; + } + + @POST + @Path("getConcept") + public Response getConcept(@Context HttpServletRequest request, @Context HttpServletResponse response) + { + return Response.ok((StreamingOutput) outputStream -> + { + this.session.saveOnly(request, response, outputStream, new GetConcept()); + }).build(); + } + + @GET + @Path("getConceptInfo") + public Response getConceptInfo(@Context HttpServletRequest request, @Context HttpServletResponse response) + { + return Response.ok((StreamingOutput) outputStream -> + { + String file = request.getParameter("file"); + String line = request.getParameter("line"); + String column = request.getParameter("column"); + + PureRuntime pureRuntime = session.getPureRuntime(); + Source src = pureRuntime.getSourceById(file); + + response.setContentType("application/json"); + if (src != null) + { + CoreInstance found = src.navigate(Integer.parseInt(line), Integer.parseInt(column), session.getPureRuntime().getProcessorSupport()); + if (found != null) + { + if (Instance.instanceOf(found, M3Paths.AbstractProperty, session.getPureRuntime().getProcessorSupport())) + { + String path = PackageableElement.getUserPathForPackageableElement(found); + CoreInstance owner = Instance.getValueForMetaPropertyToOneResolved(found, M3Properties.owner, session.getPureRuntime().getProcessorSupport()); + String ownerPath = PackageableElement.getUserPathForPackageableElement(owner); + outputStream.write(("{\"path\":\"" + path + "\",\"pureName\":\"" + found.getValueForMetaPropertyToOne(M3Properties.name).getName() + "\",\"owner\":\"" + ownerPath + "\",\"pureType\":\"" + (found instanceof QualifiedPropertyInstance ? "QualifiedProperty" : "Property") + "\"}").getBytes()); + } + else if (Instance.instanceOf(found, M3Paths.Enum, session.getPureRuntime().getProcessorSupport())) + { + String path = PackageableElement.getUserPathForPackageableElement(found); + CoreInstance owner = found.getClassifier(); + String ownerPath = PackageableElement.getUserPathForPackageableElement(owner); + outputStream.write(("{\"path\":\"" + path + "\",\"pureName\":\"" + found.getName() + "\",\"owner\":\"" + ownerPath + "\",\"pureType\":\"Enum\"}").getBytes()); + } + else + { + String path = PackageableElement.getUserPathForPackageableElement(found); + outputStream.write(("{\"path\":\"" + path + "\",\"pureName\":\"" + (found instanceof ConcreteFunctionDefinition ? found.getValueForMetaPropertyToOne(M3Properties.functionName).getName() : found.getName()) + "\",\"pureType\":\"" + found.getValueForMetaPropertyToOne(M3Properties.classifierGenericType).getValueForMetaPropertyToOne(M3Properties.rawType).getName() + "\"}").getBytes()); + } + } + else + { + this.writeErrorResponse(outputStream, file, line, column); + } + } + else + { + this.writeErrorResponse(outputStream, file, line, column); + } + + }).build(); + } + + private void writeErrorResponse(OutputStream outStream, String file, String line, String column) throws IOException + { + outStream.write(("{\"error\":true,\"text\":\"Cannot find source for file: " + file + " line: " + line + " col: " + column + "\"}").getBytes()); + } +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/GetConcept.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/GetConcept.java new file mode 100644 index 00000000000..75b765bb940 --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/GetConcept.java @@ -0,0 +1,105 @@ +// Copyright 2020 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api.concept; + +import org.finos.legend.engine.ide.helpers.response.ExceptionTranslation; +import org.finos.legend.engine.ide.session.PureSession; +import org.finos.legend.engine.ide.session.SimpleFunction; +import org.finos.legend.pure.m3.navigation.ProcessorSupport; +import org.finos.legend.pure.m3.serialization.runtime.PureRuntime; +import org.finos.legend.pure.m3.serialization.runtime.Source; +import org.finos.legend.pure.m4.coreinstance.CoreInstance; +import org.finos.legend.pure.m4.coreinstance.SourceInformation; +import org.finos.legend.pure.m4.exception.PureException; +import org.json.simple.JSONArray; +import org.json.simple.JSONObject; +import org.json.simple.JSONValue; + +import javax.servlet.http.HttpServletResponse; +import java.io.OutputStream; + +public class GetConcept implements SimpleFunction +{ + @Override + public void run(PureSession pureSession, JSONObject extraParams, JSONArray modifiedFiles, HttpServletResponse response, OutputStream outputStream) throws Exception + { + PureException compilationError = null; + String compilationErrorText = ""; + PureRuntime pureRuntime = pureSession.getPureRuntime(); + + ProcessorSupport processorSupport = pureRuntime.getProcessorSupport(); + + Source src = pureRuntime.getSourceById((String) extraParams.get("file")); + if (!src.isCompiled()) + { + try + { + pureRuntime.compile(); + } + catch (PureException e) + { + compilationError = e; + compilationErrorText = JSONValue.escape(ExceptionTranslation.pureExceptionToJson(pureSession, compilationError, null).getText()); + // check if target file was compiled even if the whole compilation failed. + if (!src.isCompiled()) + { + throw e; + } + } + } + Long line = (Long) extraParams.get("line"); + Long column = (Long) extraParams.get("column"); + CoreInstance found = src.navigate(line.intValue(), column.intValue(), processorSupport); + + if (null != found) + { + SourceInformation sourceInfo = found.getSourceInformation(); + if (null == sourceInfo) + { + outputStream.write(("{\"error\":true,\"text\":\"" + (null == compilationError ? "Navigation is not supported yet for this element!" : compilationErrorText) + "\"").getBytes()); + outputStream.write((",\"compiler\":\"\"").getBytes()); + outputStream.write((",\"cached\":" + pureRuntime.getCache().getCacheState().isCached()).getBytes()); + if (null != compilationError) + { + outputStream.write(",\"exceptionType\":\"Parser error\"".getBytes()); + } + outputStream.write("}".getBytes()); + } + else + { + Source source = pureRuntime.getSourceById(sourceInfo.getSourceId()); + outputStream.write(("{\"text\":\"" + (null == compilationError ? "" : compilationErrorText) + "\"").getBytes()); + outputStream.write((",\"compiler\":\"\"").getBytes()); + outputStream.write((",\"jumpTo\":{\"source\":\"" + sourceInfo.getSourceId() + "\", \"line\":" + sourceInfo.getLine() + ", \"column\":" + sourceInfo.getColumn() + ", \"RO\":\"" + source.isImmutable() + "\"}").getBytes()); + outputStream.write((",\"cached\":" + pureRuntime.getCache().getCacheState().isCached()).getBytes()); + if (null != compilationError) + { + outputStream.write(",\"exceptionType\":\"Parser error\"".getBytes()); + } + outputStream.write("}".getBytes()); + } + } + else + { + outputStream.write(("{\"error\":true,\"text\":\"" + (null == compilationError ? "Navigation is not supported yet for this element!" : compilationErrorText) + "\"").getBytes()); + outputStream.write((",\"compiler\":\"\"").getBytes()); + if (null != compilationError) + { + outputStream.write(",\"exceptionType\":\"Parser error\"".getBytes()); + } + outputStream.write("}".getBytes()); + } + } +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/MovePackageableElements.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/MovePackageableElements.java new file mode 100644 index 00000000000..bdce662a9ee --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/MovePackageableElements.java @@ -0,0 +1,187 @@ +// Copyright 2023 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api.concept; + +import io.swagger.annotations.Api; +import org.eclipse.collections.api.factory.Lists; +import org.eclipse.collections.api.list.MutableList; +import org.eclipse.collections.api.multimap.list.MutableListMultimap; +import org.eclipse.collections.api.multimap.set.MutableSetMultimap; +import org.eclipse.collections.api.partition.list.PartitionMutableList; +import org.eclipse.collections.impl.factory.Multimaps; +import org.eclipse.collections.impl.tuple.Tuples; +import org.finos.legend.engine.ide.api.concept.AbstractRenameConceptEntry; +import org.finos.legend.engine.ide.api.concept.RenameConceptUtility; +import org.finos.legend.engine.ide.api.concept.RenamePackageEntry; +import org.finos.legend.engine.ide.helpers.response.ExceptionTranslation; +import org.finos.legend.engine.ide.session.PureSession; +import org.json.simple.JSONValue; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.ws.rs.PUT; +import javax.ws.rs.Path; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.StreamingOutput; +import java.io.ByteArrayOutputStream; +import java.util.List; +import java.util.regex.Pattern; + +@Api(tags = "Concepts") +@Path("/") +public class MovePackageableElements +{ + private static final Pattern PACKAGE_PATH_PATTERN = Pattern.compile("\\w[\\w$]*+(::\\w[\\w$]*+)*+"); + + private final PureSession session; + + public MovePackageableElements(PureSession session) + { + this.session = session; + } + + @PUT + @Path("movePackageableElements") + public Response movePackageableElements(List inputs, @Context HttpServletRequest request, @Context HttpServletResponse response) + { + try + { + MutableListMultimap entryIndex = Multimaps.mutable.list.empty(); + for (MovePackageableElementInput input : inputs) + { + String sourcePackage = input.sourcePackage; + String destinationPackage = input.destinationPackage; + + if (sourcePackage == null || !PACKAGE_PATH_PATTERN.matcher(sourcePackage).matches()) + { + throw new IllegalArgumentException("Invalid source package"); + } + if (destinationPackage == null || !PACKAGE_PATH_PATTERN.matcher(destinationPackage).matches()) + { + throw new IllegalArgumentException("Invalid destination package"); + } + for (org.finos.legend.engine.ide.api.concept.RenameConceptUtility.RenameConceptInputSourceInformation sourceInformation : input.sourceInformations) + { + entryIndex.add( + Tuples.pair( + sourceInformation.sourceId, + new org.finos.legend.engine.ide.api.concept.RenamePackageEntry(sourceInformation.line - 1, sourceInformation.column - 1, input.pureName, input.pureType, sourcePackage, destinationPackage) + ) + ); + } + } + + if (!entryIndex.keysView().allSatisfy(sourceId -> this.session.getPureRuntime().getSourceById(sourceId).isCompiled())) + { + throw new IllegalStateException("Source code must be compiled before refactoring"); + } + if (!entryIndex.keysView().allSatisfy(sourceId -> !sourceId.startsWith("/platform/"))) + { + throw new IllegalArgumentException("Some files belong in /platform directory. Cannot refactor files in /platform directory"); + } + + entryIndex.forEachKeyMultiValues((sourceId, entries) -> + { + String originalSourceCode = session.getPureRuntime().getSourceById(sourceId).getContent(); + String[] originalSourceCodeLines = originalSourceCode.split("\n", -1); + PartitionMutableList partition = (PartitionMutableList) (org.finos.legend.engine.ide.api.concept.RenameConceptUtility.removeInvalidReplaceConceptEntries(originalSourceCodeLines, Lists.mutable.ofAll(entries))) + .partition(entry -> entry.getReplaceColumnIndex() >= 0 && originalSourceCodeLines[entry.getReplaceLineIndex()].startsWith(entry.getOriginalReplaceString(), entry.getReplaceColumnIndex())); + String updatedSourceCode = org.finos.legend.engine.ide.api.concept.RenameConceptUtility.replace(originalSourceCodeLines, partition.getSelected()); + updatedSourceCode = MovePackageableElements.updateImportStatements( + updatedSourceCode.split("\n", -1), + partition.getRejected().sortThisBy(AbstractRenameConceptEntry::getReplaceLineIndex) + ); + session.getPureRuntime().modify(sourceId, updatedSourceCode); + }); + + return Response.noContent().build(); + } + catch (Exception e) + { + return Response.status(Response.Status.BAD_REQUEST).entity((StreamingOutput) outputStream -> + { + outputStream.write(("\"" + JSONValue.escape(ExceptionTranslation.buildExceptionMessage(this.session, e, new ByteArrayOutputStream()).getText()) + "\"").getBytes()); + outputStream.close(); + }).build(); + } + } + + private static String updateImportStatements(String[] sourceCodeLines, MutableList importUpdateEntries) + { + // identify sections which will reset import scopes + MutableList lineIndices = Lists.mutable.empty(); + lineIndices.add(0); + for (int i = 0; i < sourceCodeLines.length; ++i) + { + if (sourceCodeLines[i].trim().startsWith("###")) + { + lineIndices.add(i); + } + } + lineIndices.add(sourceCodeLines.length); + + // find all the import lines to be updated indexed by the section + MutableSetMultimap lineImportStatementsMap = Multimaps.mutable.set.empty(); + int i = 0; + int j = 0; + while (i < importUpdateEntries.size()) + { + while (j < lineIndices.size() - 1) + { + if (lineIndices.get(j) <= importUpdateEntries.get(i).getReplaceLineIndex() && importUpdateEntries.get(i).getReplaceLineIndex() < lineIndices.get(j + 1)) + { + lineImportStatementsMap.add(Tuples.pair(lineIndices.get(j), importUpdateEntries.get(i).getNewReplaceString())); + break; + } + j++; + } + i++; + } + + // update import statements + final StringBuilder stringBuilder = new StringBuilder(); + for (int lineIndex = 0; lineIndex < sourceCodeLines.length; ++lineIndex) + { + if (lineImportStatementsMap.containsKey(lineIndex)) + { + if (sourceCodeLines[lineIndex].trim().startsWith("###")) + { + stringBuilder.append(sourceCodeLines[lineIndex]).append("\n"); + lineImportStatementsMap.get(lineIndex).forEach(destinationPackage -> stringBuilder.append("import ").append(destinationPackage).append("::*;\n")); + } + else + { + lineImportStatementsMap.get(lineIndex).forEach(destinationPackage -> stringBuilder.append("import ").append(destinationPackage).append("::*;\n")); + stringBuilder.append(sourceCodeLines[lineIndex]).append("\n"); + } + } + else + { + stringBuilder.append(sourceCodeLines[lineIndex]).append("\n"); + } + } + return stringBuilder.substring(0, stringBuilder.length() - 1); + } + + public static class MovePackageableElementInput + { + public String pureName; + public String pureType; + public String sourcePackage; + public String destinationPackage; + public List sourceInformations; + } +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/RenameConcept.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/RenameConcept.java new file mode 100644 index 00000000000..ef4c5e9ca8b --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/RenameConcept.java @@ -0,0 +1,101 @@ +// Copyright 2023 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api.concept; + +import io.swagger.annotations.Api; +import org.eclipse.collections.api.list.MutableList; +import org.eclipse.collections.api.multimap.list.MutableListMultimap; +import org.eclipse.collections.impl.factory.Multimaps; +import org.eclipse.collections.impl.tuple.Tuples; +import org.finos.legend.engine.ide.api.concept.AbstractRenameConceptEntry; +import org.finos.legend.engine.ide.api.concept.RenameConceptEntry; +import org.finos.legend.engine.ide.api.concept.RenameConceptUtility; +import org.finos.legend.engine.ide.helpers.response.ExceptionTranslation; +import org.finos.legend.engine.ide.session.PureSession; +import org.json.simple.JSONValue; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.ws.rs.PUT; +import javax.ws.rs.Path; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.StreamingOutput; +import java.io.ByteArrayOutputStream; +import java.util.List; + +@Api(tags = "Concepts") +@Path("/") +public class RenameConcept +{ + private final PureSession session; + + public RenameConcept(PureSession session) + { + this.session = session; + } + + @PUT + @Path("renameConcept") + public Response renameConcept(RenameConceptInput input, @Context HttpServletRequest request, @Context HttpServletResponse response) + { + try + { + MutableListMultimap entryIndex = Multimaps.mutable.list.empty(); + for (org.finos.legend.engine.ide.api.concept.RenameConceptUtility.RenameConceptInputSourceInformation sourceInformation : input.sourceInformations) + { + entryIndex.add( + Tuples.pair( + sourceInformation.sourceId, + new RenameConceptEntry(sourceInformation.line - 1, sourceInformation.column - 1, input.oldName, input.pureType, input.newName) + ) + ); + } + + if (!entryIndex.keysView().allSatisfy(sourceId -> this.session.getPureRuntime().getSourceById(sourceId).isCompiled())) + { + throw new IllegalStateException("Source code must be compiled before refactoring"); + } + if (!entryIndex.keysView().allSatisfy(sourceId -> !sourceId.startsWith("/platform/"))) + { + throw new IllegalArgumentException("Some files belong in /platform directory. Cannot refactor files in /platform directory"); + } + + entryIndex.forEachKeyMultiValues((sourceId, entry) -> + { + String[] originalSourceCodeLines = session.getPureRuntime().getSourceById(sourceId).getContent().split("\n", -1); + session.getPureRuntime().modify(sourceId, org.finos.legend.engine.ide.api.concept.RenameConceptUtility.replace(originalSourceCodeLines, org.finos.legend.engine.ide.api.concept.RenameConceptUtility.removeInvalidReplaceConceptEntries(originalSourceCodeLines, (MutableList) entry))); + }); + + return Response.noContent().build(); + } + catch (Exception e) + { + return Response.status(Response.Status.BAD_REQUEST).entity((StreamingOutput) outputStream -> + { + outputStream.write(("\"" + JSONValue.escape(ExceptionTranslation.buildExceptionMessage(this.session, e, new ByteArrayOutputStream()).getText()) + "\"").getBytes()); + outputStream.close(); + }).build(); + } + } + + public static class RenameConceptInput + { + public String oldName; + public String newName; + public String pureType; + public List sourceInformations; + } +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/RenameConceptEntry.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/RenameConceptEntry.java new file mode 100644 index 00000000000..243fa8f17ba --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/RenameConceptEntry.java @@ -0,0 +1,52 @@ +// Copyright 2022 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api.concept; + +import org.finos.legend.engine.ide.api.concept.AbstractRenameConceptEntry; + +public class RenameConceptEntry extends AbstractRenameConceptEntry +{ + private final String newName; + + public RenameConceptEntry(int line, int column, String name, String type, String newName) + { + super(line, column, name, type); + this.newName = newName; + } + + @Override + public int getReplaceLineIndex() + { + return this.getConceptLineIndex(); + } + + @Override + public int getReplaceColumnIndex() + { + return this.getConceptColumnIndex(); + } + + @Override + public String getOriginalReplaceString() + { + return this.getConceptName(); + } + + @Override + public String getNewReplaceString() + { + return this.newName; + } +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/RenameConceptUtility.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/RenameConceptUtility.java new file mode 100644 index 00000000000..41ebef6c68e --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/RenameConceptUtility.java @@ -0,0 +1,84 @@ +// Copyright 2022 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api.concept; + +import org.eclipse.collections.api.block.predicate.Predicate; +import org.eclipse.collections.api.list.MutableList; +import org.finos.legend.engine.ide.api.concept.AbstractRenameConceptEntry; + +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +public class RenameConceptUtility +{ + private static final String CONCRETE_FUNCTION_DEFINITION = "ConcreteFunctionDefinition"; + private static final Pattern IDENTIFIER_REGEX = Pattern.compile("^(\\w[\\w$]*+)"); + private static final Pattern SIGNATURE_SUFFIX_REGEX = Pattern.compile("_[\\w$]+_"); + + private RenameConceptUtility() + { + } + + public static MutableList removeInvalidReplaceConceptEntries(final String[] sourceCodeLines, MutableList entries) + { + return entries.select(new Predicate() + { + @Override + public boolean accept(org.finos.legend.engine.ide.api.concept.AbstractRenameConceptEntry entry) + { + if (entry.getConceptColumnIndex() < 0 || entry.getConceptColumnIndex() >= sourceCodeLines[entry.getConceptLineIndex()].length()) + { + return false; + } + Matcher matcher = IDENTIFIER_REGEX.matcher(sourceCodeLines[entry.getConceptLineIndex()].substring(entry.getConceptColumnIndex())); + if (matcher.find()) + { + String identifierAtThisPoint = matcher.group(1); + boolean isExactMatch = identifierAtThisPoint.equals(entry.getConceptName()); + boolean isSignatureOfOriginal = CONCRETE_FUNCTION_DEFINITION.equals(entry.getConceptType()) && identifierAtThisPoint.startsWith(entry.getConceptName()) && SIGNATURE_SUFFIX_REGEX.matcher(identifierAtThisPoint.substring(entry.getConceptName().length())).matches(); + return isExactMatch || isSignatureOfOriginal; + } + return false; + } + }); + } + + public static String replace(String[] sourceCodeLines, MutableList entries) + { + entries.sortThisBy(org.finos.legend.engine.ide.api.concept.AbstractRenameConceptEntry::getReplaceColumnIndex).sortThisBy(org.finos.legend.engine.ide.api.concept.AbstractRenameConceptEntry::getReplaceLineIndex); + StringBuilder stringBuilder = new StringBuilder(); + int counter = 0; + for (int lineIndex = 0; lineIndex < sourceCodeLines.length; ++lineIndex) + { + int columnIndex = 0; + while (counter < entries.size() && entries.get(counter).getReplaceLineIndex() == lineIndex) + { + AbstractRenameConceptEntry entry = entries.get(counter); + stringBuilder.append(sourceCodeLines[lineIndex], columnIndex, entry.getReplaceColumnIndex()).append(entry.getNewReplaceString()); + columnIndex = entry.getReplaceColumnIndex() + entry.getOriginalReplaceString().length(); + counter++; + } + stringBuilder.append(sourceCodeLines[lineIndex].substring(columnIndex)).append("\n"); + } + return stringBuilder.substring(0, stringBuilder.length() - 1); + } + + public static class RenameConceptInputSourceInformation + { + public String sourceId; + public int line; + public int column; + } +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/RenamePackageEntry.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/RenamePackageEntry.java new file mode 100644 index 00000000000..baf2fd5d56a --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/concept/RenamePackageEntry.java @@ -0,0 +1,54 @@ +// Copyright 2022 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api.concept; + +import org.finos.legend.engine.ide.api.concept.AbstractRenameConceptEntry; + +public class RenamePackageEntry extends AbstractRenameConceptEntry +{ + private final String sourcePackage; + private final String destinationPackage; + + public RenamePackageEntry(int line, int column, String name, String type, String sourcePackage, String destinationPackage) + { + super(line, column, name, type); + this.sourcePackage = sourcePackage; + this.destinationPackage = destinationPackage; + } + + @Override + public int getReplaceLineIndex() + { + return this.getConceptLineIndex(); + } + + @Override + public int getReplaceColumnIndex() + { + return this.getConceptColumnIndex() - this.getOriginalReplaceString().length() - 2; + } + + @Override + public String getOriginalReplaceString() + { + return this.sourcePackage; + } + + @Override + public String getNewReplaceString() + { + return this.destinationPackage; + } +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/Execute.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/Execute.java new file mode 100644 index 00000000000..c44baf83220 --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/Execute.java @@ -0,0 +1,97 @@ +// Copyright 2020 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api.execution.function; + +import io.swagger.annotations.Api; +import org.eclipse.collections.impl.utility.MapIterate; +import org.finos.legend.engine.ide.api.execution.function.manager.ContentType; +import org.finos.legend.engine.ide.api.execution.function.manager.ExecutionManager; +import org.finos.legend.engine.ide.api.execution.function.manager.ExecutionRequest; +import org.finos.legend.engine.ide.api.execution.function.manager.HttpServletResponseWriter; +import org.finos.legend.engine.ide.helpers.JSONResponseTools; +import org.finos.legend.engine.ide.session.PureSession; +import org.finos.legend.pure.m3.exception.PureExecutionException; +import org.finos.legend.pure.m3.execution.FunctionExecution; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.ws.rs.GET; +import javax.ws.rs.Path; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.StreamingOutput; +import java.util.Map; + +@Api(tags = "Execute") +@Path("/") +public class Execute +{ + private PureSession pureSession; + + public Execute(PureSession pureSession) + { + this.pureSession = pureSession; + } + + @GET + @Path("execute") + public Response execute(@Context HttpServletRequest request, @Context HttpServletResponse response) + { + return Response.ok((StreamingOutput) outputStream -> + { + try + { + FunctionExecution functionExecution = this.pureSession.getFunctionExecution(); + if (null == functionExecution || !functionExecution.isFullyInitializedForExecution()) + { + throw new PureExecutionException("System not initialized. Make sure that your pure code has compiled successfully in the IDE."); + } + ExecutionManager executionManager = new ExecutionManager(functionExecution); + + StringBuffer urlBuffer = request.getRequestURL(); + String queryString = request.getQueryString(); + if (null != queryString) + { + urlBuffer.append('?'); + urlBuffer.append(queryString); + } + + Map requestParams = request.getParameterMap(); + boolean isJsonInput = JSONResponseTools.JSON_CONTENT_TYPE.equals(request.getContentType()) && (MapIterate.isEmpty(requestParams) || 1 == requestParams.size()); + + if (isJsonInput) + { + executionManager.execute(new ExecutionRequest(requestParams), new HttpServletResponseWriter(response), ContentType.json); + } + else + { + executionManager.execute(new ExecutionRequest(requestParams), new HttpServletResponseWriter(response), ContentType.text); + } + } + catch (IllegalArgumentException e) + { + JSONResponseTools.sendJSONErrorResponse(response, HttpServletResponse.SC_BAD_REQUEST, e, false); + } + catch (RuntimeException | Error e) + { + if (e instanceof Error) + { + throw (Error) e; + } + JSONResponseTools.sendJSONErrorResponse(response, HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e, false); + } + }).build(); + } +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/ContentType.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/ContentType.java new file mode 100644 index 00000000000..f03ee828f7e --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/ContentType.java @@ -0,0 +1,36 @@ +// Copyright 2020 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api.execution.function.manager; + +public enum ContentType +{ + json("application/json"), + csv("text/csv"), + text("text/html;charset=UTF-8"), + xlsx("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); + + + private final String type; + + ContentType(String type) + { + this.type = type; + } + + public String getType() + { + return this.type; + } +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/ExecutionManager.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/ExecutionManager.java new file mode 100644 index 00000000000..90eb86ed4d8 --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/ExecutionManager.java @@ -0,0 +1,297 @@ +// Copyright 2020 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api.execution.function.manager; + +import org.eclipse.collections.api.factory.Lists; +import org.eclipse.collections.api.factory.Maps; +import org.eclipse.collections.api.list.ListIterable; +import org.eclipse.collections.api.map.ImmutableMap; +import org.eclipse.collections.impl.utility.ArrayIterate; +import org.finos.legend.pure.m3.exception.PureExecutionStreamingException; +import org.finos.legend.pure.m3.execution.FunctionExecution; +import org.finos.legend.pure.m3.execution.OutputWriter; +import org.finos.legend.pure.m3.execution.XLSXOutputWriter; +import org.finos.legend.pure.m3.navigation.M3Paths; +import org.finos.legend.pure.m3.navigation.M3Properties; +import org.finos.legend.pure.m3.navigation.ProcessorSupport; +import org.finos.legend.pure.m3.navigation.function.FunctionDescriptor; +import org.finos.legend.pure.m3.navigation.function.InvalidFunctionDescriptorException; +import org.finos.legend.pure.m3.navigation.importstub.ImportStub; +import org.finos.legend.pure.m4.coreinstance.CoreInstance; +import org.finos.legend.pure.runtime.java.shared.canstreamstate.CanStreamState; + +import java.io.OutputStream; +import java.util.Map; + +public class ExecutionManager +{ + public static final String OUTPUT_FORMAT_PARAMETER = "format"; + public static final String OUTPUT_PROCESSOR_PARAMETER = "outFunc"; + public static final String OUTPUT_PROCESSOR_PARAMETER_PARAMETER = "outParam"; + + public static final String EXECUTION_MODE_PARAM = "mode"; + + public static final String FUNCTION_PARAMETER = "func"; + public static final String PARAMETER_PARAMETER = "param"; + public static final String QUERY_PARAMETER = "query"; + public static final String BLOCK_PARAMETER = "block"; + public static final String PROCESSING_FUNC_PARAMETER = "processingFunc"; + public static final String PROCESSING_PARAM_PARAMETER = "processingParam"; + + public static final String OUTPUT_FORMAT_RAW = "raw"; + public static final String OUTPUT_FORMAT_PRE = "pre"; + public static final String OUTPUT_FORMAT_JSON = "json"; + public static final String OUTPUT_FORMAT_CSV = "csv"; + public static final String OUTPUT_FORMAT_XLSX = "xlsx"; + + private static final ImmutableMap OUTPUT_FORMATS = Maps.mutable.empty() + .withKeyValue(OUTPUT_FORMAT_RAW, org.finos.legend.engine.ide.api.execution.function.manager.OutputFormat.RAW) + .withKeyValue(OUTPUT_FORMAT_PRE, org.finos.legend.engine.ide.api.execution.function.manager.OutputFormat.PRE) + .withKeyValue(OUTPUT_FORMAT_JSON, org.finos.legend.engine.ide.api.execution.function.manager.OutputFormat.JSON) + .withKeyValue(OUTPUT_FORMAT_CSV, org.finos.legend.engine.ide.api.execution.function.manager.OutputFormat.CSV) + .withKeyValue(OUTPUT_FORMAT_XLSX, org.finos.legend.engine.ide.api.execution.function.manager.OutputFormat.XLSX) + .toImmutable(); + + private static final org.finos.legend.engine.ide.api.execution.function.manager.OutputFormat DEFAULT_OUTPUT_FORMAT = org.finos.legend.engine.ide.api.execution.function.manager.OutputFormat.JSON; + + private static final String EXECUTE_FUNCTION = "meta::pure::ide::execute_String_$0_1$__List_MANY__String_$0_1$__String_$0_1$__String_$0_1$__String_$0_1$__List_MANY__String_$0_1$__List_MANY__String_MANY_"; + + private final FunctionExecutionParser parser; + private final FunctionExecution functionExecution; + + public ExecutionManager(FunctionExecution functionExecution) + { + this.parser = new FunctionExecutionParser(functionExecution.getProcessorSupport()); + this.functionExecution = functionExecution; + + } + + public void execute(ExecutionRequest executionRequest, HttpResponseWriter response, ContentType inputContentType) + { + org.finos.legend.engine.ide.api.execution.function.manager.OutputFormat format = this.getOutputFormat(executionRequest.getRequestParams()); + + CoreInstance executeFunction = this.getFunction(EXECUTE_FUNCTION); + + String funcParam = executionRequest.getRequestParamToOne(FUNCTION_PARAMETER); + String blockParam = executionRequest.getRequestParamToOne(BLOCK_PARAMETER); + String queryParam = executionRequest.getRequestParamToOne(QUERY_PARAMETER); + if (funcParam == null && blockParam == null && queryParam == null) + { + StringBuilder message = new StringBuilder("Invalid request, please provide one of these request parameters :"); + message.append(FUNCTION_PARAMETER).append(", ").append(BLOCK_PARAMETER).append(", ").append(QUERY_PARAMETER); + message.append("\nRequest parameters received were:\n"); + executionRequest.getRequestParams().forEach((key, values) -> ArrayIterate.appendString(values, message.append(key), "=[", ", ", "]\n")); + throw new IllegalArgumentException(message.toString()); + } + + HttpInformation httpInformation; + if (format != null) + { + if (format == org.finos.legend.engine.ide.api.execution.function.manager.OutputFormat.RAW && funcParam != null) + { + //try to find a content type on the function itself + String functionId = convertFunctionToFunctionId(funcParam); + CoreInstance function = this.getFunction(functionId); + httpInformation = HttpInformation.fromFunction(function, this.functionExecution.getProcessorSupport()); + + //has no content type flagged so use defaults + if (httpInformation.getContentType() == null) + { + httpInformation = new HttpInformation(format.getDefaultContentType().getType(), format.getDefaultContentDisposition()); + } + } + else + { + httpInformation = new HttpInformation(format.getDefaultContentType().getType(), format.getDefaultContentDisposition()); + } + } + else + { + String outFuncParam = executionRequest.getRequestParamToOne(OUTPUT_PROCESSOR_PARAMETER); + if (outFuncParam != null) + { + String functionId = convertFunctionToFunctionId(outFuncParam); + CoreInstance function = this.getFunction(functionId); + httpInformation = HttpInformation.fromFunction(function, this.functionExecution.getProcessorSupport()); + } + else + { + httpInformation = new HttpInformation(org.finos.legend.engine.ide.api.execution.function.manager.OutputFormat.JSON.getDefaultContentType().getType(), null); + } + } + boolean explicitDisableStreaming = false; + if (funcParam != null) + { + CoreInstance functionToExecute = this.getFunction(funcParam); + explicitDisableStreaming = executionRequest.isStreamingDisabled() || disableStreaming(functionToExecute, this.functionExecution.getProcessorSupport()); + } + boolean canStreamOutput = !explicitDisableStreaming && isStreamingOutputFunction(executionRequest, format); + + this.execute(executeFunction, getParameters(executionRequest, this.parser, inputContentType), response, httpInformation, canStreamOutput, format); + } + + private static boolean disableStreaming(CoreInstance functionToExecute, ProcessorSupport processorSupport) + { + ListIterable functionStereotypes = ImportStub.withImportStubByPasses(functionToExecute.getValueForMetaPropertyToMany(M3Properties.stereotypes), processorSupport); + CoreInstance serviceProfile = processorSupport.package_getByUserPath(M3Paths.service); + return functionStereotypes.anySatisfy(each -> each.getValueForMetaPropertyToOne(M3Properties.profile) == serviceProfile && "disableStreaming".equals(each.getValueForMetaPropertyToOne(M3Properties.value).getName())); + } + + private CoreInstance getFunction(String functionIdOrDescriptor) + { + CoreInstance function = this.functionExecution.getRuntime().getFunction(functionIdOrDescriptor); + if (function == null) + { + throw new IllegalArgumentException("Invalid function specification: " + functionIdOrDescriptor); + } + return function; + } + + private ListIterable getParameters(ExecutionRequest executionRequest, FunctionExecutionParser parser, ContentType inputContentType) + { + + CoreInstance nil = parser.parseParameter("[]", false); + String funcParam = executionRequest.getRequestParamToOne(FUNCTION_PARAMETER); + //todo - just look up the func directly, instead of string? + CoreInstance func = funcParam == null ? nil : parser.parseParameter("'" + convertFunctionToFunctionId(funcParam) + "'", false); + + String[] parametersStrings = executionRequest.getRequestParams().get(PARAMETER_PARAMETER); + CoreInstance params = parametersStrings == null ? nil : ContentType.json.equals(inputContentType) ? parser.parseJsonParameter(parametersStrings[0]) : parser.parseParametersAsList(parametersStrings); + + String blockParam = executionRequest.getRequestParamToOne(BLOCK_PARAMETER); + + String queryParam = executionRequest.getRequestParamToOne(QUERY_PARAMETER); + CoreInstance query = queryParam == null ? nil : parser.parseParameter("'" + queryParam + "'", false); + CoreInstance block = blockParam == null ? nil : parser.wrapString(blockParam); + + String processingFuncParam = executionRequest.getRequestParamToOne(PROCESSING_FUNC_PARAMETER); + CoreInstance processingFunc = processingFuncParam == null ? nil : parser.parseParameter("'" + convertFunctionToFunctionId(processingFuncParam) + "'", false); + + String[] processingParametersStrings = executionRequest.getRequestParams().get(PROCESSING_PARAM_PARAMETER); + CoreInstance processingFuncParams = processingParametersStrings == null ? nil : parser.parseParametersAsList(processingParametersStrings); + + String formatParam = executionRequest.getRequestParamToOne(OUTPUT_FORMAT_PARAMETER); + CoreInstance format = formatParam == null ? nil : parser.parseParameter("'" + formatParam + "'", false); + + String outFuncParam = executionRequest.getRequestParamToOne(OUTPUT_PROCESSOR_PARAMETER); + CoreInstance outFunc = outFuncParam == null ? nil : parser.parseParameter("'" + convertFunctionToFunctionId(outFuncParam) + "'", false); + + String[] outputParametersStrings = executionRequest.getRequestParams().get(OUTPUT_PROCESSOR_PARAMETER_PARAMETER); + CoreInstance outputFuncParams = outputParametersStrings == null ? nil : parser.parseParametersAsList(outputParametersStrings); + + return Lists.fixedSize.of(func, params, query, block, format, processingFunc, processingFuncParams, outFunc, outputFuncParams); + } + + private String convertFunctionToFunctionId(String functionName) + { + String functionId; + try + { + functionId = FunctionDescriptor.functionDescriptorToId(functionName); + } + catch (InvalidFunctionDescriptorException exp) + { + functionId = functionName; + } + return functionId; + } + + private void execute(CoreInstance function, ListIterable parameters, HttpResponseWriter response, HttpInformation httpInformation, boolean canStreamOutput, org.finos.legend.engine.ide.api.execution.function.manager.OutputFormat format) + { + try + { + CanStreamState.setCanStream(canStreamOutput); + response.setIsStreamingResponse(canStreamOutput); + this.addContentTypeAndDispositionHeaders(response, httpInformation); + response.setHeader("Trailer", "X-Streaming-Error"); + // Do not open outputStream in try-with-resources + OutputStream outputStream = response.getOutputStream(); + try + { + OutputWriter writer = this.functionExecution.newOutputWriter(); + if (format == org.finos.legend.engine.ide.api.execution.function.manager.OutputFormat.XLSX) + { + writer = new XLSXOutputWriter(writer); + } + + this.functionExecution.start(function, parameters, outputStream, writer); + } + catch (PureExecutionStreamingException ignore) + { + // ignore streaming exception + } + // outputStream must NOT be closed in case of an uncaught exception + // so the call to close must not be in a finally block or implicit in a try-with-resources + outputStream.close(); + } + catch (Throwable t) + { + if (t instanceof RuntimeException) + { + throw (RuntimeException) t; + } + if (t instanceof Error) + { + throw (Error) t; + } + throw new RuntimeException(t); + } + finally + { + //Reset + CanStreamState.resetCanStream(); + } + } + + private void addContentTypeAndDispositionHeaders(HttpResponseWriter response, HttpInformation httpInformation) + { + String resultContentType = httpInformation.getContentType(); + response.setContentType(resultContentType == null ? ContentType.text.getType() : resultContentType); + String resultContentDisposition = httpInformation.getContentDisposition(); + if (resultContentDisposition != null) + { + response.setContentDisposition(resultContentDisposition); + } + } + + private boolean isStreamingOutputFunction(ExecutionRequest executionRequest, org.finos.legend.engine.ide.api.execution.function.manager.OutputFormat format) + { + return false; +// String[] param = executionRequest.getRequestParams().get(ExecutionManager.OUTPUT_PROCESSOR_PARAMETER); +// return !executionRequest.isStreamingDisabled() && (format == OutputFormat.JSON || format == OutputFormat.CSV || format == OutputFormat.XLSX || +// (param != null && param.length == 1 && (PatternExecutor.func.equals(param[0]) || TDS_TO_JSON_OBJECT_FUNCTION.equals(param[0])))); + } + + + private org.finos.legend.engine.ide.api.execution.function.manager.OutputFormat getOutputFormat(Map requestParams) + { + String[] outputFormatStrings = requestParams.get(OUTPUT_FORMAT_PARAMETER); + if (outputFormatStrings == null) + { + return requestParams.containsKey(OUTPUT_PROCESSOR_PARAMETER) ? null : DEFAULT_OUTPUT_FORMAT; + } + if (outputFormatStrings.length != 1) + { + throw new IllegalArgumentException("Parameter '" + OUTPUT_FORMAT_PARAMETER + "' must have at most one value"); + } + String formatString = outputFormatStrings[0].trim().toLowerCase(); + org.finos.legend.engine.ide.api.execution.function.manager.OutputFormat format = OUTPUT_FORMATS.get(formatString); + if (format == null) + { + throw new IllegalArgumentException("Unknown output format \"" + outputFormatStrings[0] + "\" (valid formats: " + OUTPUT_FORMATS.keysView().toSortedList().makeString(", ") + ")"); + } + return format; + } +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/ExecutionRequest.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/ExecutionRequest.java new file mode 100644 index 00000000000..b3b48e72dce --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/ExecutionRequest.java @@ -0,0 +1,61 @@ +// Copyright 2020 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api.execution.function.manager; + +import java.util.Map; + +public class ExecutionRequest +{ + private final Map requestParams; + private boolean disableStreaming = false; + + public ExecutionRequest(Map requestParams) + { + this(requestParams, false); + } + + public ExecutionRequest(Map requestParams, boolean disableStreaming) + { + this.requestParams = requestParams; + this.disableStreaming = disableStreaming; + } + + public Map getRequestParams() + { + return this.requestParams; + } + + public boolean isStreamingDisabled() + { + return this.disableStreaming; + } + + String getRequestParamToOne(String key) + { + String[] vals = this.requestParams.get(key); + if (vals == null) + { + return null; + } + else if (vals.length == 1) + { + return vals[0]; + } + else + { + throw new IllegalArgumentException("Parameter '" + key + "' must have at most one value"); + } + } +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/FunctionExecutionParser.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/FunctionExecutionParser.java new file mode 100644 index 00000000000..ce6bb7aa8ca --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/FunctionExecutionParser.java @@ -0,0 +1,432 @@ +// Copyright 2020 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api.execution.function.manager; + +import org.apache.commons.lang3.StringEscapeUtils; +import org.eclipse.collections.api.list.ListIterable; +import org.eclipse.collections.api.list.MutableList; +import org.eclipse.collections.impl.factory.Lists; +import org.eclipse.collections.impl.list.mutable.FastList; +import org.finos.legend.pure.m3.navigation.*; +import org.finos.legend.pure.m3.navigation.enumeration.Enumeration; +import org.finos.legend.pure.m3.navigation.type.Type; +import org.finos.legend.pure.m4.ModelRepository; +import org.finos.legend.pure.m4.coreinstance.CoreInstance; +import org.finos.legend.pure.runtime.java.extension.external.json.shared.JsonParser; + +class FunctionExecutionParser +{ + private static final char QUOTE = '\''; + private static final char DATE_START = '%'; + private static final char COLLECTION_START = '['; + private static final char COLLECTION_END = ']'; + private static final char COLLECTION_SEPARATOR = ','; + + private final ProcessorSupport processorSupport; + + FunctionExecutionParser(ProcessorSupport processorSupport) + { + this.processorSupport = processorSupport; + } + + CoreInstance parseParametersAsList(String[] parameterStrings) + { + MutableList parameters = FastList.newList(parameterStrings.length); + for (int i = 0; i < parameterStrings.length; i++) + { + parameters.add(parseParameter(parameterStrings[i], true)); + } + + return ValueSpecificationBootstrap.wrapValueSpecification(parameters, true, this.processorSupport); + } + + CoreInstance parseJsonParameter(String parameter) + { + CoreInstance jsonElementParameter = new JsonParser(this.processorSupport).toPureJson(parameter); + return ValueSpecificationBootstrap.wrapValueSpecification(wrapAsList(Lists.fixedSize.of(jsonElementParameter)), true, this.processorSupport); + } + + MutableList parseParameters(Iterable parameterStrings, boolean wrapAsList) + { + MutableList parameters = Lists.mutable.with(); + for (String parameterString : parameterStrings) + { + parameters.add(parseParameter(parameterString, wrapAsList)); + } + return parameters; + } + + CoreInstance parseParameter(String parameterString, boolean wrapAsList) + { + int length = parameterString.length(); + return parseParameter(parameterString, findNextNonWhitespace(parameterString, 0, length), findLastNonWhitespace(parameterString, 0, length) + 1, wrapAsList); + } + + private CoreInstance parseParameter(String paramString, int start, int end, boolean wrapAsList) + { + try + { + if (paramString.charAt(start) == COLLECTION_START) + { + ListIterable coreInstances = parseCollectionParameter(paramString, start, end); + + if (wrapAsList) + { + return wrapAsList(coreInstances); + } + else + { + return ValueSpecificationBootstrap.wrapValueSpecification(coreInstances, true, this.processorSupport); + } + } + else + { + CoreInstance value = parseValue(paramString, start, end); + if (wrapAsList) + { + return wrapAsList(Lists.fixedSize.of(value)); + } + else + { + return ValueSpecificationBootstrap.wrapValueSpecification(value, true, this.processorSupport); + } + } + } + catch (Exception e) + { + throw new IllegalArgumentException("Invalid parameter specification: " + paramString, e); + } + } + + private CoreInstance wrapAsList(ListIterable values) + { + CoreInstance inst = this.processorSupport.newEphemeralAnonymousCoreInstance(M3Paths.List); + Instance.addValueToProperty(inst, M3Properties.values, values, this.processorSupport); + + CoreInstance classifierGenericType = this.processorSupport.newEphemeralAnonymousCoreInstance(M3Paths.GenericType); + Instance.setValueForProperty(classifierGenericType, M3Properties.rawType, this.processorSupport.package_getByUserPath(M3Paths.List), this.processorSupport); + Instance.setValueForProperty(classifierGenericType, M3Properties.typeArguments, Type.wrapGenericType(this.processorSupport.package_getByUserPath(M3Paths.Any), this.processorSupport), this.processorSupport); + + Instance.setValueForProperty(inst, M3Properties.classifierGenericType, classifierGenericType, this.processorSupport); + return inst; + } + + private ListIterable parseCollectionParameter(String string, int start, int end) + { + int index = findNextNonWhitespace(string, start + 1, end); + + // Check for empty collection + if (string.charAt(index) == COLLECTION_END) + { + // Check if there is non-whitespace after the collection end character + if (index + 1 < end) + { + throw new IllegalArgumentException("Invalid collection specification: " + string); + } + return Lists.immutable.with(); + } + + // Parse values in the collection + MutableList values = Lists.mutable.with(); + while ((index != -1) && (index < end)) + { + int valueEnd = findValueEnd(string, index, end); + if (valueEnd == -1) + { + throw new IllegalArgumentException("Error parsing value at index " + index + " of collection specification: " + string); + } + values.add(parseValue(string, index, valueEnd)); + + index = findNextNonWhitespace(string, valueEnd, end); + switch (string.charAt(index)) + { + case COLLECTION_SEPARATOR: + { + index = findNextNonWhitespace(string, index + 1, end); + break; + } + case COLLECTION_END: + { + index = findNextNonWhitespace(string, index + 1, end); + if (index != -1) + { + throw new IllegalArgumentException("Invalid collection specification: " + string.substring(start, end)); + } + return values; + } + default: + { + throw new IllegalArgumentException("Invalid collection specification: " + string.substring(start, end)); + } + } + } + throw new IllegalArgumentException("Invalid collection specification: " + string.substring(start, end)); + } + + private CoreInstance parseValue(String string, int start, int end) + { + try + { + if (isPossiblyDate(string, start, end)) + { + return parsePrimitiveParameter(string.substring(start + 1, end), ModelRepository.DATE_TYPE_NAME); + } + else if (isPossiblyString(string, start, end)) + { + // TODO evaluate whether this is the correct type of unescape + return parsePrimitiveParameter(StringEscapeUtils.unescapeJava(string.substring(start + 1, end - 1)), ModelRepository.STRING_TYPE_NAME); + } + else if (isPossiblyInteger(string, start, end)) + { + return parsePrimitiveParameter(string.substring(start, end), ModelRepository.INTEGER_TYPE_NAME); + } + else if (isPossiblyFloat(string, start, end)) + { + return parsePrimitiveParameter(string.substring(start, end), ModelRepository.FLOAT_TYPE_NAME); + } + else if (isPossiblyBoolean(string, start, end)) + { + return parsePrimitiveParameter(string.substring(start, end), ModelRepository.BOOLEAN_TYPE_NAME); + } + else if (isPossiblyPropertyOrEnumeration(string, start, end)) + { + return parsePropertyOrEnumerationParameter(string, start, end); + } + else if (isPossiblyPackageableElement(string, start, end)) + { + return parsePackageableElementParameter(string, start, end); + } + else + { + throw new RuntimeException("Cannot determine type: " + string.substring(start, end)); + } + } + catch (Exception e) + { + throw new IllegalArgumentException("Invalid value specification: " + string.substring(start, end), e); + } + } + + private CoreInstance parsePrimitiveParameter(String string, String primitiveTypeName) + { + return this.processorSupport.newCoreInstance(string, primitiveTypeName, null); + } + + public CoreInstance wrapString(String string) + { + CoreInstance value = this.processorSupport.newCoreInstance(string, ModelRepository.STRING_TYPE_NAME, null); + return ValueSpecificationBootstrap.wrapValueSpecification(value, true, this.processorSupport); + } + + private CoreInstance parsePropertyOrEnumerationParameter(String string, int start, int end) + { + int splitIndex = indexOf(string, '.', start, end); + if (splitIndex == -1) + { + throw new IllegalArgumentException("Invalid property or enumeration specification: " + string.substring(start, end)); + } + + String ownerString = string.substring(start, splitIndex); + CoreInstance owner = this.processorSupport.package_getByUserPath(ownerString); + if (owner == null) + { + throw new IllegalArgumentException("Unknown element: " + ownerString); + } + + String valueString = string.substring(splitIndex + 1, end); + if (this.processorSupport.instance_instanceOf(owner, M3Paths.Enumeration)) + { + CoreInstance enumValue = Enumeration.findEnum(owner, valueString); + if (enumValue == null) + { + throw new IllegalArgumentException("Unknown value for " + ownerString + ": " + valueString); + } + return enumValue; + } + else + { + CoreInstance property = this.processorSupport.class_findPropertyUsingGeneralization(owner, valueString); + if (property == null) + { + throw new IllegalArgumentException("Unknown property for " + ownerString + ": " + valueString); + } + return property; + } + } + + private CoreInstance parsePackageableElementParameter(String string, int start, int end) + { + CoreInstance instance = this.processorSupport.package_getByUserPath(string.substring(start, end)); + if (instance == null) + { + throw new IllegalArgumentException("Unknown element: " + string.substring(start, end)); + } + return instance; + } + + private boolean isPossiblyBoolean(String string, int start, int end) + { + String lower = string.substring(start, end).toLowerCase(); + return ModelRepository.BOOLEAN_TRUE.equals(lower) || ModelRepository.BOOLEAN_FALSE.equals(lower); + } + + private boolean isPossiblyDate(String string, int start, int end) + { + return string.charAt(start) == DATE_START; + } + + private boolean isPossiblyString(String string, int start, int end) + { + return (string.charAt(start) == QUOTE) && (string.charAt(end - 1) == QUOTE); + } + + private boolean isPossiblyInteger(String string, int start, int end) + { + char first = string.charAt(start); + if ((first == '+') || (first == '-') || Character.isDigit(first)) + { + for (int i = start + 1; i < end; i++) + { + if (!Character.isDigit(string.charAt(i))) + { + return false; + } + } + return true; + } + else + { + return false; + } + } + + private boolean isPossiblyFloat(String string, int start, int end) + { + char first = string.charAt(start); + if (first == '.') + { + return ((start + 1) < end) && Character.isDigit(string.charAt(start + 1)); + } + else if ((first == '+') || (first == '-') || Character.isDigit(first)) + { + return contains(string, '.', start + 1, end); + } + else + { + return false; + } + } + + private boolean isPossiblyPropertyOrEnumeration(String string, int start, int end) + { + return Character.isLetter(string.charAt(start)) && contains(string, '.', start + 1, end); + } + + private boolean isPossiblyPackageableElement(String string, int start, int end) + { + char first = string.charAt(start); + if (first == ':') + { + return ((end - start) == 2) && (string.charAt(start + 1) == ':'); + } + else + { + return Character.isLetter(first) && !contains(string, '.', start + 1, end); + } + } + + // General parsing helpers + + private static int findNextNonWhitespace(String string, int start, int end) + { + for (int index = start; index < end; index++) + { + if (!Character.isWhitespace(string.charAt(index))) + { + return index; + } + } + return -1; + } + + private static int findLastNonWhitespace(String string, int start, int end) + { + for (int index = end - 1; index >= start; index--) + { + if (!Character.isWhitespace(string.charAt(index))) + { + return index; + } + } + return -1; + } + + private static int findValueEnd(String string, int start, int end) + { + if (string.charAt(start) == QUOTE) + { + int index = start + 1; + while (index < end) + { + switch (string.charAt(index)) + { + case QUOTE: + { + return index + 1; + } + case '\\': + { + index += 2; + break; + } + default: + { + index += 1; + } + } + } + return -1; + } + else + { + for (int index = start; index < end; index++) + { + char character = string.charAt(index); + if ((character == COLLECTION_SEPARATOR) || (character == COLLECTION_END) || Character.isWhitespace(character)) + { + return index; + } + } + return -1; + } + } + + private static boolean contains(String string, char character, int start, int end) + { + return indexOf(string, character, start, end) != -1; + } + + private static int indexOf(String string, char character, int start, int end) + { + for (int index = start; index < end; index++) + { + if (character == string.charAt(index)) + { + return index; + } + } + return -1; + } +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/HttpInformation.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/HttpInformation.java new file mode 100644 index 00000000000..eb1adf00f43 --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/HttpInformation.java @@ -0,0 +1,68 @@ +// Copyright 2020 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api.execution.function.manager; + +import org.eclipse.collections.api.block.predicate.Predicate; +import org.finos.legend.pure.m3.navigation.Instance; +import org.finos.legend.pure.m3.navigation.M3Properties; +import org.finos.legend.pure.m3.navigation.ProcessorSupport; +import org.finos.legend.pure.m4.coreinstance.CoreInstance; + +public class HttpInformation +{ + private final String contentType; + private final String contentDisposition; + + public HttpInformation(String contentType, String contentDisposition) + { + this.contentType = contentType; + this.contentDisposition = contentDisposition; + } + + public String getContentType() + { + return this.contentType; + } + + public String getContentDisposition() + { + return this.contentDisposition; + } + + public static HttpInformation fromFunction(CoreInstance function, final ProcessorSupport processorSupport) + { + + CoreInstance contentTypeObj = function.getValueForMetaPropertyToMany(M3Properties.taggedValues).detect(new Predicate() + { + @Override + public boolean accept(CoreInstance each) + { + return "contentType".equals(Instance.getValueForMetaPropertyToOneResolved(each, M3Properties.tag, processorSupport).getName()); + } + }); + CoreInstance contentDisposition = function.getValueForMetaPropertyToMany(M3Properties.taggedValues).detect(new Predicate() + { + @Override + public boolean accept(CoreInstance each) + { + return "contentDisposition".equals(Instance.getValueForMetaPropertyToOneResolved(each, M3Properties.tag, processorSupport).getName()); + } + }); + return new HttpInformation( + contentTypeObj == null ? null : contentTypeObj.getValueForMetaPropertyToOne(M3Properties.value).getName(), + contentDisposition == null ? null : contentDisposition.getValueForMetaPropertyToOne(M3Properties.value).getName() + ); + } +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/HttpResponseWriter.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/HttpResponseWriter.java new file mode 100644 index 00000000000..8f644dca192 --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/HttpResponseWriter.java @@ -0,0 +1,32 @@ +// Copyright 2020 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api.execution.function.manager; + +import java.io.IOException; +import java.io.OutputStream; + +public interface HttpResponseWriter +{ + OutputStream getOutputStream() throws IOException; + + void setContentType(String type); + + void setContentDisposition(String disposition); + + void setHeader(String name, String value); + + void setIsStreamingResponse(boolean streamingResponse); + +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/HttpServletResponseWriter.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/HttpServletResponseWriter.java new file mode 100644 index 00000000000..2b87fdf31e9 --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/HttpServletResponseWriter.java @@ -0,0 +1,60 @@ +// Copyright 2020 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api.execution.function.manager; + +import org.finos.legend.engine.ide.api.execution.function.manager.HttpResponseWriter; + +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.io.OutputStream; + +public class HttpServletResponseWriter implements HttpResponseWriter +{ + private final HttpServletResponse response; + + public HttpServletResponseWriter(HttpServletResponse response) + { + this.response = response; + } + + @Override + public OutputStream getOutputStream() throws IOException + { + return this.response.getOutputStream(); + } + + @Override + public void setContentType(String type) + { + this.response.setContentType(type); + } + + @Override + public void setContentDisposition(String disposition) + { + this.response.setHeader("Content-Disposition", disposition); + } + + @Override + public void setHeader(String name, String value) + { + this.response.setHeader(name, value); + } + + @Override + public void setIsStreamingResponse(boolean streamingResponse) + { + } +} diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/OutputFormat.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/OutputFormat.java new file mode 100644 index 00000000000..b508aae3372 --- /dev/null +++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/function/manager/OutputFormat.java @@ -0,0 +1,50 @@ +// Copyright 2020 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.ide.api.execution.function.manager; + +import org.finos.legend.engine.ide.api.execution.function.manager.ContentType; + +enum OutputFormat +{ + RAW(ContentType.text), // Raw output - no formatting whatsoever + PRE(ContentType.text), // Pre-formatted output - surrounded with
 tags
+    JSON(ContentType.json), // JSON output - formatted into JSON
+    CSV(ContentType.csv, "attachment;filename=result.csv"), //CSV
+    XLSX(ContentType.xlsx, "attachment;filename=result.xlsx"); //XLSX
+
+    private final ContentType defaultContentType;
+    private final String contentDisposition;
+
+    OutputFormat(ContentType type)
+    {
+        this(type,null);
+    }
+
+    OutputFormat(ContentType defaultContentType, String contentDisposition)
+    {
+        this.defaultContentType = defaultContentType;
+        this.contentDisposition = contentDisposition;
+    }
+
+    public ContentType getDefaultContentType()
+    {
+        return this.defaultContentType;
+    }
+
+    public String getDefaultContentDisposition()
+    {
+        return this.contentDisposition;
+    }
+}
\ No newline at end of file
diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/go/ExecuteGo.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/go/ExecuteGo.java
new file mode 100644
index 00000000000..a88b21ab5f3
--- /dev/null
+++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/go/ExecuteGo.java
@@ -0,0 +1,49 @@
+// Copyright 2020 Goldman Sachs
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.finos.legend.engine.ide.api.execution.go;
+
+import io.swagger.annotations.Api;
+import org.finos.legend.engine.ide.api.execution.go.GoRun;
+import org.finos.legend.engine.ide.session.PureSession;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.ws.rs.POST;
+import javax.ws.rs.Path;
+import javax.ws.rs.core.Context;
+import javax.ws.rs.core.Response;
+import javax.ws.rs.core.StreamingOutput;
+
+@Api(tags = "Execute")
+@Path("/")
+public class ExecuteGo
+{
+    private PureSession pureSession;
+
+    public ExecuteGo(PureSession pureSession)
+    {
+        this.pureSession = pureSession;
+    }
+
+    @POST
+    @Path("executeGo")
+    public Response executeGo(@Context HttpServletRequest request, @Context HttpServletResponse response)
+    {
+        return Response.ok((StreamingOutput) outputStream ->
+        {
+            this.pureSession.saveFilesAndExecute(request, response, outputStream, new GoRun());
+        }).build();
+    }
+}
diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/go/GoRun.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/go/GoRun.java
new file mode 100644
index 00000000000..9b96fe7f8b8
--- /dev/null
+++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/go/GoRun.java
@@ -0,0 +1,111 @@
+// Copyright 2020 Goldman Sachs
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.finos.legend.engine.ide.api.execution.go;
+
+import org.eclipse.collections.api.factory.Maps;
+import org.eclipse.collections.api.map.MutableMap;
+import org.eclipse.collections.impl.list.mutable.FastList;
+import org.finos.legend.engine.ide.helpers.response.ExceptionTranslation;
+import org.finos.legend.engine.ide.helpers.response.IDEExceptionResponse;
+import org.finos.legend.engine.ide.helpers.response.IDEResponse;
+import org.finos.legend.engine.ide.session.PureSession;
+import org.finos.legend.engine.ide.session.SimpleFunction;
+import org.finos.legend.pure.m3.execution.Console;
+import org.finos.legend.pure.m3.execution.FunctionExecution;
+import org.finos.legend.pure.m3.serialization.runtime.PureRuntime;
+import org.finos.legend.pure.m4.coreinstance.CoreInstance;
+import org.json.simple.JSONArray;
+import org.json.simple.JSONObject;
+import org.json.simple.JSONValue;
+
+import javax.servlet.http.HttpServletResponse;
+import java.io.ByteArrayOutputStream;
+import java.io.OutputStream;
+import java.io.PrintStream;
+
+public class GoRun implements SimpleFunction
+{
+    @Override
+    public void run(PureSession pureSession, JSONObject extraParams, JSONArray modifiedFiles, HttpServletResponse response, OutputStream outputStream) throws Exception
+    {
+        PureRuntime pureRuntime = pureSession.getPureRuntime();
+        pureRuntime.compile();
+
+        CoreInstance function = pureRuntime.getFunction("go():Any[*]");
+        if (null == function)
+        {
+            throw new RuntimeException("Please write a go function. Example: function go():Any[*]{print('ok');}");
+        }
+
+        Console console = null;
+        try
+        {
+            outputStream.write("{\"text\":\"".getBytes());
+            FunctionExecution functionExecution = pureSession.getFunctionExecution();
+            console = functionExecution.getConsole();
+            console.setPrintStream(new JSONPrintStream(outputStream));
+            console.setConsole(true);
+            functionExecution.start(function, FastList.newList());
+            outputStream.write("\"".getBytes());
+        }
+        catch (Exception ex)
+        {
+            IDEResponse exceptionResponse = ExceptionTranslation.buildExceptionMessage(pureSession, ex, new ByteArrayOutputStream());
+            outputStream.write(JSONValue.escape("\n" + exceptionResponse.getText()).getBytes());
+            outputStream.write("\"".getBytes());
+
+            if (exceptionResponse instanceof IDEExceptionResponse)
+            {
+                IDEExceptionResponse ideExceptionResponse = (IDEExceptionResponse)exceptionResponse;
+                MutableMap additionalValues = Maps.mutable.of();
+                ideExceptionResponse.addJsonKeyValues(additionalValues);
+                for (String key : additionalValues.keysView())
+                {
+                    outputStream.write((",\"" + key + "\":" + JSONValue.toJSONString(additionalValues.get(key))).getBytes());
+                }
+            }
+        }
+        finally
+        {
+            if (null != console)
+            {
+                ByteArrayOutputStream stream = new ByteArrayOutputStream();
+                PrintStream ps = new PrintStream(stream);
+                console.setPrintStream(ps);
+                console.setConsole(false);
+            }
+        }
+
+        if (null != modifiedFiles)
+        {
+            outputStream.write((",\"modifiedFiles\":" + modifiedFiles.toJSONString()).getBytes());
+        }
+        outputStream.write((",\"compiler\":\"" + JSONValue.escape("pureSession.getCompilerLogs()") + "\", \"cached\":" + pureRuntime.getCache().getCacheState().isCached() + "}").getBytes());
+    }
+
+    private static class JSONPrintStream extends PrintStream
+    {
+        JSONPrintStream(OutputStream out)
+        {
+            super(out, true);
+        }
+
+        @Override
+        public void print(String s)
+        {
+            super.print(JSONValue.escape(s));
+        }
+    }
+}
diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/test/CallBack.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/test/CallBack.java
new file mode 100644
index 00000000000..e367d3e7304
--- /dev/null
+++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/test/CallBack.java
@@ -0,0 +1,67 @@
+// Copyright 2020 Goldman Sachs
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.finos.legend.engine.ide.api.execution.test;
+
+import org.eclipse.collections.api.list.ListIterable;
+import org.eclipse.collections.api.list.MutableList;
+import org.eclipse.collections.api.set.MutableSet;
+import org.eclipse.collections.api.tuple.primitive.BooleanObjectPair;
+import org.eclipse.collections.impl.factory.Lists;
+import org.eclipse.collections.impl.factory.Sets;
+import org.eclipse.collections.impl.tuple.primitive.PrimitiveTuples;
+import org.finos.legend.pure.m3.execution.test.TestCallBack;
+import org.finos.legend.pure.m3.execution.test.TestStatus;
+import org.finos.legend.pure.m4.coreinstance.CoreInstance;
+
+public class CallBack implements TestCallBack
+{
+    private final MutableSet tests = Sets.mutable.with();
+    private final MutableList containers = Lists.mutable.with();
+
+    @Override
+    public void foundTests(Iterable tests)
+    {
+        this.tests.addAllIterable(tests);
+    }
+
+    @Override
+    public void executedTest(CoreInstance test, String testParameterizationId, String consoleOutput, TestStatus status)
+    {
+        synchronized (this.containers)
+        {
+            this.tests.remove(test);
+            this.containers.add(new org.finos.legend.engine.ide.api.execution.test.TestResult(test, testParameterizationId, consoleOutput, status));
+        }
+    }
+
+    public BooleanObjectPair> pullNewResults()
+    {
+        synchronized (this.containers)
+        {
+            ListIterable newContainers = Lists.mutable.withAll(this.containers);
+            this.containers.clear();
+            return PrimitiveTuples.pair(this.tests.isEmpty(), newContainers);
+        }
+    }
+
+    public void clear()
+    {
+        synchronized (this.containers)
+        {
+            this.tests.clear();
+            this.containers.clear();
+        }
+    }
+}
diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/test/ExecuteTests.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/test/ExecuteTests.java
new file mode 100644
index 00000000000..11700cdc2cc
--- /dev/null
+++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/test/ExecuteTests.java
@@ -0,0 +1,174 @@
+// Copyright 2020 Goldman Sachs
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.finos.legend.engine.ide.api.execution.test;
+
+import io.swagger.annotations.Api;
+import org.eclipse.collections.api.list.ListIterable;
+import org.eclipse.collections.api.tuple.primitive.BooleanObjectPair;
+import org.finos.legend.engine.ide.api.execution.test.CallBack;
+import org.finos.legend.engine.ide.api.execution.test.TestResult;
+import org.finos.legend.engine.ide.api.execution.test.TestRun;
+import org.finos.legend.engine.ide.session.PureSession;
+import org.finos.legend.pure.m3.execution.test.TestExceptionStatus;
+import org.finos.legend.pure.m3.execution.test.TestRunner;
+import org.finos.legend.pure.m3.execution.test.TestStatus;
+import org.finos.legend.pure.m3.navigation.PackageableElement.PackageableElement;
+import org.json.simple.JSONValue;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.ws.rs.GET;
+import javax.ws.rs.POST;
+import javax.ws.rs.Path;
+import javax.ws.rs.core.Context;
+import javax.ws.rs.core.Response;
+import javax.ws.rs.core.StreamingOutput;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.util.Iterator;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
+
+@Api(tags = "Execute Tests")
+@Path("/")
+public class ExecuteTests
+{
+    private PureSession pureSession;
+    private final ExecutorService executorService = Executors.newCachedThreadPool();
+
+    public ExecuteTests(PureSession pureSession)
+    {
+        this.pureSession = pureSession;
+    }
+
+    @POST
+    @Path("executeTests")
+    public Response executeTests(@Context HttpServletRequest request, @Context HttpServletResponse response)
+    {
+        return Response.ok((StreamingOutput) outputStream ->
+        {
+            this.pureSession.saveFilesAndExecute(request, response, outputStream, new TestRun(this.executorService));
+        }).build();
+    }
+
+    @GET
+    @Path("testRunnerCancel")
+    public Response testRunnerCancel(@Context HttpServletRequest request, @Context HttpServletResponse response)
+    {
+        return Response.ok((StreamingOutput) outputStream ->
+        {
+            int testRunnerId = getTestRunnerId(request);
+            TestRunner runner = pureSession.removeTestRunner(testRunnerId);
+            if (runner == null)
+            {
+                outputStream.write("{\"text\":\"Unknown test runner: ".getBytes());
+                outputStream.write(Integer.toString(testRunnerId).getBytes());
+                outputStream.write("\"}".getBytes());
+                outputStream.close();
+            }
+            else
+            {
+                runner.stop();
+                outputStream.write("{\"text\":\"Test run ".getBytes());
+                outputStream.write(Integer.toString(testRunnerId).getBytes());
+                outputStream.write(" canceled\"}".getBytes());
+                outputStream.close();
+            }
+        }).build();
+    }
+
+    @GET
+    @Path("testRunnerCheck")
+    public Response testRunnerCheck(@Context HttpServletRequest request, @Context HttpServletResponse response)
+    {
+        return Response.ok((StreamingOutput) outputStream ->
+        {
+            int testRunnerId = getTestRunnerId(request);
+            CallBack callBack = pureSession.getTestCallBack(testRunnerId);
+            if (callBack == null)
+            {
+                outputStream.write("{\"error\":true,\"text\":\"Unknown test runner: ".getBytes());
+                outputStream.write(Integer.toString(testRunnerId).getBytes());
+                outputStream.write("\"}".getBytes());
+                outputStream.close();
+            }
+            else
+            {
+                BooleanObjectPair> pullResult = callBack.pullNewResults();
+                boolean finished = pullResult.getOne();
+                ListIterable testResults = pullResult.getTwo();
+
+                if (finished)
+                {
+                    pureSession.removeTestRunner(testRunnerId);
+                }
+
+                outputStream.write("{\"finished\":".getBytes());
+                outputStream.write(Boolean.toString(finished).getBytes());
+                outputStream.write(",\"tests\":[".getBytes());
+                if (testResults.notEmpty())
+                {
+                    Iterator iterator = testResults.iterator();
+                    writeTestResult(outputStream, iterator.next(), pureSession);
+                    while (iterator.hasNext())
+                    {
+                        outputStream.write(',');
+                        writeTestResult(outputStream, iterator.next(), pureSession);
+                    }
+                }
+                outputStream.write("]}".getBytes());
+                outputStream.close();
+            }
+        }).build();
+    }
+
+    private void writeTestResult(OutputStream outStream, TestResult result, PureSession session) throws IOException
+    {
+        outStream.write("{\"test\":[".getBytes());
+        String parameterizationSuffix = result.getTestParameterizationId() == null ? "" : "[" + result.getTestParameterizationId() + "]";
+        outStream.write(("\"" + PackageableElement.getUserPathForPackageableElement(result.getTestFunction(), "\",\"") + parameterizationSuffix + "\"").getBytes());
+        outStream.write("],\"console\":\"".getBytes());
+        outStream.write(JSONValue.escape(result.getConsoleOutput()).getBytes());
+        outStream.write("\",\"status\":\"".getBytes());
+        outStream.write(result.getStatus().toString().getBytes());
+        outStream.write('"');
+        if (!TestStatus.SUCCESS.equals(result.getStatus()))
+        {
+            outStream.write(",\"error\":".getBytes());
+            outStream.write(PureSession.exceptionToJson(session, ((TestExceptionStatus) result.getStatus()).getException(), null).getBytes());
+        }
+        outStream.write('}');
+    }
+
+
+    private static final String TEST_RUNNER_ID_PARAM = "testRunnerId";
+
+    private int getTestRunnerId(HttpServletRequest request)
+    {
+        String idString = request.getParameter(TEST_RUNNER_ID_PARAM);
+        if (idString == null)
+        {
+            throw new RuntimeException("No test runner id");
+        }
+        try
+        {
+            return Integer.parseInt(idString);
+        }
+        catch (NumberFormatException e)
+        {
+            throw new RuntimeException("Invalid test runner id: " + idString);
+        }
+    }
+}
\ No newline at end of file
diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/test/TestNode.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/test/TestNode.java
new file mode 100644
index 00000000000..91b3d6cba3b
--- /dev/null
+++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/test/TestNode.java
@@ -0,0 +1,100 @@
+// Copyright 2020 Goldman Sachs
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.finos.legend.engine.ide.api.execution.test;
+
+import org.eclipse.collections.api.factory.Lists;
+import org.eclipse.collections.api.list.MutableList;
+import org.finos.legend.engine.ide.helpers.response.ExceptionTranslation;
+import org.finos.legend.pure.m3.navigation.*;
+import org.finos.legend.pure.m3.navigation.PackageableElement.PackageableElement;
+import org.finos.legend.pure.m3.tools.tree.TreeNode;
+import org.finos.legend.pure.m4.coreinstance.CoreInstance;
+import org.finos.legend.pure.m4.coreinstance.SourceInformation;
+
+import java.util.Objects;
+
+public class TestNode implements TreeNode
+{
+    private final CoreInstance coreInstance;
+    private final String testParameterizationId;
+    private final MutableList children = Lists.mutable.empty();
+
+    public TestNode(CoreInstance coreInstance, String testParameterizationId)
+    {
+        this.coreInstance = coreInstance;
+        this.testParameterizationId = testParameterizationId;
+    }
+
+    public TestNode(CoreInstance coreInstance)
+    {
+        this(coreInstance, null);
+    }
+
+    public TestNode getOrCreateChild(CoreInstance instance, String testParameterizationId)
+    {
+        for (TestNode child : this.children)
+        {
+            if (instance == child.coreInstance && Objects.equals(testParameterizationId, child.testParameterizationId))
+            {
+                return child;
+            }
+        }
+        TestNode newChild = new TestNode(instance, testParameterizationId);
+        this.children.add(newChild);
+        return newChild;
+    }
+
+    @Override
+    public MutableList getChildren()
+    {
+        return this.children;
+    }
+
+    @Override
+    public TestNode getChildAt(int index)
+    {
+        return this.children.get(index);
+    }
+
+    @Override
+    public boolean isLeaf()
+    {
+        return this.children.isEmpty();
+    }
+
+    @Override
+    public int indexOf(TestNode node)
+    {
+        return this.children.indexOf(node);
+    }
+
+    @Override
+    public String toString()
+    {
+        return this.coreInstance.getName();
+    }
+
+    public String toJson(final int testId)
+    {
+        CoreInstance coreInstance = this.coreInstance;
+        ProcessorSupport processorSupport = new M3ProcessorSupport(coreInstance.getRepository());
+        SourceInformation si = coreInstance.getSourceInformation() != null ? coreInstance.getSourceInformation() : ExceptionTranslation.DUMMY_SOURCE_INFORMATION;
+        String parameterizationSuffix = this.testParameterizationId == null ? "" : "[" + this.testParameterizationId + "]";
+        return "{\"text\":\"" + (Instance.instanceOf(coreInstance, M3Paths.Function, processorSupport) ? Instance.getValueForMetaPropertyToOneResolved(coreInstance, M3Properties.functionName, processorSupport).getName() : Instance.getValueForMetaPropertyToOneResolved(coreInstance, M3Properties.name, processorSupport).getName()) + parameterizationSuffix + "\"" +
+                (this.children.isEmpty() ? ", \"type\":\"notRan\"" : "") +
+                ",\"li_attr\" : {\"file\":\"" + si.getSourceId() + "\",\"line\":\"" + si.getLine() + "\",\"column\":\"" + si.getColumn() + "\",\"parentId\":\"" + PackageableElement.getUserPathForPackageableElement(Instance.getValueForMetaPropertyToOneResolved(coreInstance, M3Properties._package, new M3ProcessorSupport(coreInstance.getRepository())), "_") + "\", \"id\":\"test" + testId + "_" + PackageableElement.getUserPathForPackageableElement(coreInstance, "_") + parameterizationSuffix + "\"}" +
+                (this.getChildren().isEmpty() ? "" : ",\"children\":[" + this.getChildren().collect(testNode -> testNode.toJson(testId)).makeString() + "]") + "}";
+    }
+}
diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/test/TestResult.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/test/TestResult.java
new file mode 100644
index 00000000000..ccd4c9bf60b
--- /dev/null
+++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/test/TestResult.java
@@ -0,0 +1,54 @@
+// Copyright 2020 Goldman Sachs
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.finos.legend.engine.ide.api.execution.test;
+
+import org.finos.legend.pure.m3.execution.test.TestStatus;
+import org.finos.legend.pure.m4.coreinstance.CoreInstance;
+
+public class TestResult
+{
+    private CoreInstance testFunction;
+    private String testParameterizationId;
+    private String consoleOutput;
+    private TestStatus status;
+
+    TestResult(CoreInstance testFunction, String testParameterizationId, String consoleOutput, TestStatus status)
+    {
+        this.testFunction = testFunction;
+        this.testParameterizationId = testParameterizationId;
+        this.consoleOutput = consoleOutput;
+        this.status = status;
+    }
+
+    public CoreInstance getTestFunction()
+    {
+        return this.testFunction;
+    }
+
+    public String getConsoleOutput()
+    {
+        return this.consoleOutput;
+    }
+
+    public TestStatus getStatus()
+    {
+        return this.status;
+    }
+
+    public String getTestParameterizationId()
+    {
+        return this.testParameterizationId;
+    }
+}
diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/test/TestRun.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/test/TestRun.java
new file mode 100644
index 00000000000..0c548a601d2
--- /dev/null
+++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/execution/test/TestRun.java
@@ -0,0 +1,214 @@
+// Copyright 2020 Goldman Sachs
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.finos.legend.engine.ide.api.execution.test;
+
+import org.eclipse.collections.api.RichIterable;
+import org.eclipse.collections.api.block.function.Function;
+import org.eclipse.collections.api.block.predicate.Predicate;
+import org.eclipse.collections.api.factory.Sets;
+import org.eclipse.collections.api.list.ListIterable;
+import org.eclipse.collections.api.list.MutableList;
+import org.eclipse.collections.api.set.MutableSet;
+import org.eclipse.collections.api.set.SetIterable;
+import org.eclipse.collections.api.tuple.Pair;
+import org.eclipse.collections.impl.block.factory.Predicates;
+import org.eclipse.collections.impl.utility.ArrayIterate;
+import org.eclipse.collections.impl.utility.StringIterate;
+import org.finos.legend.engine.ide.api.execution.test.TestNode;
+import org.finos.legend.engine.ide.session.PureSession;
+import org.finos.legend.engine.ide.session.SimpleFunction;
+import org.finos.legend.pure.m3.execution.FunctionExecution;
+import org.finos.legend.pure.m3.execution.test.TestCollection;
+import org.finos.legend.pure.m3.execution.test.TestRunner;
+import org.finos.legend.pure.m3.navigation.Instance;
+import org.finos.legend.pure.m3.navigation.M3Paths;
+import org.finos.legend.pure.m3.navigation.M3Properties;
+import org.finos.legend.pure.m3.navigation.PackageableElement.PackageableElement;
+import org.finos.legend.pure.m3.navigation.ProcessorSupport;
+import org.finos.legend.pure.m3.serialization.filesystem.usercodestorage.CodeStorageNode;
+import org.finos.legend.pure.m3.serialization.filesystem.usercodestorage.composite.CompositeCodeStorage;
+import org.finos.legend.pure.m3.serialization.filesystem.usercodestorage.vcs.MutableVersionControlledCodeStorage;
+import org.finos.legend.pure.m3.serialization.runtime.PureRuntime;
+import org.finos.legend.pure.m3.tools.ListHelper;
+import org.finos.legend.pure.m4.coreinstance.CoreInstance;
+import org.json.simple.JSONArray;
+import org.json.simple.JSONObject;
+
+import javax.servlet.http.HttpServletResponse;
+import java.io.OutputStream;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.atomic.AtomicInteger;
+
+public class TestRun implements SimpleFunction
+{
+    private ExecutorService executorService;
+    private final AtomicInteger nextTestId = new AtomicInteger(1);
+
+    public TestRun(ExecutorService executorService)
+    {
+        this.executorService = executorService;
+    }
+
+    @Override
+    public void run(PureSession pureSession, JSONObject extraParams, JSONArray modifiedFiles, HttpServletResponse response, OutputStream outputStream) throws Exception
+    {
+        PureRuntime runtime = pureSession.getPureRuntime();
+        runtime.compile();
+
+        final int newId = this.nextTestId.getAndIncrement();
+
+        String path = getPath(extraParams);
+        String[] filterPaths = getFilterPaths(extraParams);
+        boolean relevantTestsOnly = getRelevantTestsOnly(extraParams);
+        Predicate filterPredicate = getFilterPredicate(runtime, relevantTestsOnly);
+
+        TestCollection collection = getTestCollection(pureSession, path, filterPaths, filterPredicate);
+        TestRunner runner = pureSession.newTestRunner(newId, collection);
+
+        this.executorService.execute(runner);
+
+        org.finos.legend.engine.ide.api.execution.test.TestNode root = new org.finos.legend.engine.ide.api.execution.test.TestNode(runtime.getCoreInstance("::"));
+
+        MutableList> tests = runner.getTestCollection().getAllTestFunctionsWithParameterizations(false);
+        tests.sortThisBy(t -> PackageableElement.getUserPathForPackageableElement(t.getOne()));
+
+        for (Pair test : tests)
+        {
+            ListIterable nodePath = PackageableElement.getUserObjectPathForPackageableElement(test.getOne());
+            org.finos.legend.engine.ide.api.execution.test.TestNode node = root;
+            for (CoreInstance element : ListHelper.tail(nodePath))
+            {
+                node = node.getOrCreateChild(element, element == nodePath.getLast() ? test.getTwo() : null);
+            }
+        }
+
+        outputStream.write("{\"runnerId\":".getBytes());
+        outputStream.write(Integer.toString(newId).getBytes());
+        outputStream.write((",\"path\":\"" + path + "\"").getBytes());
+        outputStream.write((",\"filterPaths\":" + (filterPaths.length == 0 ? "[]" : ArrayIterate.makeString(filterPaths, "[\"", "\",\"", "\"]"))).getBytes());
+        outputStream.write((",\"relevantTestsOnly\":" + relevantTestsOnly).getBytes());
+        outputStream.write(",\"count\":".getBytes());
+        outputStream.write(Integer.toString(tests.size()).getBytes());
+        outputStream.write(",\"tests\":".getBytes());
+        outputStream.write(root.getChildren().asLazy().collect(new Function()
+        {
+            @Override
+            public String valueOf(TestNode testNode)
+            {
+                return testNode.toJson(newId);
+            }
+        }).makeString("[", ",", "]").getBytes());
+        outputStream.write((",\"cached\":" + runtime.getCache().getCacheState().isCached()).getBytes());
+        outputStream.write("}".getBytes());
+        outputStream.close();
+    }
+
+    private String getPath(JSONObject extraParams)
+    {
+        String path = (String)extraParams.get("path");
+        return StringIterate.isEmpty(path) ? "::" : path;
+    }
+
+    private String[] getFilterPaths(JSONObject extraParams)
+    {
+        JSONArray filterPaths = (JSONArray)extraParams.get("filterPaths");
+        if (filterPaths != null)
+        {
+            String[] paths = new String[filterPaths.size()];
+            filterPaths.toArray(paths);
+            return paths;
+        }
+        return new String[0];
+    }
+
+    private boolean getRelevantTestsOnly(JSONObject extraParams)
+    {
+        Boolean relevantTestsOnly = (Boolean)extraParams.get("relevantTestsOnly");
+        return (relevantTestsOnly == null) ? false : relevantTestsOnly;
+    }
+
+    private Predicate getFilterPredicate(PureRuntime runtime, boolean relevantTestsOnly)
+    {
+        if (!relevantTestsOnly)
+        {
+            return null;
+        }
+
+        final MutableVersionControlledCodeStorage codeStorage = (MutableVersionControlledCodeStorage)runtime.getCodeStorage();
+        RichIterable modifiedUserFiles = codeStorage.getModifiedUserFiles();
+        if (modifiedUserFiles.isEmpty())
+        {
+            return Predicates.alwaysFalse();
+        }
+
+        MutableSet repos = Sets.mutable.empty();
+        for (CodeStorageNode node : modifiedUserFiles)
+        {
+            repos.add(codeStorage.getRepositoryForPath(node.getPath()).getName());
+        }
+        if (repos.isEmpty())
+        {
+            return Predicates.alwaysFalse();
+        }
+
+        final SetIterable reposPlusDependents = CompositeCodeStorage.getRepositoriesDependendingOnByName(codeStorage.getAllRepositories(), repos);
+        return new Predicate()
+        {
+            @Override
+            public boolean accept(CoreInstance test)
+            {
+                return reposPlusDependents.contains(codeStorage.getRepositoryForPath(test.getSourceInformation().getSourceId()).getName());
+            }
+        };
+    }
+
+    private TestCollection getTestCollection(PureSession session, String path, String[] filterPaths, Predicate filterPredicate)
+    {
+        PureRuntime runtime = session.getPureRuntime();
+        FunctionExecution functionExecution = session.getFunctionExecution();
+        CoreInstance coreInstance = runtime.getCoreInstance(path);
+        ProcessorSupport processorSupport = runtime.getProcessorSupport();
+
+        CoreInstance pkg;
+        Predicate singleTestFilter;
+        Predicate pathFilter = Predicates.alwaysTrue();
+
+        if (Instance.instanceOf(coreInstance, M3Paths.ConcreteFunctionDefinition, processorSupport))
+        {
+            pkg = Instance.getValueForMetaPropertyToOneResolved(coreInstance, M3Properties._package, processorSupport);
+            singleTestFilter = Predicates.sameAs(coreInstance);
+        }
+        else
+        {
+            pkg = coreInstance;
+            singleTestFilter = Predicates.alwaysTrue();
+        }
+
+        if (filterPaths.length > 0)
+        {
+            pathFilter = Predicates.alwaysFalse();
+            for (String filterPath : filterPaths)
+            {
+                pathFilter = Predicates.or(pathFilter, Predicates.attributeEqual(e -> e.getValueForMetaPropertyToOne(M3Properties._package), runtime.getCoreInstance(filterPath)));
+            }
+        }
+
+        Predicate funcExecPredicate = TestCollection.getFilterPredicateForExecutionPlatformClass(session.getFunctionExecution().getClass(), processorSupport);
+        Predicate predicate = (filterPredicate == null) ? funcExecPredicate : Predicates.and(funcExecPredicate, filterPredicate);
+        Predicate alloyTextModeExclusionPredicate = TestCollection.getFilterPredicateForAlloyTextModeExclusion(processorSupport);
+        predicate = Predicates.and(predicate, singleTestFilter, pathFilter, alloyTextModeExclusionPredicate);
+        return TestCollection.collectTests(pkg, processorSupport, fn -> TestCollection.collectTestsFromPure(fn, functionExecution), predicate);
+    }
+}
diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/find/FindInSources.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/find/FindInSources.java
new file mode 100644
index 00000000000..476a0e7b913
--- /dev/null
+++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/find/FindInSources.java
@@ -0,0 +1,177 @@
+// Copyright 2020 Goldman Sachs
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.finos.legend.engine.ide.api.find;
+
+import io.swagger.annotations.Api;
+import org.eclipse.collections.api.RichIterable;
+import org.eclipse.collections.api.multimap.Multimap;
+import org.finos.legend.engine.ide.session.PureSession;
+import org.finos.legend.pure.m3.serialization.runtime.SourceCoordinates;
+import org.json.simple.JSONValue;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+import javax.ws.rs.core.Context;
+import javax.ws.rs.core.Response;
+import javax.ws.rs.core.StreamingOutput;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.util.regex.Pattern;
+
+@Api(tags = "Find")
+@Path("/")
+public class FindInSources
+{
+    private static final String STRING_PARAM = "string";
+    private static final String REGEX_PARAM = "regex";
+    private static final String SOURCE_REGEX_PARAM = "sourceRegex";
+    private static final String CASE_SENSITIVE_PARAM = "caseSensitive";
+    private static final String MAX_RESULTS_PARAM = "limit";
+
+    private final PureSession session;
+
+    public FindInSources(PureSession session)
+    {
+        this.session = session;
+    }
+
+    @GET
+    @Path("findInSources")
+    public Response findInSources(@Context HttpServletRequest request, @Context HttpServletResponse response) throws IOException
+    {
+        return Response.ok((StreamingOutput) outputStream ->
+        {
+            String string = request.getParameter(STRING_PARAM);
+            boolean regex = Boolean.valueOf(String.valueOf(request.getParameter(REGEX_PARAM)));
+            String sourceRegex = request.getParameter(SOURCE_REGEX_PARAM);
+            String caseSensitiveString = request.getParameter(CASE_SENSITIVE_PARAM);
+            int limit = request.getParameter(MAX_RESULTS_PARAM) != null ? Integer.valueOf(request.getParameter(MAX_RESULTS_PARAM)) : Integer.MAX_VALUE;
+            boolean caseSensitive = (caseSensitiveString == null) ? true : Boolean.valueOf(caseSensitiveString);
+
+            if (string == null)
+            {
+                throw new RuntimeException("Must specify search parameters: " + STRING_PARAM);
+            }
+
+            RichIterable results;
+            try
+            {
+                Pattern sourcePattern = getSourcePattern(sourceRegex);
+                if (regex)
+                {
+                    Pattern pattern = Pattern.compile(string, caseSensitive ? 0 : Pattern.CASE_INSENSITIVE);
+                    results = session.getPureRuntime().getSourceRegistry().find(pattern, sourcePattern);
+                }
+                else
+                {
+                    results = session.getPureRuntime().getSourceRegistry().find(string, caseSensitive, sourcePattern);
+                }
+
+                response.setContentType("application/json");
+                writeResultsJSON(outputStream, results, limit);
+            }
+            catch (IOException | RuntimeException | Error e)
+            {
+                throw e;
+            }
+        }).build();
+    }
+
+    private Pattern getSourcePattern(String sourceRegex)
+    {
+        return (sourceRegex == null) ? null : Pattern.compile(sourceRegex);
+    }
+
+    private int writeResultsJSON(OutputStream stream, RichIterable results, int limit) throws IOException
+    {
+        stream.write("[".getBytes());
+        int count = 0;
+        if (results.notEmpty())
+        {
+            Multimap indexBySource = results.groupBy(SourceCoordinates.SOURCE_ID);
+            boolean first = true;
+            for (String sourceId : indexBySource.keysView().toSortedList())
+            {
+                if (first)
+                {
+                    first = false;
+                    stream.write("{\"sourceId\":\"".getBytes());
+                }
+                else
+                {
+                    stream.write(",{\"sourceId\":\"".getBytes());
+                }
+                stream.write(JSONValue.escape(sourceId).getBytes());
+                stream.write("\",\"coordinates\":[".getBytes());
+                boolean firstSC = true;
+                for (SourceCoordinates sourceCoordinates : indexBySource.get(sourceId))
+                {
+                    if (firstSC)
+                    {
+                        firstSC = false;
+                    }
+                    else
+                    {
+                        stream.write(",".getBytes());
+                    }
+                    writeSourceCoordinatesJSON(stream, sourceCoordinates);
+                    count++;
+                    if (count > limit)
+                    {
+                        break;
+                    }
+                }
+                stream.write("]}".getBytes());
+                if (count > limit)
+                {
+                    break;
+                }
+            }
+        }
+        stream.write("]".getBytes());
+        return count > limit ? limit : count;
+    }
+
+    private void writeSourceCoordinatesJSON(OutputStream stream, SourceCoordinates sourceCoordinates) throws IOException
+    {
+        stream.write("{\"startLine\":".getBytes());
+        stream.write(Integer.toString(sourceCoordinates.getStartLine()).getBytes());
+        stream.write(",\"startColumn\":".getBytes());
+        stream.write(Integer.toString(sourceCoordinates.getStartColumn()).getBytes());
+        stream.write(",\"endLine\":".getBytes());
+        stream.write(Integer.toString(sourceCoordinates.getEndLine()).getBytes());
+        stream.write(",\"endColumn\":".getBytes());
+        stream.write(Integer.toString(sourceCoordinates.getEndColumn()).getBytes());
+        if (sourceCoordinates.getPreview() != null)
+        {
+            stream.write(",\"preview\":".getBytes());
+            writePreviewJSON(stream, sourceCoordinates.getPreview());
+        }
+        stream.write("}".getBytes());
+    }
+
+    private void writePreviewJSON(OutputStream stream, SourceCoordinates.Preview preview) throws IOException
+    {
+        stream.write("{\"before\":\"".getBytes());
+        stream.write(JSONValue.escape(preview.getBeforeText()).getBytes());
+        stream.write("\",\"found\":\"".getBytes());
+        stream.write(JSONValue.escape(preview.getFoundText()).getBytes());
+        stream.write("\",\"after\":\"".getBytes());
+        stream.write(JSONValue.escape(preview.getAfterText()).getBytes());
+        stream.write("\"}".getBytes());
+    }
+}
diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/find/FindPureFile.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/find/FindPureFile.java
new file mode 100644
index 00000000000..3b4b749c843
--- /dev/null
+++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/find/FindPureFile.java
@@ -0,0 +1,87 @@
+// Copyright 2020 Goldman Sachs
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.finos.legend.engine.ide.api.find;
+
+import io.swagger.annotations.Api;
+import org.eclipse.collections.api.RichIterable;
+import org.eclipse.collections.api.block.procedure.Procedure;
+import org.finos.legend.engine.ide.session.PureSession;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+import javax.ws.rs.core.Context;
+import javax.ws.rs.core.Response;
+import javax.ws.rs.core.StreamingOutput;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.util.regex.Pattern;
+
+@Api(tags = "Find")
+@Path("/")
+public class FindPureFile
+{
+    private final PureSession session;
+
+    public FindPureFile(PureSession session)
+    {
+        this.session = session;
+    }
+
+    @GET
+    @Path("findPureFiles")
+    public Response findPureFiles(@Context HttpServletRequest request, @Context HttpServletResponse response) throws IOException
+    {
+        return Response.ok((StreamingOutput) outputStream ->
+        {
+            String fileName = request.getParameter("file");
+            boolean isRegex = Boolean.parseBoolean(String.valueOf(request.getParameter("regex")));
+
+            try
+            {
+                Pattern filePattern = Pattern.compile(fileName);
+                RichIterable fileMatches = isRegex ? session.getPureRuntime().getSourceRegistry().findSourceIds(filePattern)
+                        : session.getPureRuntime().getSourceRegistry().findSourceIds(fileName);
+                response.setContentType("application/json");
+                final StringBuilder sb = new StringBuilder("[");
+                fileMatches.toSortedList().forEach(new Procedure()
+                {
+                    @Override
+                    public void value(String name)
+                    {
+                        sb.append("\"").append(name).append("\"").append(",");
+                    }
+                });
+                if (!fileMatches.isEmpty())
+                {
+                    sb.deleteCharAt(sb.length() - 1);
+                }
+                sb.append("]");
+                outputStream.write(sb.toString().getBytes());
+            }
+            catch (Exception e)
+            {
+                this.writeErrorResponse(outputStream, fileName);
+            }
+
+        }).build();
+    }
+
+    private void writeErrorResponse(OutputStream outStream, String file) throws IOException
+    {
+        outStream.write(("{\"error\":true,\"text\":\"Cannot find source file: " + file + "\"}").getBytes());
+    }
+}
diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/find/FindTextPreview.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/find/FindTextPreview.java
new file mode 100644
index 00000000000..996ec4461a3
--- /dev/null
+++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/find/FindTextPreview.java
@@ -0,0 +1,115 @@
+// Copyright 2022 Goldman Sachs
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.finos.legend.engine.ide.api.find;
+
+import io.swagger.annotations.Api;
+import org.eclipse.collections.api.RichIterable;
+import org.finos.legend.engine.ide.session.PureSession;
+import org.finos.legend.pure.m3.serialization.runtime.SourceCoordinates;
+import org.json.simple.JSONValue;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.ws.rs.POST;
+import javax.ws.rs.Path;
+import javax.ws.rs.core.Context;
+import javax.ws.rs.core.Response;
+import javax.ws.rs.core.StreamingOutput;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.util.List;
+
+@Api(tags = "Find")
+@Path("/")
+public class FindTextPreview
+{
+    private final PureSession session;
+
+    public FindTextPreview(PureSession session)
+    {
+        this.session = session;
+    }
+
+    @POST
+    @Path("getTextSearchPreview")
+    public Response getTextPreview(@Context HttpServletRequest request, List coordinates, @Context HttpServletResponse response) throws IOException
+    {
+        return Response.ok((StreamingOutput) outputStream ->
+        {
+            try
+            {
+                response.setContentType("application/json");
+                writeResultsJSON(outputStream, session.getPureRuntime().getSourceRegistry().getPreviewTextWithCoordinates(coordinates));
+            }
+            catch (IOException | RuntimeException | Error e)
+            {
+                throw e;
+            }
+        }).build();
+    }
+
+    private void writeResultsJSON(OutputStream stream, RichIterable results) throws IOException
+    {
+        stream.write("[".getBytes());
+        if (results.notEmpty())
+        {
+            boolean firstSC = true;
+            for (SourceCoordinates sourceCoordinates : results)
+            {
+                if (firstSC)
+                {
+                    firstSC = false;
+                }
+                else
+                {
+                    stream.write(",".getBytes());
+                }
+                writeSourceCoordinatesJSON(stream, sourceCoordinates);
+            }
+        }
+        stream.write("]".getBytes());
+    }
+
+    private void writeSourceCoordinatesJSON(OutputStream stream, SourceCoordinates sourceCoordinates) throws IOException
+    {
+        stream.write("{\"sourceId\":\"".getBytes());
+        stream.write(sourceCoordinates.getSourceId().getBytes());
+        stream.write("\",\"startLine\":".getBytes());
+        stream.write(Integer.toString(sourceCoordinates.getStartLine()).getBytes());
+        stream.write(",\"startColumn\":".getBytes());
+        stream.write(Integer.toString(sourceCoordinates.getStartColumn()).getBytes());
+        stream.write(",\"endLine\":".getBytes());
+        stream.write(Integer.toString(sourceCoordinates.getEndLine()).getBytes());
+        stream.write(",\"endColumn\":".getBytes());
+        stream.write(Integer.toString(sourceCoordinates.getEndColumn()).getBytes());
+        if (sourceCoordinates.getPreview() != null)
+        {
+            stream.write(",\"preview\":".getBytes());
+            writePreviewJSON(stream, sourceCoordinates.getPreview());
+        }
+        stream.write("}".getBytes());
+    }
+
+    private void writePreviewJSON(OutputStream stream, SourceCoordinates.Preview preview) throws IOException
+    {
+        stream.write("{\"before\":\"".getBytes());
+        stream.write(JSONValue.escape(preview.getBeforeText()).getBytes());
+        stream.write("\",\"found\":\"".getBytes());
+        stream.write(JSONValue.escape(preview.getFoundText()).getBytes());
+        stream.write("\",\"after\":\"".getBytes());
+        stream.write(JSONValue.escape(preview.getAfterText()).getBytes());
+        stream.write("\"}".getBytes());
+    }
+}
diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/source/UpdateSource.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/source/UpdateSource.java
new file mode 100644
index 00000000000..7704c3aec74
--- /dev/null
+++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/api/source/UpdateSource.java
@@ -0,0 +1,233 @@
+// Copyright 2022 Goldman Sachs
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.finos.legend.engine.ide.api.source;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import io.swagger.annotations.Api;
+import org.eclipse.collections.api.RichIterable;
+import org.eclipse.collections.api.block.function.Function;
+import org.eclipse.collections.api.map.MutableMap;
+import org.eclipse.collections.api.multimap.Multimap;
+import org.eclipse.collections.api.set.MutableSet;
+import org.eclipse.collections.impl.factory.Maps;
+import org.eclipse.collections.impl.factory.Sets;
+import org.eclipse.collections.impl.utility.ListIterate;
+import org.finos.legend.engine.ide.session.PureSession;
+import org.finos.legend.pure.m3.serialization.runtime.Source;
+import org.json.simple.JSONValue;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.ws.rs.PUT;
+import javax.ws.rs.Path;
+import javax.ws.rs.core.Context;
+import javax.ws.rs.core.Response;
+import javax.ws.rs.core.StreamingOutput;
+import java.io.IOException;
+import java.util.List;
+import java.util.regex.Pattern;
+
+@Api(tags = "Source")
+@Path("/")
+public class UpdateSource
+{
+    private static final Pattern LINE_SPLITTER = Pattern.compile("^", Pattern.MULTILINE);
+
+    private PureSession session;
+
+    public UpdateSource(PureSession session)
+    {
+        this.session = session;
+    }
+
+    @PUT
+    @Path("updateSource")
+    public Response updateSource(@Context HttpServletRequest request, List updateInputs, @Context HttpServletResponse response) throws IOException
+    {
+        return Response.ok((StreamingOutput) outStream ->
+        {
+            response.setContentType("application/json");
+            Multimap indexByPath = ListIterate.groupBy(updateInputs, UpdateSourceInput.PATH);
+
+            for (String path : indexByPath.keysView().toSortedList())
+            {
+                RichIterable inputs = indexByPath.get(path);
+                Source source = this.session.getPureRuntime().getSourceRegistry().getSource(path);
+                MutableMap messageToAddByLines = Maps.mutable.empty();
+                MutableMap messageToRemoveByLines = Maps.mutable.empty();
+                MutableSet linesToAdd = Sets.mutable.empty();
+                MutableSet linesToRemove = Sets.mutable.empty();
+
+                // index source updates by line number
+                for (UpdateSourceInput input : inputs)
+                {
+                    if (input.isAdd())
+                    {
+                        // add
+                        if (linesToAdd.add(input.getLine())) // check for duplication
+                        {
+                            messageToAddByLines.put(input.getLine(), input);
+                        }
+                        else
+                        {
+                            throw new IllegalArgumentException("Invalid file update request - Please combine the same line change");
+                        }
+                    }
+                    else
+                    {
+                        // remove
+                        if (linesToRemove.add(input.getLine()))  // check for duplication
+                        {
+                            messageToRemoveByLines.put(input.getLine(), input);
+                        }
+                        {
+                            throw new IllegalArgumentException("Invalid file update request - Please combine the same line change");
+                        }
+                    }
+                }
+
+                String file = source.getContent();
+                String[] lines = LINE_SPLITTER.split(file);
+                StringBuilder buffer = new StringBuilder();
+
+                for (int i = 0; i < lines.length; i++)
+                {
+                    int lineNumber = i + 1;
+                    // perform add
+                    if (linesToAdd.contains(lineNumber))
+                    {
+                        linesToAdd.remove(lineNumber);
+                        buffer.append(messageToAddByLines.get(lineNumber).getMessage()).append("\r\n");
+                    }
+
+                    // perform remove
+                    if (linesToRemove.contains(lineNumber))
+                    {
+                        linesToRemove.remove(lineNumber);
+                    }
+
+                    // append original line
+                    else
+                    {
+                        buffer.append(lines[i]);
+                    }
+                }
+
+                while (linesToAdd.notEmpty())
+                {
+                    int line = linesToAdd.min();
+                    linesToAdd.remove(line);
+                    if (line < 1)
+                    {
+                        throw new IllegalArgumentException("Invalid file update request - Line number must be greater than 0");
+                    }
+                    else if (line >= lines.length)
+                    {
+                        buffer.append("\r\n");
+                        buffer.append(messageToAddByLines.get(line).getMessage());
+                        buffer.append("\r\n");
+                    }
+                    else
+                    {
+                        throw new IllegalArgumentException("Invalid file update request - Line number out of range");
+                    }
+                }
+
+                if (linesToRemove.notEmpty())
+                {
+                    throw new IllegalArgumentException("Invalid file update request - Line number out of range");
+                }
+
+                session.getPureRuntime().modify(path, buffer.toString());
+            }
+
+            outStream.write("{".getBytes());
+            outStream.write(("\"text\":\"").getBytes());
+            outStream.write(JSONValue.escape("Successfully updated source(s)!").getBytes());
+            outStream.write(JSONValue.escape("\r\nPlease press F9 to compile the code again").getBytes());
+            outStream.write("\",".getBytes());
+            outStream.write(("\"modifiedFiles\":[\"").getBytes());
+            outStream.write(JSONValue.escape(indexByPath.valuesView().collect(UpdateSourceInput::getPath).makeString(",")).getBytes());
+            outStream.write(("\"]").getBytes());
+            outStream.write("}".getBytes());
+            outStream.close();
+        }).build();
+    }
+
+    public static class UpdateSourceInput
+    {
+        public static final Function PATH = new Function()
+        {
+            @Override
+            public String valueOf(UpdateSourceInput input)
+            {
+                return input.getPath();
+            }
+        };
+
+        private final String path;
+        private final int line;
+        private final int column;
+        private final String message;
+        private final boolean add;
+
+        UpdateSourceInput(String path, int line, int column, String message, boolean add)
+        {
+            this.path = path;
+            this.line = line;
+            this.column = column;
+            this.message = message;
+            this.add = add;
+        }
+
+        @JsonCreator
+        public static UpdateSourceInput newInput(
+                @JsonProperty("path") String path,
+                @JsonProperty("line") int line,
+                @JsonProperty("column") int column,
+                @JsonProperty("message") String message,
+                @JsonProperty("add") boolean add
+        )
+        {
+            return new UpdateSourceInput(path, line, column, message, add);
+        }
+
+        public String getPath()
+        {
+            return path;
+        }
+
+        public int getLine()
+        {
+            return line;
+        }
+
+        public int getColumn()
+        {
+            return column;
+        }
+
+        public String getMessage()
+        {
+            return message;
+        }
+
+        public boolean isAdd()
+        {
+            return add;
+        }
+    }
+}
\ No newline at end of file
diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/JSONResponseTools.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/JSONResponseTools.java
new file mode 100644
index 00000000000..0e1edf9e01c
--- /dev/null
+++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/JSONResponseTools.java
@@ -0,0 +1,110 @@
+// Copyright 2020 Goldman Sachs
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.finos.legend.engine.ide.helpers;
+
+import org.eclipse.collections.api.map.MutableMap;
+import org.eclipse.collections.impl.map.mutable.UnifiedMap;
+import org.finos.legend.pure.m4.exception.PureException;
+import org.json.simple.JSONValue;
+
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.io.PrintWriter;
+import java.io.StringWriter;
+import java.net.InetAddress;
+import java.net.UnknownHostException;
+
+public class JSONResponseTools
+{
+    public static final String JSON_CONTENT_TYPE = "application/json";
+
+    private JSONResponseTools()
+    {
+        // Utility class
+    }
+
+    private static void sendJSONResponse(HttpServletResponse response, int status, Object json) throws IOException
+    {
+        response.setStatus(status);
+        response.setContentType(JSON_CONTENT_TYPE);
+        // We call getOutputStream instead of getWriter, as calling getWriter after calling getOutputStream can
+        // cause problems and getOutputStream may have already been called
+        try (PrintWriter writer = new PrintWriter(response.getOutputStream()))
+        {
+            JSONValue.writeJSONString(json, writer);
+        }
+    }
+
+    public static void sendJSONErrorResponse(HttpServletResponse response, int status, Throwable t, boolean includeStackTrace) throws IOException
+    {
+        sendJSONErrorResponse(response, status, t, includeStackTrace, System.currentTimeMillis(), null);
+    }
+
+    private static void sendJSONErrorResponse(HttpServletResponse response, int status, Throwable t, boolean includeStackTrace, long timestamp, String requestId) throws IOException
+    {
+        String message = t.getMessage();
+        String stackTrace = null;
+        if (t instanceof PureException && ((PureException)t).hasPureStackTrace())
+        {
+            stackTrace = ((PureException)t).getPureStackTrace();
+        }
+        else if (includeStackTrace)
+        {
+            StringWriter writer = new StringWriter(512);
+            t.printStackTrace(new PrintWriter(writer));
+            stackTrace = writer.toString();
+        }
+        sendJSONErrorResponse(response, status, message, stackTrace, timestamp, requestId);
+    }
+
+    private static void sendJSONErrorResponse(HttpServletResponse response, int status, String message, String stackTrace, long timestamp, String requestId) throws IOException
+    {
+        MutableMap json = buildJSONErrorMessage(message, stackTrace, timestamp, requestId);
+        sendJSONResponse(response, status, json);
+    }
+
+    private static MutableMap buildJSONErrorMessage(String message, String stackTrace, long timestamp, String requestId)
+    {
+        MutableMap json = UnifiedMap.newMap(5);
+        json.put("error", true);
+        if (message != null)
+        {
+            json.put("message", message);
+        }
+        if (stackTrace != null)
+        {
+            json.put("stackTrace", stackTrace);
+        }
+        json.put("host", getLocalHostName());
+        json.put("timestamp", String.format("%tY-% candidates = exception.getImportCandidates(session.codeStorage.getAllRepositories());
+                MutableMap> sourceInfoAndTypeByPath = Maps.mutable.ofInitialCapacity(candidates.size());
+
+                for (CoreInstance candidate : candidates)
+                {
+                    SourceInformation sourceInfo = candidate.getSourceInformation();
+                    // TODO think about what we should do with candidates with no source info
+                    if ((sourceInfo != null) && (runtime != null))
+                    {
+                        sourceInfoAndTypeByPath.put(PackageableElement.getUserPathForPackageableElement(candidate), Tuples.pair(sourceInfo, candidate.getClassifier().getName()));
+                    }
+                }
+
+                SourceInformation sourceToBeModified = exception.getImportGroup().getSourceInformation();
+                if (sourceToBeModified == null)
+                {
+                    //avoid null pointer exception
+                    sourceToBeModified = DUMMY_SOURCE_INFORMATION;
+                }
+
+                MutableSet pathsInSameSource = Sets.mutable.empty();
+                MutableSet pathsNotInSameSource = Sets.mutable.empty();
+                sourceInfoAndTypeByPath.forEachKeyValue((s, sourceInformationStringPair) ->
+                {
+                    if (sourceInformationStringPair.getOne().getSourceId().equals(exception.getImportGroup().getSourceInformation().getSourceId()))
+                    {
+                        pathsInSameSource.add(s);
+                    }
+                    else
+                    {
+                        pathsNotInSameSource.add(s);
+                    }
+                });
+
+                org.finos.legend.engine.ide.helpers.response.IDEPureUnresolvedIdentifierExceptionResponse unresolvedResponse = new IDEPureUnresolvedIdentifierExceptionResponse();
+                response = unresolvedResponse;
+                unresolvedResponse.candidateName = exception.getIdOrPath();
+                MutableList candidatesOutput = Lists.mutable.of();
+                unresolvedResponse.candidates = candidatesOutput;
+
+                for (String path : pathsInSameSource.toSortedList().withAll(pathsNotInSameSource.toSortedList()))
+                {
+                    Pair pair = sourceInfoAndTypeByPath.get(path);
+                    SourceInformation sourceInfo = pair.getOne();
+                    String type = pair.getTwo();
+                    String id = exception.getIdOrPath();
+                    int index = id.lastIndexOf("::");
+                    if (index != -1)
+                    {
+                        //id contains "::"
+                        id = id.substring(index + 2);
+                    }
+                    index = path.lastIndexOf(id);
+                    if (index == -1)
+                    {
+                        throw new RuntimeException("Unable to find identifier: " + exception.getIdOrPath());
+                    }
+                    String importToAdd = "import " + path.substring(0, index) + "*;";
+
+                    int lineToBeModified = sourceToBeModified.getStartLine();
+                    int columnToBeModified = sourceToBeModified.getStartColumn();
+                    if (columnToBeModified == 0)
+                    {
+                        //special handling for importGroup without any imports, need to add import to the next line
+                        lineToBeModified++;
+                    }
+
+                    org.finos.legend.engine.ide.helpers.response.Candidate candidate = new org.finos.legend.engine.ide.helpers.response.Candidate();
+                    candidate.sourceID = sourceInfo.getSourceId();
+                    candidate.line = sourceInfo.getLine();
+                    candidate.column = sourceInfo.getColumn();
+                    candidate.foundName = path;
+                    candidate.fileToBeModified = sourceToBeModified.getSourceId();
+                    candidate.lineToBeModified = lineToBeModified;
+                    candidate.columnToBeModified = columnToBeModified;
+                    candidate.add = true;
+                    candidate.messageToBeModified = importToAdd;
+                    candidate.type = type;
+                    candidatesOutput.add(candidate);
+                }
+            }
+        }
+        else if (e instanceof PureUnmatchedFunctionException)
+        {
+            final PureUnmatchedFunctionException exception = (PureUnmatchedFunctionException) e;
+            if (0 == exception.getImportCandidatesWithPackageNotImported().size() + exception.getImportCandidatesWithPackageImported().size())
+            {
+                response = new IDEExceptionResponse();
+            }
+            else
+            {
+                SourceInformation sourceToBeModified = exception.getImportGroup().getSourceInformation();
+                if (sourceToBeModified == null)
+                {
+                    // avoid null pointer exception
+                    sourceToBeModified = DUMMY_SOURCE_INFORMATION;
+                }
+
+                org.finos.legend.engine.ide.helpers.response.IDEPureUnmatchedFunctionExceptionResponse ideUnmatchedResponse = new IDEPureUnmatchedFunctionExceptionResponse();
+                response = ideUnmatchedResponse;
+                ideUnmatchedResponse.candidateName = exception.getFunctionName();
+
+                MutableList candidatesOutputWithPackageNotImported = Lists.mutable.of();
+                ideUnmatchedResponse.candidates = candidatesOutputWithPackageNotImported;
+                MutableList candidatesOutputWithPackageImported = Lists.mutable.of();
+                ideUnmatchedResponse.candidatesWithPackageImported = candidatesOutputWithPackageImported;
+                getCandidatesOutput(session, runtime, exception, sourceToBeModified, candidatesOutputWithPackageNotImported, exception.getImportCandidatesWithPackageNotImported());
+                getCandidatesOutput(session, runtime, exception, sourceToBeModified, candidatesOutputWithPackageImported, exception.getImportCandidatesWithPackageImported());
+            }
+        }
+        else if ((e instanceof PureParserException || e instanceof PureCompilationException))
+        {
+            org.finos.legend.engine.ide.helpers.response.IDEParserOrCompilerException parserOrCompilerException = new IDEParserOrCompilerException();
+            parserOrCompilerException.exceptionType = e.getExceptionName();
+            response = parserOrCompilerException;
+        }
+        else
+        {
+            response = new IDEExceptionResponse();
+        }
+
+        if (pureResponse != null)
+        {
+            String pureResponseStr;
+            try
+            {
+                pureResponseStr = pureResponse.toString(StandardCharsets.UTF_8.name()) + "\n";
+            }
+            catch (UnsupportedEncodingException ex)
+            {
+                // this should never happen, but just in case ...
+                pureResponseStr = pureResponse + "\n";
+            }
+            response.appendText(pureResponseStr);
+        }
+
+        if (e.hasPureStackTrace())
+        {
+            response.appendText(original.getMessage() + "\n" + e.getPureStackTrace("    "));
+        }
+        else
+        {
+            response.appendText(original.getMessage());
+        }
+
+        SourceInformation sourceInformation = original.getSourceInformation();
+        if ((sourceInformation != null) && (runtime != null) && (runtime.getSourceById(sourceInformation.getSourceId()) != null))
+        {
+            response.RO = runtime.isSourceImmutable(sourceInformation.getSourceId());
+            response.source = sourceInformation.getSourceId();
+            response.line = sourceInformation.getLine();
+            response.column = sourceInformation.getColumn();
+        }
+
+        if (session != null)
+        {
+            // response.compiler = session.getCompilerLogs();
+        }
+
+        return response;
+    }
+
+    private static void getCandidatesOutput(PureSession session, PureRuntime runtime, final PureUnmatchedFunctionException exception, SourceInformation sourceToBeModified, MutableList candidatesOutput, ListIterable candidates)
+    {
+        MutableMap sourceInfoAndTypeByPath = Maps.mutable.ofInitialCapacity(candidates.size());
+        for (CoreInstance candidate : candidates)
+        {
+            SourceInformation sourceInfo = candidate.getSourceInformation();
+            if ((sourceInfo != null) && (runtime != null))
+            {
+                StringBuilder functionNameStringBuilder = new StringBuilder();
+                try
+                {
+                    org.finos.legend.pure.m3.navigation.function.Function.print(functionNameStringBuilder, candidate, runtime.getProcessorSupport());
+                }
+                catch (Exception functionPrintException)
+                {
+                    // Log error if possible, then ignore the function and continue
+                    if (session != null)
+                    {
+                        //session.log("Error printing: " + candidate, functionPrintException);
+                    }
+                    continue;
+                }
+                sourceInfoAndTypeByPath.put(functionNameStringBuilder.toString(), sourceInfo);
+            }
+        }
+
+        MutableSet pathsInSameSource = Sets.mutable.empty();
+        MutableSet pathsNotInSameSource = Sets.mutable.empty();
+        sourceInfoAndTypeByPath.forEachKeyValue((s, sourceInfo) ->
+        {
+            if (sourceInfo.getSourceId().equals(exception.getImportGroup().getSourceInformation().getSourceId()))
+            {
+                pathsInSameSource.add(s);
+            }
+            else
+            {
+                pathsNotInSameSource.add(s);
+            }
+        });
+
+        pathsInSameSource.toSortedList().withAll(pathsNotInSameSource.toSortedList()).forEach(path ->
+        {
+            SourceInformation sourceInfo = sourceInfoAndTypeByPath.get(path);
+            String functionName = exception.getFunctionName();
+            int index = functionName.lastIndexOf("::");
+            if (index != -1)
+            {
+                //id contains "::"
+                functionName = functionName.substring(index + 2);
+            }
+            index = path.lastIndexOf(functionName);
+            if (index != -1)
+            {
+                String importToAdd = "import " + path.substring(0, index) + "*;";
+
+                int lineToBeModified = sourceToBeModified.getStartLine();
+                int columnToBeModified = sourceToBeModified.getStartColumn();
+                if (0 == columnToBeModified)
+                {
+                    //special handling for importGroup without any imports, need to add import to the next line
+                    lineToBeModified++;
+                }
+
+                org.finos.legend.engine.ide.helpers.response.Candidate candidate = new Candidate();
+                candidate.sourceID = sourceInfo.getSourceId();
+                candidate.line = sourceInfo.getLine();
+                candidate.column = sourceInfo.getColumn();
+                candidate.foundName = path;
+                candidate.fileToBeModified = sourceToBeModified.getSourceId();
+                candidate.lineToBeModified = lineToBeModified;
+                candidate.columnToBeModified = columnToBeModified;
+                candidate.add = true;
+                candidate.messageToBeModified = importToAdd;
+                candidatesOutput.add(candidate);
+            }
+        });
+    }
+}
diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/IDEExceptionResponse.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/IDEExceptionResponse.java
new file mode 100644
index 00000000000..caab0b966df
--- /dev/null
+++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/IDEExceptionResponse.java
@@ -0,0 +1,37 @@
+// Copyright 2020 Goldman Sachs
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.finos.legend.engine.ide.helpers.response;
+
+import org.eclipse.collections.api.map.MutableMap;
+import org.finos.legend.engine.ide.helpers.response.IDEResponse;
+
+public class IDEExceptionResponse extends IDEResponse
+{
+    private final boolean error = true;
+    public boolean RO;
+    public String source;
+    public Integer line;
+    public Integer column;
+
+    @Override
+    public void addJsonKeyValues(MutableMap jsonMap)
+    {
+        jsonMap.put("error", this.error);
+        jsonMap.put("RO", this.RO);
+        jsonMap.put("source", this.source);
+        jsonMap.put("line", this.line);
+        jsonMap.put("column", this.column);
+    }
+}
diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/IDEParserOrCompilerException.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/IDEParserOrCompilerException.java
new file mode 100644
index 00000000000..bce9412557c
--- /dev/null
+++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/IDEParserOrCompilerException.java
@@ -0,0 +1,31 @@
+// Copyright 2020 Goldman Sachs
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.finos.legend.engine.ide.helpers.response;
+
+import org.eclipse.collections.api.map.MutableMap;
+import org.finos.legend.engine.ide.helpers.response.IDEExceptionResponse;
+
+public class IDEParserOrCompilerException extends IDEExceptionResponse
+{
+    public String exceptionType;
+
+    @Override
+    public void addJsonKeyValues(MutableMap jsonMap)
+    {
+        super.addJsonKeyValues(jsonMap);
+        jsonMap.put("exceptionType", this.exceptionType);
+    }
+}
+
diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/IDEPureUnmatchedFunctionExceptionResponse.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/IDEPureUnmatchedFunctionExceptionResponse.java
new file mode 100644
index 00000000000..46c995669c9
--- /dev/null
+++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/IDEPureUnmatchedFunctionExceptionResponse.java
@@ -0,0 +1,59 @@
+// Copyright 2020 Goldman Sachs
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.finos.legend.engine.ide.helpers.response;
+
+import org.eclipse.collections.api.list.ListIterable;
+import org.eclipse.collections.api.map.MutableMap;
+import org.finos.legend.engine.ide.helpers.response.Candidate;
+import org.finos.legend.engine.ide.helpers.response.IDEPureUnresolvedIdentifierExceptionResponse;
+import org.json.simple.JSONArray;
+import org.json.simple.JSONObject;
+
+public class IDEPureUnmatchedFunctionExceptionResponse extends IDEPureUnresolvedIdentifierExceptionResponse
+{
+    private final boolean PureUnmatchedFunctionException = true;
+    ListIterable candidatesWithPackageImported;
+
+    @Override
+    public void addJsonKeyValues(MutableMap jsonMap)
+    {
+        super.addJsonKeyValues(jsonMap);
+        jsonMap.put("PureUnmatchedFunctionException", this.PureUnmatchedFunctionException);
+    }
+
+    @Override
+    public String toJSONString()
+    {
+        JSONObject object = new JSONObject(this.buildJsonKeyMaps());
+        object.put("candidateName", this.candidateName);
+
+        JSONArray jsonArrayWithPackageNotImported = new JSONArray();
+        object.put("candidatesWithPackageNotImported", jsonArrayWithPackageNotImported);
+        for (Candidate candidate : this.candidates)
+        {
+            jsonArrayWithPackageNotImported.add(candidate.toJSONObject());
+        }
+
+        JSONArray jsonArrayWithPackageImported = new JSONArray();
+        object.put("candidatesWithPackageImported", jsonArrayWithPackageImported);
+        for (Candidate candidate : this.candidatesWithPackageImported)
+        {
+            jsonArrayWithPackageImported.add(candidate.toJSONObject());
+        }
+
+        return object.toJSONString();
+    }
+}
+
diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/IDEPureUnresolvedIdentifierExceptionResponse.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/IDEPureUnresolvedIdentifierExceptionResponse.java
new file mode 100644
index 00000000000..ac95c6202b1
--- /dev/null
+++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/IDEPureUnresolvedIdentifierExceptionResponse.java
@@ -0,0 +1,50 @@
+// Copyright 2020 Goldman Sachs
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.finos.legend.engine.ide.helpers.response;
+
+import org.eclipse.collections.api.list.ListIterable;
+import org.eclipse.collections.api.map.MutableMap;
+import org.finos.legend.engine.ide.helpers.response.Candidate;
+import org.finos.legend.engine.ide.helpers.response.IDEExceptionResponse;
+import org.json.simple.JSONArray;
+import org.json.simple.JSONObject;
+
+public class IDEPureUnresolvedIdentifierExceptionResponse extends IDEExceptionResponse
+{
+    String candidateName;
+    ListIterable candidates;
+
+    @Override
+    public void addJsonKeyValues(MutableMap jsonMap)
+    {
+        super.addJsonKeyValues(jsonMap);
+        jsonMap.put("candidateName", this.candidateName);
+    }
+
+    @Override
+    public String toJSONString()
+    {
+        JSONObject object = new JSONObject(this.buildJsonKeyMaps());
+        object.put("candidateName", this.candidateName);
+        JSONArray jsonArray = new JSONArray();
+        object.put("candidates", jsonArray);
+
+        for (Candidate candidate : this.candidates)
+        {
+            jsonArray.add(candidate.toJSONObject());
+        }
+        return object.toJSONString();
+    }
+}
diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/IDEResponse.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/IDEResponse.java
new file mode 100644
index 00000000000..0dca6d30f57
--- /dev/null
+++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/helpers/response/IDEResponse.java
@@ -0,0 +1,55 @@
+// Copyright 2020 Goldman Sachs
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.finos.legend.engine.ide.helpers.response;
+
+import org.eclipse.collections.api.factory.Maps;
+import org.eclipse.collections.api.map.MutableMap;
+import org.json.simple.JSONAware;
+import org.json.simple.JSONObject;
+
+import java.util.Map;
+
+public abstract class IDEResponse implements JSONAware
+{
+    private String text;
+    private String compiler;
+
+    @Override
+    public String toJSONString()
+    {
+        return JSONObject.toJSONString(this.buildJsonKeyMaps());
+    }
+
+    Map buildJsonKeyMaps()
+    {
+        MutableMap jsonMap = Maps.mutable.of();
+        jsonMap.put("text", this.text);
+        jsonMap.put("compiler", this.compiler);
+        this.addJsonKeyValues(jsonMap);
+        return jsonMap;
+    }
+
+    public String getText()
+    {
+        return text;
+    }
+
+    public void appendText(String extraText)
+    {
+        this.text = null == this.text ? extraText : this.text + extraText;
+    }
+
+    abstract void addJsonKeyValues(MutableMap jsonMap);
+}
diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/session/PureSession.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/session/PureSession.java
new file mode 100644
index 00000000000..7dcd1ae6bd7
--- /dev/null
+++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/session/PureSession.java
@@ -0,0 +1,325 @@
+// Copyright 2020 Goldman Sachs
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.finos.legend.engine.ide.session;
+
+import org.eclipse.collections.api.factory.Lists;
+import org.eclipse.collections.api.list.MutableList;
+import org.eclipse.collections.api.map.ConcurrentMutableMap;
+import org.eclipse.collections.impl.map.mutable.ConcurrentHashMap;
+import org.eclipse.collections.impl.utility.Iterate;
+import org.finos.legend.engine.ide.SourceLocationConfiguration;
+import org.finos.legend.engine.ide.api.execution.test.CallBack;
+import org.finos.legend.engine.ide.helpers.response.IDEResponse;
+import org.finos.legend.engine.ide.session.SimpleFunction;
+import org.finos.legend.pure.m3.SourceMutation;
+import org.finos.legend.pure.m3.execution.FunctionExecution;
+import org.finos.legend.pure.m3.execution.test.TestCollection;
+import org.finos.legend.pure.m3.execution.test.TestRunner;
+import org.finos.legend.pure.m3.serialization.filesystem.usercodestorage.MutableRepositoryCodeStorage;
+import org.finos.legend.pure.m3.serialization.filesystem.usercodestorage.RepositoryCodeStorage;
+import org.finos.legend.pure.m3.serialization.filesystem.usercodestorage.composite.CompositeCodeStorage;
+import org.finos.legend.pure.m3.serialization.filesystem.usercodestorage.welcome.WelcomeCodeStorage;
+import org.finos.legend.pure.m3.serialization.runtime.*;
+import org.finos.legend.pure.m3.statelistener.VoidExecutionActivityListener;
+import org.finos.legend.pure.m4.coreinstance.CoreInstance;
+import org.finos.legend.pure.m4.coreinstance.SourceInformation;
+import org.finos.legend.pure.runtime.java.interpreted.FunctionExecutionInterpreted;
+import org.json.simple.JSONArray;
+import org.json.simple.JSONObject;
+import org.json.simple.parser.JSONParser;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.OutputStream;
+import java.nio.file.Paths;
+import java.util.Optional;
+import java.util.concurrent.atomic.AtomicInteger;
+import java.util.regex.Pattern;
+
+import static org.finos.legend.engine.ide.helpers.response.ExceptionTranslation.buildExceptionMessage;
+
+public class PureSession
+{
+    private final PureRuntime pureRuntime;
+    public MutableRepositoryCodeStorage codeStorage;
+    private final FunctionExecution functionExecution;
+    private final SourceLocationConfiguration sourceLocationConfiguration;
+    private final ConcurrentMutableMap testRunnersById = ConcurrentHashMap.newMap();
+    private final AtomicInteger executionCount = new AtomicInteger(0);
+    private static final Pattern LINE_SPLITTER = Pattern.compile("^", Pattern.MULTILINE);
+
+    public Message message = new Message("");
+
+    public MutableList repos;
+
+    public PureSession(SourceLocationConfiguration sourceLocationConfiguration, MutableList repos)
+    {
+        this.sourceLocationConfiguration = sourceLocationConfiguration;
+
+        String rootPath = Optional.ofNullable(sourceLocationConfiguration)
+                .flatMap(s -> Optional.ofNullable(s.welcomeFileDirectory))
+                .orElse(System.getProperty("java.io.tmpdir"));
+
+        this.repos = Lists.mutable.withAll(repos).with(new WelcomeCodeStorage(Paths.get(rootPath)));
+
+        this.functionExecution = new FunctionExecutionInterpreted(VoidExecutionActivityListener.VOID_EXECUTION_ACTIVITY_LISTENER);
+
+        this.codeStorage = new CompositeCodeStorage(this.repos.toArray(new RepositoryCodeStorage[0]));
+        this.pureRuntime = new PureRuntimeBuilder(this.codeStorage).withMessage(this.message).setUseFastCompiler(true).build();
+        this.functionExecution.init(this.pureRuntime, this.message);
+        this.codeStorage.initialize(this.message);
+    }
+
+    public MutableRepositoryCodeStorage getCodeStorage()
+    {
+        return this.codeStorage;
+    }
+
+    public PureRuntime getPureRuntime()
+    {
+        return this.pureRuntime;
+    }
+
+    public FunctionExecution getFunctionExecution()
+    {
+        return this.functionExecution;
+    }
+
+    public TestRunner newTestRunner(int testRunId, TestCollection collection)
+    {
+        TestRunnerWrapper testRunnerWrapper = new TestRunnerWrapper(collection, this.getPureRuntime().executedTestTracker);
+        this.testRunnersById.put(testRunId, testRunnerWrapper);
+        return testRunnerWrapper.testRunner;
+    }
+
+    public CallBack getTestCallBack(int testRunId)
+    {
+        TestRunnerWrapper testRunnerWrapper = this.testRunnersById.get(testRunId);
+        return (testRunnerWrapper == null) ? null : testRunnerWrapper.callBack;
+    }
+
+    public int getTestRunCount()
+    {
+        return this.testRunnersById.size();
+    }
+
+    public TestRunner removeTestRunner(int testRunId)
+    {
+        TestRunnerWrapper testRunnerWrapper = this.testRunnersById.remove(testRunId);
+        return (null == testRunnerWrapper) ? null : testRunnerWrapper.testRunner;
+    }
+
+    public void saveFilesAndExecute(HttpServletRequest request, HttpServletResponse response, OutputStream outputStream, SimpleFunction func) throws IOException
+    {
+        try
+        {
+            this.executionCount.incrementAndGet();
+            JSONObject mainObject = this.saveFiles(request, response);
+            SourceMutation sourceMutation = this.getPureRuntime().compile();
+            JSONArray array = (mainObject.get("modifiedFiles") != null) ? (JSONArray) mainObject.get("modifiedFiles") : new JSONArray();
+            Iterate.addAllIterable(sourceMutation.getModifiedFiles(), array);
+            mainObject.put("modifiedFiles", array);
+            func.run(this, (JSONObject) mainObject.get("extraParams"), (JSONArray) mainObject.get("modifiedFiles"), response, outputStream);
+        }
+        catch (Throwable t)
+        {
+            //todo: refactor this to not need the ByteArrayOutputStream
+            ByteArrayOutputStream pureResponse = new ByteArrayOutputStream();
+            outputStream.write(exceptionToJson(this, t, pureResponse).getBytes());
+            if (t instanceof Error)
+            {
+                throw (Error) t;
+            }
+        }
+        finally
+        {
+            this.executionCount.decrementAndGet();
+        }
+    }
+
+    public void saveOnly(HttpServletRequest request, HttpServletResponse response, OutputStream outputStream, SimpleFunction func) throws IOException
+    {
+        JSONObject mainObj = null;
+        ByteArrayOutputStream pureResponse = new ByteArrayOutputStream();
+        try
+        {
+            this.executionCount.incrementAndGet();
+            try
+            {
+                mainObj = this.saveFiles(request, response);
+                if (null != mainObj)
+                {
+                    //file has been saved
+                    JSONArray array = (null != mainObj.get("modifiedFiles")) ? (JSONArray) mainObj.get("modifiedFiles") : new JSONArray();
+                    mainObj.put("modifiedFiles", array);
+
+                    JSONObject extraParams = (JSONObject) mainObj.get("extraParams");
+                    extraParams.put("saveOutcome", "saved");
+                    func.run(this, extraParams, (JSONArray) mainObj.get("modifiedFiles"), response, outputStream);
+                }
+                else
+                {
+                    //Encountered Error trying to save
+                    JSONObject extraParams = new JSONObject();
+                    extraParams.put("saveOutcome", "Error");
+                    func.run(this, extraParams, new JSONArray(), response, outputStream);
+                }
+            }
+            catch (Exception e)
+            {
+                outputStream.write(exceptionToJson(this, e, pureResponse).getBytes());
+            }
+
+        }
+        catch (Exception e)
+        {
+            outputStream.write(exceptionToJson(this, e, pureResponse).getBytes());
+        }
+        finally
+        {
+            this.executionCount.decrementAndGet();
+        }
+    }
+
+    public JSONObject saveFiles(HttpServletRequest request, HttpServletResponse response) throws IOException
+    {
+        JSONObject mainObject = null;
+        try
+        {
+            mainObject = (JSONObject) new JSONParser().parse(new InputStreamReader(request.getInputStream()));
+            JSONArray openFiles = (JSONArray) mainObject.get("openFiles");
+            if ((null != openFiles) && !openFiles.isEmpty())
+            {
+                PureRuntime pureRuntime = this.getPureRuntime();
+
+                MutableList diagrams = Lists.mutable.empty();
+                for (Object rawOpenFile : openFiles)
+                {
+                    JSONObject openFile = (JSONObject) rawOpenFile;
+                    if (null == openFile.get("diagram"))
+                    {
+                        String path = (String) openFile.get("path");
+                        String code = (String) openFile.get("code");
+                        if (null == pureRuntime.getSourceById(path))
+                        {
+                            pureRuntime.loadSourceIfLoadable(path);
+                        }
+                        pureRuntime.modify(path, code);
+                    }
+                    else
+                    {
+                        diagrams.add(openFile);
+                    }
+                }
+
+                if (diagrams.notEmpty())
+                {
+                    JSONArray modifiedFiles = new JSONArray();
+
+                    for (JSONObject d : diagrams)
+                    {
+                        SourceMutation mutation = pureRuntime.compile();
+                        Iterate.addAllIterable(mutation.getModifiedFiles(), modifiedFiles);
+                        CoreInstance diagram = pureRuntime.getProcessorSupport().package_getByUserPath(d.get("diagram").toString());
+                        if (null != diagram)
+                        {
+                            SourceInformation sourceInformation = diagram.getSourceInformation();
+                            Source source = pureRuntime.getSourceById(sourceInformation.getSourceId());
+                            String content = source.getContent();
+                            String[] lines = LINE_SPLITTER.split(content);
+                            StringBuilder buffer = new StringBuilder(content.length());
+                            for (int i = 0; i < sourceInformation.getStartLine() - 1; i++)
+                            {
+                                buffer.append(lines[i]);
+                            }
+                            buffer.append(lines[sourceInformation.getStartLine() - 1], 0, diagram.getSourceInformation().getStartColumn() - 1);
+                            buffer.append(d.get("code"));
+                            buffer.append(lines[sourceInformation.getEndLine() - 1].substring(sourceInformation.getEndColumn()));
+                            for (int i = sourceInformation.getEndLine(); i < lines.length; i++)
+                            {
+                                buffer.append(lines[i]);
+                            }
+                            pureRuntime.modify(sourceInformation.getSourceId(), buffer.toString());
+                            modifiedFiles.add(diagram.getSourceInformation().getSourceId());
+                        }
+                    }
+                    mainObject.put("modifiedFiles", modifiedFiles);
+                }
+            }
+        }
+        catch (Exception e)
+        {
+            try (OutputStream outputStream = response.getOutputStream())
+            {
+                outputStream.write(exceptionToJson(this, e, null).getBytes());
+            }
+        }
+        return mainObject;
+    }
+
+    public int getCurrentExecutionCount()
+    {
+        return this.executionCount.get();
+    }
+
+    public static String exceptionToJson(PureSession session, Throwable t, ByteArrayOutputStream pureResponse)
+    {
+        IDEResponse response = buildExceptionMessage(session, t, pureResponse);
+        return response.toJSONString();
+    }
+
+    private class TestRunnerWrapper
+    {
+        private TestRunner testRunner;
+        private final CallBack callBack;
+
+        private TestRunnerWrapper(TestCollection collection, CallBack callBack, final ExecutedTestTracker executedTestTracker)
+        {
+            this.testRunner = new TestRunner(collection, false, PureSession.this.getFunctionExecution(), callBack)
+            {
+                @Override
+                public void run()
+                {
+                    super.run();
+                    if (null != executedTestTracker)
+                    {
+                        executedTestTracker.notePassingTests(this.passedTests);
+                        executedTestTracker.noteFailingTests(this.failedTests);
+                    }
+                }
+            };
+            this.callBack = callBack;
+        }
+
+        private TestRunnerWrapper(TestCollection collection, ExecutedTestTracker executedTestTracker)
+        {
+            this(collection, new CallBack(), executedTestTracker);
+        }
+
+        void stopAndClear()
+        {
+            TestRunner tr = this.testRunner;
+            if (null != tr)
+            {
+                tr.stop();
+                this.testRunner = null;
+            }
+            this.callBack.clear();
+        }
+    }
+}
diff --git a/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/session/SimpleFunction.java b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/session/SimpleFunction.java
new file mode 100644
index 00000000000..06180a177a1
--- /dev/null
+++ b/legend-engine-pure/legend-engine-pure-ide/legend-engine-pure-ide-light/src/main/java/org/finos/legend/engine/ide/session/SimpleFunction.java
@@ -0,0 +1,27 @@
+// Copyright 2020 Goldman Sachs
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.finos.legend.engine.ide.session;
+
+import org.finos.legend.engine.ide.session.PureSession;
+import org.json.simple.JSONArray;
+import org.json.simple.JSONObject;
+
+import javax.servlet.http.HttpServletResponse;
+import java.io.OutputStream;
+
+public interface SimpleFunction
+{
+    void run(PureSession pureSession, JSONObject extraParams, JSONArray modifiedFiles, HttpServletResponse response, OutputStream outputStream) throws Exception;
+}
diff --git a/legend-engine-pure/legend-engine-pure-runtime/legend-engine-pure-runtime-compiler/pom.xml b/legend-engine-pure/legend-engine-pure-runtime/legend-engine-pure-runtime-compiler/pom.xml
index def36797615..a1948ce156f 100644
--- a/legend-engine-pure/legend-engine-pure-runtime/legend-engine-pure-runtime-compiler/pom.xml
+++ b/legend-engine-pure/legend-engine-pure-runtime/legend-engine-pure-runtime-compiler/pom.xml
@@ -179,6 +179,16 @@
             legend-engine-xt-text-compiler
             test
         
+        
+            org.finos.legend.pure
+            legend-pure-runtime-java-extension-compiled-functions-base
+            test
+        
+        
+            org.finos.legend.pure
+            legend-pure-runtime-java-extension-interpreted-functions-base
+            test
+        
         
             org.finos.legend.engine
             legend-engine-language-pure-grammar
diff --git a/legend-engine-pure/legend-engine-pure-runtime/legend-engine-pure-runtime-execution/pom.xml b/legend-engine-pure/legend-engine-pure-runtime/legend-engine-pure-runtime-execution/pom.xml
index 51604d83c9d..a1cf05ae2f7 100644
--- a/legend-engine-pure/legend-engine-pure-runtime/legend-engine-pure-runtime-execution/pom.xml
+++ b/legend-engine-pure/legend-engine-pure-runtime/legend-engine-pure-runtime-execution/pom.xml
@@ -118,7 +118,7 @@
         
         
             org.finos.legend.pure
-            legend-pure-runtime-java-extension-dsl-mapping
+            legend-pure-runtime-java-extension-compiled-dsl-mapping
             runtime
         
         
@@ -145,7 +145,7 @@
         
         
             org.finos.legend.engine
-            legend-engine-pure-platform-dsl-mapping-java
+            legend-engine-pure-platform-dsl-store-java
         
 
         
@@ -202,5 +202,25 @@
             legend-pure-m2-dsl-diagram-grammar
             test
         
+        
+            org.finos.legend.pure
+            legend-pure-runtime-java-extension-compiled-functions-base
+            test
+        
+        
+            org.finos.legend.pure
+            legend-pure-runtime-java-extension-interpreted-functions-base
+            test
+        
+        
+            org.finos.legend.pure
+            legend-pure-runtime-java-extension-compiled-functions-json
+            test
+        
+        
+            org.finos.legend.pure
+            legend-pure-runtime-java-extension-interpreted-functions-json
+            test
+        
     
 
diff --git a/legend-engine-pure/legend-engine-pure-runtime/legend-engine-pure-runtime-execution/src/main/resources/core_external_execution.definition.json b/legend-engine-pure/legend-engine-pure-runtime/legend-engine-pure-runtime-execution/src/main/resources/core_external_execution.definition.json
index eac67a5a781..2ab1b307105 100644
--- a/legend-engine-pure/legend-engine-pure-runtime/legend-engine-pure-runtime-execution/src/main/resources/core_external_execution.definition.json
+++ b/legend-engine-pure/legend-engine-pure-runtime/legend-engine-pure-runtime-execution/src/main/resources/core_external_execution.definition.json
@@ -3,7 +3,7 @@
   "pattern": "(meta::legend)(::.*)?",
   "dependencies": [
     "platform",
-    "platform_dsl_mapping",
+    "platform_dsl_store",
     "core"
   ]
 }
diff --git a/legend-engine-pure/legend-engine-pure-runtime/legend-engine-pure-runtime-extensions/pom.xml b/legend-engine-pure/legend-engine-pure-runtime/legend-engine-pure-runtime-extensions/pom.xml
index 0f07c66ad59..29b5025e46b 100644
--- a/legend-engine-pure/legend-engine-pure-runtime/legend-engine-pure-runtime-extensions/pom.xml
+++ b/legend-engine-pure/legend-engine-pure-runtime/legend-engine-pure-runtime-extensions/pom.xml
@@ -118,7 +118,7 @@
         
         
             org.finos.legend.pure
-            legend-pure-runtime-java-extension-dsl-mapping
+            legend-pure-runtime-java-extension-compiled-dsl-mapping
             runtime
         
         
@@ -185,5 +185,15 @@
             legend-pure-m2-dsl-diagram-grammar
             test
         
+        
+            org.finos.legend.pure
+            legend-pure-runtime-java-extension-compiled-functions-base
+            test
+        
+        
+            org.finos.legend.pure
+            legend-pure-runtime-java-extension-interpreted-functions-base
+            test
+        
     
 
diff --git a/legend-engine-pure/legend-engine-pure-runtime/legend-engine-xt-java-runtime-compiler/pom.xml b/legend-engine-pure/legend-engine-pure-runtime/legend-engine-xt-java-runtime-compiler/pom.xml
index 834ff29adf9..61fd85c7d27 100644
--- a/legend-engine-pure/legend-engine-pure-runtime/legend-engine-xt-java-runtime-compiler/pom.xml
+++ b/legend-engine-pure/legend-engine-pure-runtime/legend-engine-xt-java-runtime-compiler/pom.xml
@@ -115,12 +115,12 @@
         
         
             org.finos.legend.pure
-            legend-pure-runtime-java-extension-functions-json
+            legend-pure-runtime-java-extension-compiled-functions-json
             runtime
         
         
             org.finos.legend.pure
-            legend-pure-runtime-java-extension-dsl-mapping
+            legend-pure-runtime-java-extension-compiled-dsl-mapping
             runtime
         
 
@@ -184,5 +184,15 @@
             test-jar
             test
         
+        
+            org.finos.legend.pure
+            legend-pure-runtime-java-extension-compiled-functions-base
+            test
+        
+        
+            org.finos.legend.pure
+            legend-pure-runtime-java-extension-interpreted-functions-base
+            test
+        
     
 
\ No newline at end of file
diff --git a/legend-engine-pure/pom.xml b/legend-engine-pure/pom.xml
index 1c991acd914..c5e32567512 100644
--- a/legend-engine-pure/pom.xml
+++ b/legend-engine-pure/pom.xml
@@ -27,9 +27,7 @@
     Legend Engine - Pure
 
     
-        legend-engine-pure-code
         legend-engine-pure-ide
-        legend-engine-pure-platform-modular-generation
         legend-engine-pure-runtime
     
 
\ No newline at end of file
diff --git a/legend-engine-xts-analytics/legend-engine-xts-analytics-binding/legend-engine-xt-analytics-binding-api/pom.xml b/legend-engine-xts-analytics/legend-engine-xts-analytics-binding/legend-engine-xt-analytics-binding-api/pom.xml
index 16dead2cc9e..0d341bcd078 100644
--- a/legend-engine-xts-analytics/legend-engine-xts-analytics-binding/legend-engine-xt-analytics-binding-api/pom.xml
+++ b/legend-engine-xts-analytics/legend-engine-xts-analytics-binding/legend-engine-xt-analytics-binding-api/pom.xml
@@ -134,7 +134,7 @@
         
         
             org.finos.legend.engine
-            legend-engine-external-shared-format-model
+            legend-engine-external-format-core
             test
         
         
diff --git a/legend-engine-xts-analytics/legend-engine-xts-analytics-lineage/legend-engine-xt-analytics-lineage-pure/pom.xml b/legend-engine-xts-analytics/legend-engine-xts-analytics-lineage/legend-engine-xt-analytics-lineage-pure/pom.xml
index 8161a5d7b76..7cbbcf9a890 100644
--- a/legend-engine-xts-analytics/legend-engine-xts-analytics-lineage/legend-engine-xt-analytics-lineage-pure/pom.xml
+++ b/legend-engine-xts-analytics/legend-engine-xts-analytics-lineage/legend-engine-xt-analytics-lineage-pure/pom.xml
@@ -215,6 +215,10 @@
             org.finos.legend.engine
             legend-engine-pure-platform-dsl-mapping-java
         
+        
+            org.finos.legend.engine
+            legend-engine-pure-platform-dsl-store-java
+        
 
         
             org.finos.legend.engine
diff --git a/legend-engine-xts-analytics/legend-engine-xts-analytics-lineage/legend-engine-xt-analytics-lineage-pure/src/main/resources/core_analytics_lineage.definition.json b/legend-engine-xts-analytics/legend-engine-xts-analytics-lineage/legend-engine-xt-analytics-lineage-pure/src/main/resources/core_analytics_lineage.definition.json
index a781c297279..3b94f290130 100644
--- a/legend-engine-xts-analytics/legend-engine-xts-analytics-lineage/legend-engine-xt-analytics-lineage-pure/src/main/resources/core_analytics_lineage.definition.json
+++ b/legend-engine-xts-analytics/legend-engine-xts-analytics-lineage/legend-engine-xt-analytics-lineage-pure/src/main/resources/core_analytics_lineage.definition.json
@@ -4,6 +4,7 @@
   "dependencies": [
     "platform",
     "platform_functions",
+    "platform_dsl_store",
     "platform_dsl_mapping",
     "platform_store_relational",
     "platform_functions_json",
diff --git a/legend-engine-xts-analytics/legend-engine-xts-analytics-quality/legend-engine-xt-analytics-quality-api/pom.xml b/legend-engine-xts-analytics/legend-engine-xts-analytics-quality/legend-engine-xt-analytics-quality-api/pom.xml
index 5ed696a580a..acbe1f96275 100644
--- a/legend-engine-xts-analytics/legend-engine-xts-analytics-quality/legend-engine-xt-analytics-quality-api/pom.xml
+++ b/legend-engine-xts-analytics/legend-engine-xts-analytics-quality/legend-engine-xt-analytics-quality-api/pom.xml
@@ -5,7 +5,7 @@
     
         legend-engine
         org.finos.legend.engine
-        4.39.1-SNAPSHOT
+        4.40.4-SNAPSHOT
         ../../../pom.xml
     
     4.0.0
diff --git a/legend-engine-xts-analytics/legend-engine-xts-analytics-search/legend-engine-xt-analytics-search-pure/pom.xml b/legend-engine-xts-analytics/legend-engine-xts-analytics-search/legend-engine-xt-analytics-search-pure/pom.xml
index 9a1d74dc9d6..c8b79b0773c 100644
--- a/legend-engine-xts-analytics/legend-engine-xts-analytics-search/legend-engine-xt-analytics-search-pure/pom.xml
+++ b/legend-engine-xts-analytics/legend-engine-xts-analytics-search/legend-engine-xt-analytics-search-pure/pom.xml
@@ -304,6 +304,10 @@
             org.finos.legend.engine
             legend-engine-pure-platform-dsl-mapping-java
         
+        
+            org.finos.legend.engine
+            legend-engine-pure-platform-dsl-store-java
+        
         
             org.finos.legend.engine
             legend-engine-xt-relationalStore-pure
diff --git a/legend-engine-xts-analytics/legend-engine-xts-analytics-store/legend-engine-xt-analytics-store-entitlement-api/pom.xml b/legend-engine-xts-analytics/legend-engine-xts-analytics-store/legend-engine-xt-analytics-store-entitlement-api/pom.xml
index 5f1cdfb0847..32eb4953b17 100644
--- a/legend-engine-xts-analytics/legend-engine-xts-analytics-store/legend-engine-xt-analytics-store-entitlement-api/pom.xml
+++ b/legend-engine-xts-analytics/legend-engine-xts-analytics-store/legend-engine-xt-analytics-store-entitlement-api/pom.xml
@@ -44,7 +44,7 @@
         
         
             org.finos.legend.engine
-            legend-engine-pure-platform-dsl-mapping-java
+            legend-engine-pure-platform-dsl-store-java
         
         
             org.finos.legend.engine
diff --git a/legend-engine-xts-analytics/legend-engine-xts-analytics-store/legend-engine-xt-analytics-store-entitlement/pom.xml b/legend-engine-xts-analytics/legend-engine-xts-analytics-store/legend-engine-xt-analytics-store-entitlement/pom.xml
index 70257ff822b..b25878ac47b 100644
--- a/legend-engine-xts-analytics/legend-engine-xts-analytics-store/legend-engine-xt-analytics-store-entitlement/pom.xml
+++ b/legend-engine-xts-analytics/legend-engine-xts-analytics-store/legend-engine-xt-analytics-store-entitlement/pom.xml
@@ -42,7 +42,7 @@
         
         
             org.finos.legend.engine
-            legend-engine-pure-platform-dsl-mapping-java
+            legend-engine-pure-platform-dsl-store-java
         
         
             org.finos.legend.engine
diff --git a/legend-engine-xts-arrow/legend-engine-xt-arrow-runtime/pom.xml b/legend-engine-xts-arrow/legend-engine-xt-arrow-runtime/pom.xml
index 0b105883c7a..96cc1127f3e 100644
--- a/legend-engine-xts-arrow/legend-engine-xt-arrow-runtime/pom.xml
+++ b/legend-engine-xts-arrow/legend-engine-xt-arrow-runtime/pom.xml
@@ -124,6 +124,11 @@
             legend-engine-pure-platform-dsl-mapping-java
             test
         
+        
+            org.finos.legend.engine
+            legend-engine-pure-platform-dsl-store-java
+            test
+        
         
             org.finos.legend.engine
             legend-engine-xt-relationalStore-pure
diff --git a/legend-engine-xts-avro/legend-engine-xt-avro-pure/pom.xml b/legend-engine-xts-avro/legend-engine-xt-avro-pure/pom.xml
index 3398a921359..53af2f60da6 100644
--- a/legend-engine-xts-avro/legend-engine-xt-avro-pure/pom.xml
+++ b/legend-engine-xts-avro/legend-engine-xt-avro-pure/pom.xml
@@ -153,7 +153,7 @@
         
         
             org.finos.legend.pure
-            legend-pure-runtime-java-extension-functions-json
+            legend-pure-runtime-java-extension-shared-functions-json
         
         
             org.finos.legend.engine
diff --git a/legend-engine-xts-bigqueryFunction/legend-engine-xt-bigqueryFunction-api/pom.xml b/legend-engine-xts-bigqueryFunction/legend-engine-xt-bigqueryFunction-api/pom.xml
index 46022aaec41..a0c32237b80 100644
--- a/legend-engine-xts-bigqueryFunction/legend-engine-xt-bigqueryFunction-api/pom.xml
+++ b/legend-engine-xts-bigqueryFunction/legend-engine-xt-bigqueryFunction-api/pom.xml
@@ -210,7 +210,7 @@
         
         
             org.finos.legend.engine
-            legend-engine-configuration
+            legend-engine-configuration-contract-extension-pure
             test
         
         
diff --git a/legend-engine-xts-changetoken/legend-engine-xt-changetoken-pure/pom.xml b/legend-engine-xts-changetoken/legend-engine-xt-changetoken-pure/pom.xml
index b5e8b6da409..d968595e30d 100644
--- a/legend-engine-xts-changetoken/legend-engine-xt-changetoken-pure/pom.xml
+++ b/legend-engine-xts-changetoken/legend-engine-xt-changetoken-pure/pom.xml
@@ -81,7 +81,7 @@
                     
                     
                         org.finos.legend.pure
-                        legend-pure-m2-functions-pure
+                        legend-pure-m2-functions-base-pure
                         ${legend.pure.version}
                     
                     
@@ -170,7 +170,7 @@
         
         
             org.finos.legend.pure
-            legend-pure-runtime-java-extension-functions-json
+            legend-pure-runtime-java-extension-shared-functions-json
         
         
             org.finos.legend.engine
diff --git a/legend-engine-xts-daml/legend-engine-xt-daml-model/pom.xml b/legend-engine-xts-daml/legend-engine-xt-daml-model/pom.xml
index e5b3b352585..0fb803058ee 100644
--- a/legend-engine-xts-daml/legend-engine-xt-daml-model/pom.xml
+++ b/legend-engine-xts-daml/legend-engine-xt-daml-model/pom.xml
@@ -108,7 +108,16 @@
         
          
             org.finos.legend.engine
-            legend-engine-external-shared-format-model
+            legend-engine-external-format-core
+        
+        
+            org.finos.legend.engine
+            legend-engine-external-format-generation
+        
+        
+            org.finos.legend.engine
+            legend-engine-external-format-compiler
+            runtime
         
         
             org.finos.legend.engine
@@ -142,7 +151,7 @@
 
         
             org.finos.legend.engine
-            legend-engine-external-shared-format-model
+            legend-engine-external-format-example
             test-jar
             test
         
diff --git a/legend-engine-xts-data-space/legend-engine-xt-data-space-compiler/pom.xml b/legend-engine-xts-data-space/legend-engine-xt-data-space-compiler/pom.xml
index 07964adc05c..3c8fc237ecf 100644
--- a/legend-engine-xts-data-space/legend-engine-xt-data-space-compiler/pom.xml
+++ b/legend-engine-xts-data-space/legend-engine-xt-data-space-compiler/pom.xml
@@ -46,7 +46,7 @@
         
         
             org.finos.legend.pure
-            legend-pure-runtime-java-extension-dsl-mapping
+            legend-pure-runtime-java-extension-compiled-dsl-mapping
         
         
             org.finos.legend.engine
diff --git a/legend-engine-xts-data-space/legend-engine-xt-data-space-generation/pom.xml b/legend-engine-xts-data-space/legend-engine-xt-data-space-generation/pom.xml
index 5f026d4d437..d713db90912 100644
--- a/legend-engine-xts-data-space/legend-engine-xt-data-space-generation/pom.xml
+++ b/legend-engine-xts-data-space/legend-engine-xt-data-space-generation/pom.xml
@@ -77,7 +77,7 @@
         
         
             org.finos.legend.engine
-            legend-engine-pure-platform-dsl-mapping-java
+            legend-engine-pure-platform-dsl-store-java
         
         
             org.finos.legend.engine
@@ -185,7 +185,12 @@
         
         
             org.finos.legend.engine
-            legend-engine-configuration
+            legend-engine-configuration-plan-generation-serialization
+            test
+        
+        
+            org.finos.legend.engine
+            legend-engine-configuration-contract-extension-pure
             test
         
         
@@ -198,6 +203,11 @@
             legend-engine-xt-relationalStore-store-entitlement-analytics
             test
         
+        
+            com.h2database
+            h2
+            test
+        
         
     
 
diff --git a/legend-engine-xts-elasticsearch/legend-engine-xt-elasticsearch-V7-grammar/pom.xml b/legend-engine-xts-elasticsearch/legend-engine-xt-elasticsearch-V7-grammar/pom.xml
index a666abb5b69..9b74d0d7d8f 100644
--- a/legend-engine-xts-elasticsearch/legend-engine-xt-elasticsearch-V7-grammar/pom.xml
+++ b/legend-engine-xts-elasticsearch/legend-engine-xt-elasticsearch-V7-grammar/pom.xml
@@ -96,7 +96,7 @@
 
         
             org.finos.legend.engine
-            legend-engine-pure-platform-dsl-mapping-java
+            legend-engine-pure-platform-dsl-store-java
         
         
             org.finos.legend.engine
diff --git a/legend-engine-xts-elasticsearch/legend-engine-xt-elasticsearch-V7-pure-metamodel/pom.xml b/legend-engine-xts-elasticsearch/legend-engine-xt-elasticsearch-V7-pure-metamodel/pom.xml
index bd4d3ff9a2f..20398916bb2 100644
--- a/legend-engine-xts-elasticsearch/legend-engine-xt-elasticsearch-V7-pure-metamodel/pom.xml
+++ b/legend-engine-xts-elasticsearch/legend-engine-xt-elasticsearch-V7-pure-metamodel/pom.xml
@@ -50,7 +50,7 @@
         
         
             org.finos.legend.pure
-            legend-pure-runtime-java-extension-dsl-store
+            legend-pure-runtime-java-extension-compiled-dsl-store
         
         
 
@@ -79,6 +79,10 @@
             org.finos.legend.engine
             legend-engine-pure-platform-dsl-mapping-java
         
+        
+            org.finos.legend.engine
+            legend-engine-pure-platform-dsl-store-java
+        
         
             org.finos.legend.engine
             legend-engine-xt-authentication-pure
@@ -162,7 +166,7 @@
                     
                     
                         org.finos.legend.pure
-                        legend-pure-m2-functions-pure
+                        legend-pure-m2-functions-base-pure
                         ${legend.pure.version}
                     
                     
diff --git a/legend-engine-xts-elasticsearch/legend-engine-xt-elasticsearch-executionPlan-test/pom.xml b/legend-engine-xts-elasticsearch/legend-engine-xt-elasticsearch-executionPlan-test/pom.xml
index cd71b35ead1..65eebacf04a 100644
--- a/legend-engine-xts-elasticsearch/legend-engine-xt-elasticsearch-executionPlan-test/pom.xml
+++ b/legend-engine-xts-elasticsearch/legend-engine-xt-elasticsearch-executionPlan-test/pom.xml
@@ -46,7 +46,7 @@
         
         
             org.finos.legend.pure
-            legend-pure-runtime-java-extension-functions-json
+            legend-pure-runtime-java-extension-shared-functions-json
         
         
             org.finos.legend.engine
@@ -78,7 +78,7 @@
         
         
             org.finos.legend.engine
-            legend-engine-pure-platform-dsl-mapping-java
+            legend-engine-pure-platform-dsl-store-java
         
         
             org.finos.legend.engine
@@ -244,7 +244,7 @@
                     
                     
                         org.finos.legend.pure
-                        legend-pure-m2-functions-pure
+                        legend-pure-m2-functions-base-pure
                         ${legend.pure.version}
                     
                     
@@ -297,7 +297,7 @@
                     
                     
                         org.finos.legend.pure
-                        legend-pure-m2-functions-pure
+                        legend-pure-m2-functions-base-pure
                         ${legend.pure.version}
                     
                     
diff --git a/legend-engine-xts-elasticsearch/legend-engine-xt-elasticsearch-pure-specification-metamodel/pom.xml b/legend-engine-xts-elasticsearch/legend-engine-xt-elasticsearch-pure-specification-metamodel/pom.xml
index 0f7ac25d2bf..12cbf19c596 100644
--- a/legend-engine-xts-elasticsearch/legend-engine-xt-elasticsearch-pure-specification-metamodel/pom.xml
+++ b/legend-engine-xts-elasticsearch/legend-engine-xt-elasticsearch-pure-specification-metamodel/pom.xml
@@ -143,7 +143,7 @@
                     
                     
                         org.finos.legend.pure
-                        legend-pure-m2-functions-pure
+                        legend-pure-m2-functions-base-pure
                         ${legend.pure.version}
                     
                     
diff --git a/legend-engine-xts-flatdata/legend-engine-xt-flatdata-javaPlatformBinding-pure/pom.xml b/legend-engine-xts-flatdata/legend-engine-xt-flatdata-javaPlatformBinding-pure/pom.xml
index d3a83497fd8..7691cd59e9a 100644
--- a/legend-engine-xts-flatdata/legend-engine-xt-flatdata-javaPlatformBinding-pure/pom.xml
+++ b/legend-engine-xts-flatdata/legend-engine-xt-flatdata-javaPlatformBinding-pure/pom.xml
@@ -81,7 +81,7 @@
                     
                     
                         org.finos.legend.engine
-                        legend-engine-xt-javaPlatformBinding-pure
+                        legend-engine-xt-javaPlatformBinding-externalFormat-pure
                         ${project.version}
                     
                 
@@ -138,6 +138,11 @@
                         legend-engine-xt-javaPlatformBinding-pure
                         ${project.version}
                     
+                    
+                        org.finos.legend.engine
+                        legend-engine-xt-javaPlatformBinding-externalFormat-pure
+                        ${project.version}
+                    
                 
             
@@ -192,6 +197,10 @@ org.finos.legend.engine legend-engine-xt-javaPlatformBinding-pure + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-externalFormat-pure + diff --git a/legend-engine-xts-flatdata/legend-engine-xt-flatdata-javaPlatformBinding-pure/src/main/resources/core_external_format_flatdata_java_platform_binding.definition.json b/legend-engine-xts-flatdata/legend-engine-xt-flatdata-javaPlatformBinding-pure/src/main/resources/core_external_format_flatdata_java_platform_binding.definition.json index 73e039d3406..082dd93291f 100644 --- a/legend-engine-xts-flatdata/legend-engine-xt-flatdata-javaPlatformBinding-pure/src/main/resources/core_external_format_flatdata_java_platform_binding.definition.json +++ b/legend-engine-xts-flatdata/legend-engine-xt-flatdata-javaPlatformBinding-pure/src/main/resources/core_external_format_flatdata_java_platform_binding.definition.json @@ -8,6 +8,7 @@ "core", "core_external_format_flatdata", "core_external_language_java", - "core_java_platform_binding" + "core_java_platform_binding", + "core_java_platform_binding_external_format" ] } \ No newline at end of file diff --git a/legend-engine-xts-flatdata/legend-engine-xt-flatdata-model/pom.xml b/legend-engine-xts-flatdata/legend-engine-xt-flatdata-model/pom.xml index 041d270f80f..330daf752bd 100644 --- a/legend-engine-xts-flatdata/legend-engine-xt-flatdata-model/pom.xml +++ b/legend-engine-xts-flatdata/legend-engine-xt-flatdata-model/pom.xml @@ -128,7 +128,21 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-core + + + org.finos.legend.engine + legend-engine-external-format-grammar + runtime + + + org.finos.legend.engine + legend-engine-external-format-compiler + runtime + + + org.finos.legend.engine + legend-engine-external-format-generation @@ -162,10 +176,15 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-example test-jar test + + org.finos.legend.engine + legend-engine-external-format-api + test + org.finos.legend.engine legend-engine-language-pure-compiler @@ -179,7 +198,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json test diff --git a/legend-engine-xts-flatdata/legend-engine-xt-flatdata-pure/pom.xml b/legend-engine-xts-flatdata/legend-engine-xt-flatdata-pure/pom.xml index 689d3f12d76..0d8139f4dac 100644 --- a/legend-engine-xts-flatdata/legend-engine-xt-flatdata-pure/pom.xml +++ b/legend-engine-xts-flatdata/legend-engine-xt-flatdata-pure/pom.xml @@ -177,7 +177,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java diff --git a/legend-engine-xts-flatdata/legend-engine-xt-flatdata-runtime/pom.xml b/legend-engine-xts-flatdata/legend-engine-xt-flatdata-runtime/pom.xml index d0f9e288b25..3c0eba39f42 100644 --- a/legend-engine-xts-flatdata/legend-engine-xt-flatdata-runtime/pom.xml +++ b/legend-engine-xts-flatdata/legend-engine-xt-flatdata-runtime/pom.xml @@ -192,7 +192,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json test @@ -202,7 +202,12 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-api + test + + + org.finos.legend.engine + legend-engine-external-format-example test-jar test @@ -223,7 +228,7 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-core test @@ -256,6 +261,11 @@ legend-engine-xt-javaPlatformBinding-pure test + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-externalFormat-pure + test + org.finos.legend.engine legend-engine-xt-flatdata-javaPlatformBinding-pure @@ -263,7 +273,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-store-relational + legend-pure-runtime-java-extension-compiled-store-relational test diff --git a/legend-engine-xts-flatdata/legend-engine-xt-flatdata-runtime/src/test/java/org/finos/legend/engine/external/format/flatdata/read/test/TestFlatDataQueries.java b/legend-engine-xts-flatdata/legend-engine-xt-flatdata-runtime/src/test/java/org/finos/legend/engine/external/format/flatdata/read/test/TestFlatDataQueries.java index b7ff9d24fd3..71816c22342 100644 --- a/legend-engine-xts-flatdata/legend-engine-xt-flatdata-runtime/src/test/java/org/finos/legend/engine/external/format/flatdata/read/test/TestFlatDataQueries.java +++ b/legend-engine-xts-flatdata/legend-engine-xt-flatdata-runtime/src/test/java/org/finos/legend/engine/external/format/flatdata/read/test/TestFlatDataQueries.java @@ -44,7 +44,7 @@ import org.finos.legend.pure.generated.Root_meta_pure_extension_Extension; import org.finos.legend.pure.generated.core_external_format_flatdata_externalFormatContract; import org.finos.legend.pure.generated.core_external_format_flatdata_java_platform_binding_legendJavaPlatformBinding_descriptor; -import org.finos.legend.pure.generated.core_java_platform_binding_legendJavaPlatformBinding_binding_bindingLegendJavaPlatformBindingExtension; +import org.finos.legend.pure.generated.core_java_platform_binding_external_format_legendJavaPlatformBinding_externalFormat_bindingLegendJavaPlatformBindingExtension; import org.finos.legend.pure.generated.core_pure_binding_extension; import org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.function.LambdaFunction; import org.finos.legend.pure.m3.execution.ExecutionSupport; @@ -156,7 +156,7 @@ public void testMemoryLimit() MutableList extensions = Lists.mutable.with(core_pure_binding_extension.Root_meta_external_format_shared_externalFormatExtension__Extension_1_(model.getExecutionSupport())); extensions.addAll(formatExtensions); - extensions.addAllIterable(core_java_platform_binding_legendJavaPlatformBinding_binding_bindingLegendJavaPlatformBindingExtension.Root_meta_external_format_shared_executionPlan_platformBinding_legendJava_bindingExtensionsWithLegendJavaPlatformBinding_ExternalFormatLegendJavaPlatformBindingDescriptor_MANY__Extension_MANY_(Lists.mutable.withAll(formatDescriptors), model.getExecutionSupport())); + extensions.addAllIterable(core_java_platform_binding_external_format_legendJavaPlatformBinding_externalFormat_bindingLegendJavaPlatformBindingExtension.Root_meta_external_format_shared_executionPlan_platformBinding_legendJava_bindingExtensionsWithLegendJavaPlatformBinding_ExternalFormatLegendJavaPlatformBindingDescriptor_MANY__Extension_MANY_(Lists.mutable.withAll(formatDescriptors), model.getExecutionSupport())); SingleExecutionPlan plan = PlanGenerator.generateExecutionPlan(lambda, null, null, null, model, "vX_X_X", PlanPlatform.JAVA, "test", extensions, LegendPlanTransformers.transformers); diff --git a/legend-engine-xts-generation/legend-engine-language-pure-dsl-generation-pure/pom.xml b/legend-engine-xts-generation/legend-engine-language-pure-dsl-generation-pure/pom.xml index 5b22a5ef10a..8afd0f1a934 100644 --- a/legend-engine-xts-generation/legend-engine-language-pure-dsl-generation-pure/pom.xml +++ b/legend-engine-xts-generation/legend-engine-language-pure-dsl-generation-pure/pom.xml @@ -87,7 +87,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -120,7 +120,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} diff --git a/legend-engine-xts-graphQL/legend-engine-xt-graphQL-compiler/pom.xml b/legend-engine-xts-graphQL/legend-engine-xt-graphQL-compiler/pom.xml index 45487fc478b..3463b31cef9 100644 --- a/legend-engine-xts-graphQL/legend-engine-xt-graphQL-compiler/pom.xml +++ b/legend-engine-xts-graphQL/legend-engine-xt-graphQL-compiler/pom.xml @@ -77,7 +77,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-store-relational + legend-pure-runtime-java-extension-compiled-store-relational ${legend.pure.version} @@ -114,7 +114,7 @@ - org.finos.legend.pure:legend-pure-runtime-java-extension-dsl-mapping + org.finos.legend.pure:legend-pure-runtime-java-extension-compiled-dsl-mapping org.finos.legend.pure:legend-pure-m2-dsl-mapping-grammar diff --git a/legend-engine-xts-graphQL/legend-engine-xt-graphQL-protocol/pom.xml b/legend-engine-xts-graphQL/legend-engine-xt-graphQL-protocol/pom.xml index 429df903a4a..3e21e1293bb 100644 --- a/legend-engine-xts-graphQL/legend-engine-xt-graphQL-protocol/pom.xml +++ b/legend-engine-xts-graphQL/legend-engine-xt-graphQL-protocol/pom.xml @@ -82,7 +82,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-store-relational + legend-pure-runtime-java-extension-compiled-store-relational ${legend.pure.version} diff --git a/legend-engine-xts-graphQL/legend-engine-xt-graphQL-pure/pom.xml b/legend-engine-xts-graphQL/legend-engine-xt-graphQL-pure/pom.xml index b4c1093f836..6e4c0eae356 100644 --- a/legend-engine-xts-graphQL/legend-engine-xt-graphQL-pure/pom.xml +++ b/legend-engine-xts-graphQL/legend-engine-xt-graphQL-pure/pom.xml @@ -181,7 +181,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-graph + legend-pure-runtime-java-extension-compiled-dsl-graph @@ -207,7 +207,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java diff --git a/legend-engine-xts-graphQL/legend-engine-xt-graphQL-pure/src/main/resources/core_external_query_graphql.definition.json b/legend-engine-xts-graphQL/legend-engine-xt-graphQL-pure/src/main/resources/core_external_query_graphql.definition.json index 7064e6a5478..097eab3a9f2 100644 --- a/legend-engine-xts-graphQL/legend-engine-xt-graphQL-pure/src/main/resources/core_external_query_graphql.definition.json +++ b/legend-engine-xts-graphQL/legend-engine-xt-graphQL-pure/src/main/resources/core_external_query_graphql.definition.json @@ -6,6 +6,7 @@ "platform_functions", "platform_dsl_graph", "platform_dsl_mapping", + "platform_dsl_store", "core_functions", "core", "core_generation", diff --git a/legend-engine-xts-graphQL/legend-engine-xt-graphQL-query/pom.xml b/legend-engine-xts-graphQL/legend-engine-xt-graphQL-query/pom.xml index f1408bffe7a..4ea2f2ff55d 100644 --- a/legend-engine-xts-graphQL/legend-engine-xt-graphQL-query/pom.xml +++ b/legend-engine-xts-graphQL/legend-engine-xt-graphQL-query/pom.xml @@ -59,7 +59,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java org.finos.legend.engine @@ -130,7 +130,11 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-core + + + org.finos.legend.engine + legend-engine-external-format-generation org.finos.legend.engine @@ -238,7 +242,7 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-example test-jar test @@ -269,7 +273,12 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure + test + + + org.finos.legend.engine + legend-engine-configuration-plan-generation-serialization test diff --git a/legend-engine-xts-graphQL/legend-engine-xt-graphQL-relational-extension/pom.xml b/legend-engine-xts-graphQL/legend-engine-xt-graphQL-relational-extension/pom.xml index 708ca704388..404c93f5824 100644 --- a/legend-engine-xts-graphQL/legend-engine-xt-graphQL-relational-extension/pom.xml +++ b/legend-engine-xts-graphQL/legend-engine-xt-graphQL-relational-extension/pom.xml @@ -56,7 +56,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java org.finos.legend.engine @@ -183,7 +183,12 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure + test + + + org.finos.legend.engine + legend-engine-configuration-plan-generation-serialization test diff --git a/legend-engine-xts-haskell/legend-engine-xt-haskell-grammar/pom.xml b/legend-engine-xts-haskell/legend-engine-xt-haskell-grammar/pom.xml index 38efad11983..721c5962e7c 100644 --- a/legend-engine-xts-haskell/legend-engine-xt-haskell-grammar/pom.xml +++ b/legend-engine-xts-haskell/legend-engine-xt-haskell-grammar/pom.xml @@ -80,7 +80,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-store-relational + legend-pure-runtime-java-extension-compiled-store-relational ${legend.pure.version} diff --git a/legend-engine-xts-haskell/legend-engine-xt-haskell-protocol/pom.xml b/legend-engine-xts-haskell/legend-engine-xt-haskell-protocol/pom.xml index 04e839377f3..7b6d54fe795 100644 --- a/legend-engine-xts-haskell/legend-engine-xt-haskell-protocol/pom.xml +++ b/legend-engine-xts-haskell/legend-engine-xt-haskell-protocol/pom.xml @@ -63,7 +63,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-store-relational + legend-pure-runtime-java-extension-compiled-store-relational ${legend.pure.version} diff --git a/legend-engine-xts-hostedService/legend-engine-xt-hostedService-api/pom.xml b/legend-engine-xts-hostedService/legend-engine-xt-hostedService-api/pom.xml index f793fbebdbb..3fb87f1f19e 100644 --- a/legend-engine-xts-hostedService/legend-engine-xt-hostedService-api/pom.xml +++ b/legend-engine-xts-hostedService/legend-engine-xt-hostedService-api/pom.xml @@ -135,7 +135,7 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure test diff --git a/legend-engine-xts-hostedService/legend-engine-xt-hostedService-compiler/pom.xml b/legend-engine-xts-hostedService/legend-engine-xt-hostedService-compiler/pom.xml index fa437fad930..fc3b129b2e2 100644 --- a/legend-engine-xts-hostedService/legend-engine-xt-hostedService-compiler/pom.xml +++ b/legend-engine-xts-hostedService/legend-engine-xt-hostedService-compiler/pom.xml @@ -63,7 +63,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java org.finos.legend.engine diff --git a/legend-engine-xts-hostedService/legend-engine-xt-hostedService-generation/pom.xml b/legend-engine-xts-hostedService/legend-engine-xt-hostedService-generation/pom.xml index 7c451cdda96..9e6d945e556 100644 --- a/legend-engine-xts-hostedService/legend-engine-xt-hostedService-generation/pom.xml +++ b/legend-engine-xts-hostedService/legend-engine-xt-hostedService-generation/pom.xml @@ -138,7 +138,7 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure test diff --git a/legend-engine-xts-hostedService/legend-engine-xt-hostedService-pure/pom.xml b/legend-engine-xts-hostedService/legend-engine-xt-hostedService-pure/pom.xml index 73a5caa4e11..f216f03f073 100644 --- a/legend-engine-xts-hostedService/legend-engine-xt-hostedService-pure/pom.xml +++ b/legend-engine-xts-hostedService/legend-engine-xt-hostedService-pure/pom.xml @@ -39,7 +39,7 @@ org.finos.legend.engine:legend-engine-pure-platform-dsl-graph-java - org.finos.legend.pure:legend-pure-runtime-java-extension-dsl-graph + org.finos.legend.pure:legend-pure-runtime-java-extension-compiled-dsl-graph org.finos.legend.engine:legend-engine-pure-platform-dsl-graph-java @@ -186,7 +186,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-graph + legend-pure-runtime-java-extension-compiled-dsl-graph @@ -210,7 +210,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java org.finos.legend.engine diff --git a/legend-engine-xts-hostedService/legend-engine-xt-hostedService-pure/src/main/resources/core_hostedservice.definition.json b/legend-engine-xts-hostedService/legend-engine-xt-hostedService-pure/src/main/resources/core_hostedservice.definition.json index 4b56cd2529d..b743e328aab 100644 --- a/legend-engine-xts-hostedService/legend-engine-xt-hostedService-pure/src/main/resources/core_hostedservice.definition.json +++ b/legend-engine-xts-hostedService/legend-engine-xt-hostedService-pure/src/main/resources/core_hostedservice.definition.json @@ -5,6 +5,7 @@ "platform", "platform_dsl_graph", "platform_dsl_mapping", + "platform_dsl_store", "platform_store_relational", "platform_functions", "platform_functions_json", diff --git a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/pom.xml b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/pom.xml new file mode 100644 index 00000000000..5f3865d1ef5 --- /dev/null +++ b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/pom.xml @@ -0,0 +1,210 @@ + + + + + + org.finos.legend.engine + legend-engine-xts-java + 4.40.4-SNAPSHOT + + 4.0.0 + + legend-engine-xt-javaPlatformBinding-externalFormat-pure + jar + Legend Engine - XT - Java Platform Binding - External Format - PAR/JAVA + + + + + org.finos.legend.pure + legend-pure-maven-generation-par + + ${project.basedir}/src/main/resources + ${legend.pure.version} + + core_java_platform_binding_external_format + + + + ${project.basedir}/src/main/resources/core_java_platform_binding_external_format.definition.json + + + + + + generate-sources + + build-pure-jar + + + + + + org.finos.legend.pure + legend-pure-m2-dsl-diagram-grammar + ${legend.pure.version} + + + org.finos.legend.pure + legend-pure-m2-dsl-graph-grammar + ${legend.pure.version} + + + org.finos.legend.engine + legend-engine-pure-code-compiled-core + ${project.version} + + + org.finos.legend.engine + legend-engine-xt-javaGeneration-pure + ${project.version} + + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-pure + ${project.version} + + + + + org.finos.legend.pure + legend-pure-maven-generation-java + + + compile + + build-pure-compiled-jar + + + true + true + modular + true + + core_java_platform_binding_external_format + + + + + + + org.finos.legend.pure + legend-pure-m2-dsl-diagram-grammar + ${legend.pure.version} + + + org.finos.legend.pure + legend-pure-m2-dsl-graph-grammar + ${legend.pure.version} + + + org.finos.legend.engine + legend-engine-pure-code-compiled-core + ${project.version} + + + org.finos.legend.engine + legend-engine-xt-javaGeneration-pure + ${project.version} + + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-pure + ${project.version} + + + + + + + + + + org.finos.legend.pure + legend-pure-m4 + + + org.finos.legend.pure + legend-pure-m3-core + + + + org.finos.legend.pure + legend-pure-m2-dsl-graph-pure + + + + org.finos.legend.pure + legend-pure-runtime-java-engine-compiled + + + + + + + org.finos.legend.engine + legend-engine-pure-code-compiled-core + + + org.finos.legend.engine + legend-engine-pure-code-core-extension + + + org.finos.legend.engine + legend-engine-pure-code-compiled-functions + + + org.finos.legend.engine + legend-engine-pure-platform-java + + + org.finos.legend.engine + legend-engine-pure-platform-functions-java + + + org.finos.legend.engine + legend-engine-xt-javaGeneration-pure + + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-pure + + + + + org.eclipse.collections + eclipse-collections + + + org.eclipse.collections + eclipse-collections-api + + + + + junit + junit + + + org.finos.legend.engine + legend-engine-language-pure-compiler + test + + + + + diff --git a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/java/org/finos/legend/pure/code/core/CoreExternalFormatJavaPlatformBindingCodeRepositoryProvider.java b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/java/org/finos/legend/pure/code/core/CoreExternalFormatJavaPlatformBindingCodeRepositoryProvider.java new file mode 100644 index 00000000000..02866632a0c --- /dev/null +++ b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/java/org/finos/legend/pure/code/core/CoreExternalFormatJavaPlatformBindingCodeRepositoryProvider.java @@ -0,0 +1,28 @@ +// Copyright 2022 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.pure.code.core; + +import org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepository; +import org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositoryProvider; +import org.finos.legend.pure.m3.serialization.filesystem.repository.GenericCodeRepository; + +public class CoreExternalFormatJavaPlatformBindingCodeRepositoryProvider implements CodeRepositoryProvider +{ + @Override + public CodeRepository repository() + { + return GenericCodeRepository.build("core_java_platform_binding_external_format.definition.json"); + } +} diff --git a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/java/org/finos/legend/pure/code/core/BindingJavaBindingLegendPureCoreExtension.java b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/java/org/finos/legend/pure/code/core/ExternalFormatJavaBindingLegendPureCoreExtension.java similarity index 82% rename from legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/java/org/finos/legend/pure/code/core/BindingJavaBindingLegendPureCoreExtension.java rename to legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/java/org/finos/legend/pure/code/core/ExternalFormatJavaBindingLegendPureCoreExtension.java index 2856a5f6cd1..1eb414ec7d7 100644 --- a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/java/org/finos/legend/pure/code/core/BindingJavaBindingLegendPureCoreExtension.java +++ b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/java/org/finos/legend/pure/code/core/ExternalFormatJavaBindingLegendPureCoreExtension.java @@ -17,7 +17,7 @@ import org.eclipse.collections.api.list.MutableList; import org.finos.legend.engine.pure.code.core.JavaBindingLegendPureCoreExtension; -public class BindingJavaBindingLegendPureCoreExtension implements JavaBindingLegendPureCoreExtension +public class ExternalFormatJavaBindingLegendPureCoreExtension implements JavaBindingLegendPureCoreExtension { @Override public MutableList group() @@ -28,7 +28,7 @@ public MutableList group() @Override public String functionFile() { - return "core_java_platform_binding/legendJavaPlatformBinding/binding/bindingLegendJavaPlatformBindingExtension.pure"; + return "core_java_platform_binding_external_format/legendJavaPlatformBinding/externalFormat/bindingLegendJavaPlatformBindingExtension.pure"; } @Override diff --git a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/META-INF/services/org.finos.legend.engine.pure.code.core.LegendPureCoreExtension b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/META-INF/services/org.finos.legend.engine.pure.code.core.LegendPureCoreExtension new file mode 100644 index 00000000000..c744691e974 --- /dev/null +++ b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/META-INF/services/org.finos.legend.engine.pure.code.core.LegendPureCoreExtension @@ -0,0 +1 @@ +org.finos.legend.pure.code.core.ExternalFormatJavaBindingLegendPureCoreExtension \ No newline at end of file diff --git a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/META-INF/services/org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositoryProvider b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/META-INF/services/org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositoryProvider new file mode 100644 index 00000000000..a6207b4c23e --- /dev/null +++ b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/META-INF/services/org.finos.legend.pure.m3.serialization.filesystem.repository.CodeRepositoryProvider @@ -0,0 +1 @@ +org.finos.legend.pure.code.core.CoreExternalFormatJavaPlatformBindingCodeRepositoryProvider \ No newline at end of file diff --git a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/core_java_platform_binding_external_format.definition.json b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/core_java_platform_binding_external_format.definition.json new file mode 100644 index 00000000000..26384236747 --- /dev/null +++ b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/core_java_platform_binding_external_format.definition.json @@ -0,0 +1,14 @@ +{ + "name" : "core_java_platform_binding_external_format", + "pattern" : "(meta::pure::executionPlan::platformBinding::legendJava|meta::external::format::shared::executionPlan::platformBinding::legendJava)(::.*)?", + "dependencies": [ + "platform", + "platform_functions", + "platform_dsl_mapping", + "platform_dsl_graph", + "core_functions", + "core", + "core_external_language_java", + "core_java_platform_binding" + ] +} \ No newline at end of file diff --git a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/resources/core_java_platform_binding/legendJavaPlatformBinding/binding/bindingLegendJavaPlatformBindingExtension.pure b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/core_java_platform_binding_external_format/legendJavaPlatformBinding/externalFormat/bindingLegendJavaPlatformBindingExtension.pure similarity index 100% rename from legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/resources/core_java_platform_binding/legendJavaPlatformBinding/binding/bindingLegendJavaPlatformBindingExtension.pure rename to legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/core_java_platform_binding_external_format/legendJavaPlatformBinding/externalFormat/bindingLegendJavaPlatformBindingExtension.pure diff --git a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/resources/core_java_platform_binding/legendJavaPlatformBinding/binding/descriptor.pure b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/core_java_platform_binding_external_format/legendJavaPlatformBinding/externalFormat/descriptor.pure similarity index 100% rename from legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/resources/core_java_platform_binding/legendJavaPlatformBinding/binding/descriptor.pure rename to legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/core_java_platform_binding_external_format/legendJavaPlatformBinding/externalFormat/descriptor.pure diff --git a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/resources/core_java_platform_binding/legendJavaPlatformBinding/binding/engineDependencies.pure b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/core_java_platform_binding_external_format/legendJavaPlatformBinding/externalFormat/engineDependencies.pure similarity index 100% rename from legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/resources/core_java_platform_binding/legendJavaPlatformBinding/binding/engineDependencies.pure rename to legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/core_java_platform_binding_external_format/legendJavaPlatformBinding/externalFormat/engineDependencies.pure diff --git a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/resources/core_java_platform_binding/legendJavaPlatformBinding/binding/executionPlanTest.pure b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/core_java_platform_binding_external_format/legendJavaPlatformBinding/externalFormat/executionPlanTest.pure similarity index 100% rename from legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/resources/core_java_platform_binding/legendJavaPlatformBinding/binding/executionPlanTest.pure rename to legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/core_java_platform_binding_external_format/legendJavaPlatformBinding/externalFormat/executionPlanTest.pure diff --git a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/resources/core_java_platform_binding/legendJavaPlatformBinding/binding/shared.pure b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/core_java_platform_binding_external_format/legendJavaPlatformBinding/externalFormat/shared.pure similarity index 100% rename from legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/resources/core_java_platform_binding/legendJavaPlatformBinding/binding/shared.pure rename to legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/main/resources/core_java_platform_binding_external_format/legendJavaPlatformBinding/externalFormat/shared.pure diff --git a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/test/java/org/finos/legend/engine/pure/code/core/Test_Pure_ExternalFormatJavaPlatformBinding.java b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/test/java/org/finos/legend/engine/pure/code/core/Test_Pure_ExternalFormatJavaPlatformBinding.java new file mode 100644 index 00000000000..187183e5771 --- /dev/null +++ b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/test/java/org/finos/legend/engine/pure/code/core/Test_Pure_ExternalFormatJavaPlatformBinding.java @@ -0,0 +1,32 @@ +// Copyright 2022 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.finos.legend.engine.pure.code.core; + +import junit.framework.TestSuite; +import org.finos.legend.pure.m3.execution.test.PureTestBuilder; +import org.finos.legend.pure.m3.execution.test.TestCollection; +import org.finos.legend.pure.runtime.java.compiled.execution.CompiledExecutionSupport; +import org.finos.legend.pure.runtime.java.compiled.testHelper.PureTestBuilderCompiled; + +public class Test_Pure_ExternalFormatJavaPlatformBinding +{ + public static TestSuite suite() + { + CompiledExecutionSupport executionSupport = PureTestBuilderCompiled.getClassLoaderExecutionSupport(); + TestSuite suite = new TestSuite(); + suite.addTest(PureTestBuilderCompiled.buildSuite(TestCollection.collectTests("meta::external::format::shared::executionPlan::platformBinding::legendJava", executionSupport.getProcessorSupport(), fn -> PureTestBuilderCompiled.generatePureTestCollection(fn, executionSupport), ci -> PureTestBuilder.satisfiesConditions(ci, executionSupport.getProcessorSupport())), executionSupport)); + return suite; + } +} diff --git a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/test/java/org/finos/legend/engine/pure/code/core/java/binding/TestExtensionAvailable.java b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/test/java/org/finos/legend/engine/pure/code/core/java/binding/TestExtensionAvailable.java new file mode 100644 index 00000000000..9b6671525b6 --- /dev/null +++ b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-externalFormat-pure/src/test/java/org/finos/legend/engine/pure/code/core/java/binding/TestExtensionAvailable.java @@ -0,0 +1,35 @@ +// Copyright 2023 Goldman Sachs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + + +package org.finos.legend.engine.pure.code.core.java.binding; + +import org.eclipse.collections.api.list.MutableList; +import org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel; +import org.finos.legend.engine.pure.code.core.LegendPureCoreExtension; +import org.finos.legend.engine.pure.code.core.PureCoreExtensionLoader; +import org.finos.legend.pure.code.core.ExternalFormatJavaBindingLegendPureCoreExtension; +import org.junit.Assert; +import org.junit.Test; + +public class TestExtensionAvailable +{ + @Test + public void testServiceAvailable() + { + MutableList extensions = PureCoreExtensionLoader.extensions(); + Assert.assertEquals(1, extensions.selectInstancesOf(ExternalFormatJavaBindingLegendPureCoreExtension.class).get(0).extraPureCoreExtensions(PureModel.CORE_PURE_MODEL.getExecutionSupport()).size()); + Assert.assertEquals("PlatformBinding - LegendJava - ExternalFormatCore", extensions.get(0).extraPureCoreExtensions(PureModel.CORE_PURE_MODEL.getExecutionSupport()).getFirst()._type()); + } +} diff --git a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/pom.xml b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/pom.xml index bea7c03fe83..96617669643 100644 --- a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/pom.xml +++ b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/pom.xml @@ -27,8 +27,6 @@ jar Legend Engine - XT - Java Platform Binding - PAR/JAVA - - @@ -38,9 +36,6 @@ ${project.basedir}/src/main/resources ${legend.pure.version} - platform - core - core_external_language_java core_java_platform_binding @@ -173,7 +168,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-graph + legend-pure-runtime-java-extension-compiled-dsl-graph @@ -203,6 +198,10 @@ org.finos.legend.engine legend-engine-pure-platform-dsl-mapping-java + + org.finos.legend.engine + legend-engine-pure-platform-dsl-store-java + org.finos.legend.engine legend-engine-xt-javaGeneration-pure diff --git a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/resources/META-INF/services/org.finos.legend.engine.pure.code.core.LegendPureCoreExtension b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/resources/META-INF/services/org.finos.legend.engine.pure.code.core.LegendPureCoreExtension index 93164a39ddd..7a272018a28 100644 --- a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/resources/META-INF/services/org.finos.legend.engine.pure.code.core.LegendPureCoreExtension +++ b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/resources/META-INF/services/org.finos.legend.engine.pure.code.core.LegendPureCoreExtension @@ -1,2 +1 @@ -org.finos.legend.pure.code.core.M2MJavaBindingLegendPureCoreExtension -org.finos.legend.pure.code.core.BindingJavaBindingLegendPureCoreExtension \ No newline at end of file +org.finos.legend.pure.code.core.M2MJavaBindingLegendPureCoreExtension \ No newline at end of file diff --git a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/resources/core_java_platform_binding.definition.json b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/resources/core_java_platform_binding.definition.json index 45a9cf03f41..c55502c1c5f 100644 --- a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/resources/core_java_platform_binding.definition.json +++ b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/main/resources/core_java_platform_binding.definition.json @@ -1,9 +1,10 @@ { "name" : "core_java_platform_binding", - "pattern" : "(meta::pure::executionPlan::platformBinding::legendJava|meta::pure::mapping::modelToModel::executionPlan::platformBinding::legendJava|meta::external::format::shared::executionPlan::platformBinding::legendJava)(::.*)?", + "pattern" : "(meta::pure::executionPlan::platformBinding::legendJava|meta::pure::mapping::modelToModel::executionPlan::platformBinding::legendJava)(::.*)?", "dependencies": [ "platform", "platform_functions", + "platform_dsl_store", "platform_dsl_mapping", "platform_dsl_graph", "core_functions", diff --git a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/test/java/org/finos/legend/engine/pure/code/core/Test_Pure_JavaPlatformBinding.java b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/test/java/org/finos/legend/engine/pure/code/core/Test_Pure_JavaPlatformBinding.java index 9c5860a7f53..2faa3293c76 100644 --- a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/test/java/org/finos/legend/engine/pure/code/core/Test_Pure_JavaPlatformBinding.java +++ b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/test/java/org/finos/legend/engine/pure/code/core/Test_Pure_JavaPlatformBinding.java @@ -28,7 +28,6 @@ public static TestSuite suite() TestSuite suite = new TestSuite(); suite.addTest(PureTestBuilderCompiled.buildSuite(TestCollection.collectTests("meta::pure::executionPlan::platformBinding::legendJava", executionSupport.getProcessorSupport(), fn -> PureTestBuilderCompiled.generatePureTestCollection(fn, executionSupport), ci -> PureTestBuilder.satisfiesConditions(ci, executionSupport.getProcessorSupport())), executionSupport)); suite.addTest(PureTestBuilderCompiled.buildSuite(TestCollection.collectTests("meta::pure::mapping::modelToModel::executionPlan::platformBinding::legendJava", executionSupport.getProcessorSupport(), fn -> PureTestBuilderCompiled.generatePureTestCollection(fn, executionSupport), ci -> PureTestBuilder.satisfiesConditions(ci, executionSupport.getProcessorSupport())), executionSupport)); - suite.addTest(PureTestBuilderCompiled.buildSuite(TestCollection.collectTests("meta::external::format::shared::executionPlan::platformBinding::legendJava", executionSupport.getProcessorSupport(), fn -> PureTestBuilderCompiled.generatePureTestCollection(fn, executionSupport), ci -> PureTestBuilder.satisfiesConditions(ci, executionSupport.getProcessorSupport())), executionSupport)); return suite; } } diff --git a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/test/java/org/finos/legend/engine/pure/code/core/java/binding/TestExtensionAvailable.java b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/test/java/org/finos/legend/engine/pure/code/core/java/binding/TestExtensionAvailable.java index c116656de53..7168cfdf6d5 100644 --- a/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/test/java/org/finos/legend/engine/pure/code/core/java/binding/TestExtensionAvailable.java +++ b/legend-engine-xts-java/legend-engine-xt-javaPlatformBinding-pure/src/test/java/org/finos/legend/engine/pure/code/core/java/binding/TestExtensionAvailable.java @@ -19,7 +19,6 @@ import org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel; import org.finos.legend.engine.pure.code.core.LegendPureCoreExtension; import org.finos.legend.engine.pure.code.core.PureCoreExtensionLoader; -import org.finos.legend.pure.code.core.BindingJavaBindingLegendPureCoreExtension; import org.finos.legend.pure.code.core.M2MJavaBindingLegendPureCoreExtension; import org.junit.Assert; import org.junit.Test; @@ -31,8 +30,6 @@ public void testServiceAvailable() { MutableList extensions = PureCoreExtensionLoader.extensions(); Assert.assertEquals(1, extensions.selectInstancesOf(M2MJavaBindingLegendPureCoreExtension.class).get(0).extraPureCoreExtensions(PureModel.CORE_PURE_MODEL.getExecutionSupport()).size()); - Assert.assertEquals(1, extensions.selectInstancesOf(BindingJavaBindingLegendPureCoreExtension.class).get(0).extraPureCoreExtensions(PureModel.CORE_PURE_MODEL.getExecutionSupport()).size()); Assert.assertEquals("PlatformBinding - LegendJava - InMemory", extensions.get(0).extraPureCoreExtensions(PureModel.CORE_PURE_MODEL.getExecutionSupport()).getFirst()._type()); - Assert.assertEquals("PlatformBinding - LegendJava - ExternalFormatCore", extensions.get(1).extraPureCoreExtensions(PureModel.CORE_PURE_MODEL.getExecutionSupport()).getFirst()._type()); } } diff --git a/legend-engine-xts-java/pom.xml b/legend-engine-xts-java/pom.xml index 77ab9b0bd4a..048c71219e6 100644 --- a/legend-engine-xts-java/pom.xml +++ b/legend-engine-xts-java/pom.xml @@ -33,5 +33,6 @@ legend-engine-xt-javaGeneration-featureBased-pure legend-engine-xt-javaGeneration-pure legend-engine-xt-javaPlatformBinding-pure + legend-engine-xt-javaPlatformBinding-externalFormat-pure \ No newline at end of file diff --git a/legend-engine-xts-json/legend-engine-xt-json-javaPlatformBinding-pure/pom.xml b/legend-engine-xts-json/legend-engine-xt-json-javaPlatformBinding-pure/pom.xml index 16b0c5c7e08..3fb9f6ec547 100644 --- a/legend-engine-xts-json/legend-engine-xt-json-javaPlatformBinding-pure/pom.xml +++ b/legend-engine-xts-json/legend-engine-xt-json-javaPlatformBinding-pure/pom.xml @@ -94,6 +94,11 @@ legend-engine-xt-javaPlatformBinding-pure ${project.version} + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-externalFormat-pure + ${project.version} + @@ -153,6 +158,11 @@ legend-engine-xt-javaPlatformBinding-pure ${project.version} + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-externalFormat-pure + ${project.version} + @@ -178,7 +188,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-graph + legend-pure-runtime-java-extension-compiled-dsl-graph @@ -215,6 +225,10 @@ org.finos.legend.engine legend-engine-xt-javaPlatformBinding-pure + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-externalFormat-pure + diff --git a/legend-engine-xts-json/legend-engine-xt-json-javaPlatformBinding-pure/src/main/resources/core_external_format_json_java_platform_binding.definition.json b/legend-engine-xts-json/legend-engine-xt-json-javaPlatformBinding-pure/src/main/resources/core_external_format_json_java_platform_binding.definition.json index 82ea1e77830..04db3eed82c 100644 --- a/legend-engine-xts-json/legend-engine-xt-json-javaPlatformBinding-pure/src/main/resources/core_external_format_json_java_platform_binding.definition.json +++ b/legend-engine-xts-json/legend-engine-xt-json-javaPlatformBinding-pure/src/main/resources/core_external_format_json_java_platform_binding.definition.json @@ -9,6 +9,7 @@ "core", "core_external_format_json", "core_external_language_java", - "core_java_platform_binding" + "core_java_platform_binding", + "core_java_platform_binding_external_format" ] } \ No newline at end of file diff --git a/legend-engine-xts-json/legend-engine-xt-json-model/pom.xml b/legend-engine-xts-json/legend-engine-xt-json-model/pom.xml index bfc8b30dd4f..48f46522f98 100644 --- a/legend-engine-xts-json/legend-engine-xt-json-model/pom.xml +++ b/legend-engine-xts-json/legend-engine-xt-json-model/pom.xml @@ -35,7 +35,21 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-core + + + org.finos.legend.engine + legend-engine-external-format-compiler + runtime + + + org.finos.legend.engine + legend-engine-external-format-grammar + runtime + + + org.finos.legend.engine + legend-engine-external-format-generation org.finos.legend.engine @@ -58,7 +72,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json runtime @@ -77,7 +91,7 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-example test-jar test diff --git a/legend-engine-xts-json/legend-engine-xt-json-pure/pom.xml b/legend-engine-xts-json/legend-engine-xt-json-pure/pom.xml index 53deaff0a6b..773363cd9de 100644 --- a/legend-engine-xts-json/legend-engine-xt-json-pure/pom.xml +++ b/legend-engine-xts-json/legend-engine-xt-json-pure/pom.xml @@ -55,7 +55,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -183,7 +183,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-shared-functions-json @@ -213,7 +213,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java org.finos.legend.engine diff --git a/legend-engine-xts-json/legend-engine-xt-json-runtime/pom.xml b/legend-engine-xts-json/legend-engine-xt-json-runtime/pom.xml index f58501b87be..6233119bb3c 100644 --- a/legend-engine-xts-json/legend-engine-xt-json-runtime/pom.xml +++ b/legend-engine-xts-json/legend-engine-xt-json-runtime/pom.xml @@ -165,7 +165,7 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-example test-jar test @@ -186,7 +186,7 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-core test @@ -216,7 +216,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-store-relational + legend-pure-runtime-java-extension-compiled-store-relational test diff --git a/legend-engine-xts-json/legend-engine-xt-json-runtime/src/test/java/org/finos/legend/engine/external/format/json/read/test/TestJsonSchemaQueries.java b/legend-engine-xts-json/legend-engine-xt-json-runtime/src/test/java/org/finos/legend/engine/external/format/json/read/test/TestJsonSchemaQueries.java index a73984456bf..682465dafba 100644 --- a/legend-engine-xts-json/legend-engine-xt-json-runtime/src/test/java/org/finos/legend/engine/external/format/json/read/test/TestJsonSchemaQueries.java +++ b/legend-engine-xts-json/legend-engine-xt-json-runtime/src/test/java/org/finos/legend/engine/external/format/json/read/test/TestJsonSchemaQueries.java @@ -22,10 +22,8 @@ import org.finos.legend.engine.external.shared.runtime.test.TestExternalFormatQueries; import org.finos.legend.engine.language.pure.compiler.Compiler; import org.finos.legend.engine.language.pure.grammar.from.PureGrammarParser; -import org.finos.legend.engine.language.pure.grammar.to.PureGrammarComposerUtility; import org.finos.legend.engine.protocol.pure.v1.model.context.PureModelContextData; import org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.ModelUnit; -import org.finos.legend.engine.shared.core.identity.Identity; import org.finos.legend.engine.shared.core.identity.factory.*; import org.finos.legend.pure.generated.core_external_format_json_externalFormatContract; import org.finos.legend.pure.generated.core_external_format_json_java_platform_binding_legendJavaPlatformBinding_descriptor; diff --git a/legend-engine-xts-mastery/legend-engine-xt-mastery-grammar/pom.xml b/legend-engine-xts-mastery/legend-engine-xt-mastery-grammar/pom.xml index ebd1d29aaba..e74af3dcccb 100644 --- a/legend-engine-xts-mastery/legend-engine-xt-mastery-grammar/pom.xml +++ b/legend-engine-xts-mastery/legend-engine-xt-mastery-grammar/pom.xml @@ -200,7 +200,7 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-core test @@ -210,7 +210,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json test diff --git a/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-executionPlan-test/pom.xml b/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-executionPlan-test/pom.xml index 3529af4c059..7b52c894808 100644 --- a/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-executionPlan-test/pom.xml +++ b/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-executionPlan-test/pom.xml @@ -46,7 +46,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-shared-functions-json org.finos.legend.engine @@ -70,7 +70,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java org.finos.legend.engine @@ -273,7 +273,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -347,7 +347,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} diff --git a/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-executionPlan-test/src/main/resources/core_mongodb_execution_test.definition.json b/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-executionPlan-test/src/main/resources/core_mongodb_execution_test.definition.json index dade81f6b85..a8287c64bc0 100644 --- a/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-executionPlan-test/src/main/resources/core_mongodb_execution_test.definition.json +++ b/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-executionPlan-test/src/main/resources/core_mongodb_execution_test.definition.json @@ -6,6 +6,7 @@ "platform_functions", "platform_functions_json", "platform_dsl_mapping", + "platform_dsl_store", "platform_dsl_graph", "core", "core_external_compiler", diff --git a/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-grammar-integration/pom.xml b/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-grammar-integration/pom.xml index 9b559898d0a..229db5efc28 100644 --- a/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-grammar-integration/pom.xml +++ b/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-grammar-integration/pom.xml @@ -58,6 +58,10 @@ org.finos.legend.engine legend-engine-pure-platform-dsl-mapping-java + + org.finos.legend.engine + legend-engine-pure-platform-dsl-store-java + org.finos.legend.engine legend-engine-protocol-pure @@ -119,7 +123,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-mapping + legend-pure-runtime-java-extension-compiled-dsl-mapping test @@ -192,7 +196,7 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-example test-jar test @@ -207,7 +211,21 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-core + + + org.finos.legend.engine + legend-engine-external-format-grammar + runtime + + + org.finos.legend.engine + legend-engine-external-format-compiler + + + org.finos.legend.engine + legend-engine-external-format-generation + runtime org.finos.legend.engine diff --git a/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-grammar/pom.xml b/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-grammar/pom.xml index 1f6beee76a2..262c90a40be 100644 --- a/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-grammar/pom.xml +++ b/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-grammar/pom.xml @@ -96,7 +96,7 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-core test diff --git a/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-javaPlatformBinding-pure/pom.xml b/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-javaPlatformBinding-pure/pom.xml index 78017ea1451..bd1817f697d 100644 --- a/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-javaPlatformBinding-pure/pom.xml +++ b/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-javaPlatformBinding-pure/pom.xml @@ -237,7 +237,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-mapping + legend-pure-runtime-java-extension-compiled-dsl-mapping runtime @@ -261,6 +261,10 @@ org.finos.legend.engine legend-engine-xt-javaPlatformBinding-pure + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-externalFormat-pure + org.finos.legend.engine legend-engine-xt-json-javaPlatformBinding-pure diff --git a/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-javaPlatformBinding-pure/src/main/resources/core_nonrelational_mongodb_java_platform_binding.definition.json b/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-javaPlatformBinding-pure/src/main/resources/core_nonrelational_mongodb_java_platform_binding.definition.json index b70eb6fbf48..2a573062250 100644 --- a/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-javaPlatformBinding-pure/src/main/resources/core_nonrelational_mongodb_java_platform_binding.definition.json +++ b/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-javaPlatformBinding-pure/src/main/resources/core_nonrelational_mongodb_java_platform_binding.definition.json @@ -12,6 +12,7 @@ "core_nonrelational_mongodb", "core_external_language_java", "core_java_platform_binding", + "core_java_platform_binding_external_format", "core_external_format_json_java_platform_binding", "core_external_compiler" ] diff --git a/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-protocol/pom.xml b/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-protocol/pom.xml index ef9656666d3..95492ad5d4e 100644 --- a/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-protocol/pom.xml +++ b/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-protocol/pom.xml @@ -61,7 +61,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-mapping + legend-pure-runtime-java-extension-compiled-dsl-mapping ${legend.pure.version} diff --git a/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-pure/pom.xml b/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-pure/pom.xml index bda32c12f12..907bd2a7adf 100644 --- a/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-pure/pom.xml +++ b/legend-engine-xts-mongodb/legend-engine-xt-nonrelationalStore-mongodb-pure/pom.xml @@ -182,11 +182,11 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-store + legend-pure-runtime-java-extension-compiled-dsl-store org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-mapping + legend-pure-runtime-java-extension-compiled-dsl-mapping @@ -207,6 +207,10 @@ org.finos.legend.engine legend-engine-xt-authentication-pure + + org.finos.legend.engine + legend-engine-pure-platform-dsl-store-java + org.finos.legend.engine legend-engine-pure-platform-dsl-mapping-java diff --git a/legend-engine-xts-openapi/legend-engine-xt-openapi-pure/pom.xml b/legend-engine-xts-openapi/legend-engine-xt-openapi-pure/pom.xml index fc4bfa4fac5..6c4a41d34f6 100644 --- a/legend-engine-xts-openapi/legend-engine-xt-openapi-pure/pom.xml +++ b/legend-engine-xts-openapi/legend-engine-xt-openapi-pure/pom.xml @@ -53,7 +53,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -133,7 +133,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -184,18 +184,18 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-mapping + legend-pure-runtime-java-extension-compiled-dsl-mapping ${legend.pure.version} org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-diagram + legend-pure-runtime-java-extension-compiled-dsl-diagram ${legend.pure.version} org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json ${legend.pure.version} @@ -260,6 +260,10 @@ org.finos.legend.engine legend-engine-pure-platform-dsl-mapping-java + + org.finos.legend.engine + legend-engine-pure-platform-dsl-store-java + diff --git a/legend-engine-xts-persistence/legend-engine-xt-persistence-cloud-grammar/pom.xml b/legend-engine-xts-persistence/legend-engine-xt-persistence-cloud-grammar/pom.xml index 40104eb2f52..7567ce0679a 100644 --- a/legend-engine-xts-persistence/legend-engine-xt-persistence-cloud-grammar/pom.xml +++ b/legend-engine-xts-persistence/legend-engine-xt-persistence-cloud-grammar/pom.xml @@ -168,7 +168,7 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure test @@ -193,6 +193,11 @@ legend-engine-xt-relationalStore-snowflake-grammar test + + com.h2database + h2 + test + diff --git a/legend-engine-xts-persistence/legend-engine-xt-persistence-cloud-pure/pom.xml b/legend-engine-xts-persistence/legend-engine-xt-persistence-cloud-pure/pom.xml index 3558a002f35..08f16013494 100644 --- a/legend-engine-xts-persistence/legend-engine-xt-persistence-cloud-pure/pom.xml +++ b/legend-engine-xts-persistence/legend-engine-xt-persistence-cloud-pure/pom.xml @@ -195,7 +195,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java org.finos.legend.engine @@ -219,6 +219,11 @@ junit junit + + com.h2database + h2 + test + diff --git a/legend-engine-xts-persistence/legend-engine-xt-persistence-cloud-pure/src/main/resources/core_persistence_cloud.definition.json b/legend-engine-xts-persistence/legend-engine-xt-persistence-cloud-pure/src/main/resources/core_persistence_cloud.definition.json index 3de82969c78..b993e0f6761 100644 --- a/legend-engine-xts-persistence/legend-engine-xt-persistence-cloud-pure/src/main/resources/core_persistence_cloud.definition.json +++ b/legend-engine-xts-persistence/legend-engine-xt-persistence-cloud-pure/src/main/resources/core_persistence_cloud.definition.json @@ -4,7 +4,7 @@ "dependencies": [ "platform", "platform_functions", - "platform_dsl_mapping", + "platform_dsl_store", "platform_dsl_graph", "platform_store_relational", "core", diff --git a/legend-engine-xts-persistence/legend-engine-xt-persistence-grammar/pom.xml b/legend-engine-xts-persistence/legend-engine-xt-persistence-grammar/pom.xml index 1ea8b9a2bdf..1a1be33f0c9 100644 --- a/legend-engine-xts-persistence/legend-engine-xt-persistence-grammar/pom.xml +++ b/legend-engine-xts-persistence/legend-engine-xt-persistence-grammar/pom.xml @@ -40,7 +40,7 @@ org.finos.legend.engine:legend-engine-pure-platform-java org.finos.legend.engine:legend-engine-pure-platform-dsl-path-java org.finos.legend.pure:legend-pure-runtime-java-engine-compiled - org.finos.legend.pure:legend-pure-runtime-java-extension-dsl-path + org.finos.legend.pure:legend-pure-runtime-java-extension-compiled-dsl-path @@ -102,7 +102,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-path + legend-pure-runtime-java-extension-compiled-dsl-path org.finos.legend.engine @@ -153,7 +153,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java org.finos.legend.engine @@ -216,7 +216,7 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure test @@ -233,7 +233,7 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-core test @@ -256,6 +256,11 @@ legend-engine-xt-relationalStore-snowflake-grammar test + + com.h2database + h2 + test + diff --git a/legend-engine-xts-persistence/legend-engine-xt-persistence-pure/pom.xml b/legend-engine-xts-persistence/legend-engine-xt-persistence-pure/pom.xml index 930143f8bf3..32c617531f5 100644 --- a/legend-engine-xts-persistence/legend-engine-xt-persistence-pure/pom.xml +++ b/legend-engine-xts-persistence/legend-engine-xt-persistence-pure/pom.xml @@ -231,6 +231,10 @@ org.finos.legend.engine legend-engine-pure-platform-dsl-mapping-java + + org.finos.legend.engine + legend-engine-pure-platform-dsl-store-java + org.finos.legend.engine legend-engine-xt-relationalStore-pure @@ -253,7 +257,11 @@ junit junit - + + com.h2database + h2 + test + diff --git a/legend-engine-xts-persistence/legend-engine-xt-persistence-pure/src/main/resources/core_persistence.definition.json b/legend-engine-xts-persistence/legend-engine-xt-persistence-pure/src/main/resources/core_persistence.definition.json index d1f08cc5825..1cd5a0626b2 100644 --- a/legend-engine-xts-persistence/legend-engine-xt-persistence-pure/src/main/resources/core_persistence.definition.json +++ b/legend-engine-xts-persistence/legend-engine-xt-persistence-pure/src/main/resources/core_persistence.definition.json @@ -5,6 +5,7 @@ "platform", "platform_functions", "platform_dsl_mapping", + "platform_dsl_store", "platform_dsl_graph", "platform_dsl_path", "platform_store_relational", diff --git a/legend-engine-xts-persistence/legend-engine-xt-persistence-target-relational-grammar/pom.xml b/legend-engine-xts-persistence/legend-engine-xt-persistence-target-relational-grammar/pom.xml index b652b9785a9..6cf528609be 100644 --- a/legend-engine-xts-persistence/legend-engine-xt-persistence-target-relational-grammar/pom.xml +++ b/legend-engine-xts-persistence/legend-engine-xt-persistence-target-relational-grammar/pom.xml @@ -79,7 +79,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-path + legend-pure-runtime-java-extension-compiled-dsl-path org.finos.legend.engine @@ -168,7 +168,7 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure test @@ -185,7 +185,7 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-core test diff --git a/legend-engine-xts-persistence/legend-engine-xt-persistence-test-runner/pom.xml b/legend-engine-xts-persistence/legend-engine-xt-persistence-test-runner/pom.xml index 3a03ab05ddb..ca99d3b041f 100644 --- a/legend-engine-xts-persistence/legend-engine-xt-persistence-test-runner/pom.xml +++ b/legend-engine-xts-persistence/legend-engine-xt-persistence-test-runner/pom.xml @@ -175,7 +175,7 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure test diff --git a/legend-engine-xts-protobuf/legend-engine-xt-protobuf-protocol/pom.xml b/legend-engine-xts-protobuf/legend-engine-xt-protobuf-protocol/pom.xml index 1fb473af907..77ba096fd06 100644 --- a/legend-engine-xts-protobuf/legend-engine-xt-protobuf-protocol/pom.xml +++ b/legend-engine-xts-protobuf/legend-engine-xt-protobuf-protocol/pom.xml @@ -64,7 +64,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-store-relational + legend-pure-runtime-java-extension-compiled-store-relational ${legend.pure.version} diff --git a/legend-engine-xts-protobuf/legend-engine-xt-protobuf-pure/pom.xml b/legend-engine-xts-protobuf/legend-engine-xt-protobuf-pure/pom.xml index 8b233621757..ec7fd35251b 100644 --- a/legend-engine-xts-protobuf/legend-engine-xt-protobuf-pure/pom.xml +++ b/legend-engine-xts-protobuf/legend-engine-xt-protobuf-pure/pom.xml @@ -175,7 +175,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-shared-functions-json diff --git a/legend-engine-xts-protobuf/legend-engine-xt-protobuf/pom.xml b/legend-engine-xts-protobuf/legend-engine-xt-protobuf/pom.xml index 36e4468eaa8..3b7735a9ae4 100644 --- a/legend-engine-xts-protobuf/legend-engine-xt-protobuf/pom.xml +++ b/legend-engine-xts-protobuf/legend-engine-xt-protobuf/pom.xml @@ -61,7 +61,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-store-relational + legend-pure-runtime-java-extension-compiled-store-relational ${legend.pure.version} @@ -109,7 +109,11 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-core + + + org.finos.legend.engine + legend-engine-external-format-generation org.finos.legend.engine @@ -229,6 +233,11 @@ jersey-common test + + org.finos.legend.engine + legend-engine-external-format-api + test + org.finos.legend.engine legend-engine-language-pure-compiler @@ -237,7 +246,7 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-example test-jar test diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-analytics/legend-engine-xt-relationalStore-store-entitlement-analytics/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-analytics/legend-engine-xt-relationalStore-store-entitlement-analytics/pom.xml index da71a84f29a..d911375757d 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-analytics/legend-engine-xt-relationalStore-store-entitlement-analytics/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-analytics/legend-engine-xt-relationalStore-store-entitlement-analytics/pom.xml @@ -59,7 +59,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java org.finos.legend.engine @@ -106,7 +106,7 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure test diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-analytics/legend-engine-xt-relationalStore-store-entitlement-pure/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-analytics/legend-engine-xt-relationalStore-store-entitlement-pure/pom.xml index 86b24279bb8..a61b5d938a7 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-analytics/legend-engine-xt-relationalStore-store-entitlement-pure/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-analytics/legend-engine-xt-relationalStore-store-entitlement-pure/pom.xml @@ -58,7 +58,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -187,7 +187,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-store-relational + legend-pure-runtime-java-extension-compiled-store-relational org.finos.legend.pure @@ -218,6 +218,10 @@ org.finos.legend.engine legend-engine-pure-platform-functions-java + + org.finos.legend.engine + legend-engine-pure-platform-dsl-store-java + org.finos.legend.engine legend-engine-pure-platform-dsl-mapping-java diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-athena/legend-engine-xt-relationalStore-athena-grammar/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-athena/legend-engine-xt-relationalStore-athena-grammar/pom.xml index 877e08bc2ef..0d4e7dfd978 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-athena/legend-engine-xt-relationalStore-athena-grammar/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-athena/legend-engine-xt-relationalStore-athena-grammar/pom.xml @@ -159,7 +159,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json test diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-bigquery/legend-engine-xt-relationalStore-bigquery-grammar/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-bigquery/legend-engine-xt-relationalStore-bigquery-grammar/pom.xml index ea85f42499f..1abe7bd1ca7 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-bigquery/legend-engine-xt-relationalStore-bigquery-grammar/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-bigquery/legend-engine-xt-relationalStore-bigquery-grammar/pom.xml @@ -159,7 +159,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json test diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-bigquery/legend-engine-xt-relationalStore-bigquery-pure/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-bigquery/legend-engine-xt-relationalStore-bigquery-pure/pom.xml index ba77774241e..4b89b9fb6b9 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-bigquery/legend-engine-xt-relationalStore-bigquery-pure/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-bigquery/legend-engine-xt-relationalStore-bigquery-pure/pom.xml @@ -56,7 +56,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -202,7 +202,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-bigquery/legend-engine-xt-relationalStore-bigquery-pure/src/main/resources/core_relational_bigquery.definition.json b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-bigquery/legend-engine-xt-relationalStore-bigquery-pure/src/main/resources/core_relational_bigquery.definition.json index 5b06468c642..df9dfacb9ba 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-bigquery/legend-engine-xt-relationalStore-bigquery-pure/src/main/resources/core_relational_bigquery.definition.json +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-bigquery/legend-engine-xt-relationalStore-bigquery-pure/src/main/resources/core_relational_bigquery.definition.json @@ -4,7 +4,7 @@ "dependencies": [ "platform", "platform_functions", - "platform_dsl_mapping", + "platform_dsl_store", "platform_store_relational", "core_functions", "core", diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-databricks/legend-engine-xt-relationalStore-databricks-grammar/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-databricks/legend-engine-xt-relationalStore-databricks-grammar/pom.xml index 1e505a6e8c6..ae4fec7f074 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-databricks/legend-engine-xt-relationalStore-databricks-grammar/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-databricks/legend-engine-xt-relationalStore-databricks-grammar/pom.xml @@ -157,7 +157,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json test diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-databricks/legend-engine-xt-relationalStore-databricks-pure/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-databricks/legend-engine-xt-relationalStore-databricks-pure/pom.xml index 3cb4a5fd962..1def5c77ce0 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-databricks/legend-engine-xt-relationalStore-databricks-pure/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-databricks/legend-engine-xt-relationalStore-databricks-pure/pom.xml @@ -54,7 +54,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -187,7 +187,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java org.finos.legend.engine diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-databricks/legend-engine-xt-relationalStore-databricks-pure/src/main/resources/core_relational_databricks.definition.json b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-databricks/legend-engine-xt-relationalStore-databricks-pure/src/main/resources/core_relational_databricks.definition.json index 9f1b5e9e0ba..10540393865 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-databricks/legend-engine-xt-relationalStore-databricks-pure/src/main/resources/core_relational_databricks.definition.json +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-databricks/legend-engine-xt-relationalStore-databricks-pure/src/main/resources/core_relational_databricks.definition.json @@ -1,5 +1,13 @@ { - "name" : "core_relational_databricks", - "pattern" : "(meta::relational::functions::sqlQueryToString::databricks|meta::relational::tests::sqlQueryToString::databricks|meta::relational::tests::connEquality|meta::relational::databricks::tests|meta::relational::tests::functions::sqlstring::databricks|meta::pure::alloy::connections|meta::protocols::pure)(::.*)?", - "dependencies" : ["platform", "platform_functions", "platform_store_relational", "platform_dsl_mapping", "core_functions", "core", "core_relational"] + "name": "core_relational_databricks", + "pattern": "(meta::relational::functions::sqlQueryToString::databricks|meta::relational::tests::sqlQueryToString::databricks|meta::relational::tests::connEquality|meta::relational::databricks::tests|meta::relational::tests::functions::sqlstring::databricks|meta::pure::alloy::connections|meta::protocols::pure)(::.*)?", + "dependencies": [ + "platform", + "platform_functions", + "platform_store_relational", + "platform_dsl_store", + "core_functions", + "core", + "core_relational" + ] } diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-dbExtension-archetype/src/main/resources/archetype-resources/legend-engine-xt-relationalStore-__dbtype__-grammar/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-dbExtension-archetype/src/main/resources/archetype-resources/legend-engine-xt-relationalStore-__dbtype__-grammar/pom.xml index 2abb90169bd..20441d246e3 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-dbExtension-archetype/src/main/resources/archetype-resources/legend-engine-xt-relationalStore-__dbtype__-grammar/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-dbExtension-archetype/src/main/resources/archetype-resources/legend-engine-xt-relationalStore-__dbtype__-grammar/pom.xml @@ -151,7 +151,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json test diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-hive/legend-engine-xt-relationalStore-hive-pure/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-hive/legend-engine-xt-relationalStore-hive-pure/pom.xml index 5bc7166f879..450ce0c831b 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-hive/legend-engine-xt-relationalStore-hive-pure/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-hive/legend-engine-xt-relationalStore-hive-pure/pom.xml @@ -54,7 +54,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -220,6 +220,11 @@ jackson-core test + + com.h2database + h2 + test + junit junit diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-memsql/legend-engine-xt-relationalStore-memsql-pure/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-memsql/legend-engine-xt-relationalStore-memsql-pure/pom.xml index 390ebfe755f..72bc4aeb5e6 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-memsql/legend-engine-xt-relationalStore-memsql-pure/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-memsql/legend-engine-xt-relationalStore-memsql-pure/pom.xml @@ -54,7 +54,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -191,7 +191,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java org.finos.legend.engine @@ -244,6 +244,11 @@ junit junit + + com.h2database + h2 + test + diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-postgres/legend-engine-xt-relationalStore-postgres-pure/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-postgres/legend-engine-xt-relationalStore-postgres-pure/pom.xml index cb268162462..a975a6db386 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-postgres/legend-engine-xt-relationalStore-postgres-pure/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-postgres/legend-engine-xt-relationalStore-postgres-pure/pom.xml @@ -54,7 +54,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -232,6 +232,11 @@ jackson-core test + + com.h2database + h2 + test + junit junit diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-presto/legend-engine-xt-relationalStore-presto-pure/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-presto/legend-engine-xt-relationalStore-presto-pure/pom.xml index 7ad047322b2..d452f75626c 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-presto/legend-engine-xt-relationalStore-presto-pure/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-presto/legend-engine-xt-relationalStore-presto-pure/pom.xml @@ -54,7 +54,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -193,6 +193,10 @@ org.finos.legend.engine legend-engine-pure-platform-dsl-mapping-java + + org.finos.legend.engine + legend-engine-pure-platform-dsl-store-java + org.finos.legend.engine legend-engine-pure-platform-java @@ -240,6 +244,11 @@ jackson-core test + + com.h2database + h2 + test + junit junit diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-redshift/legend-engine-xt-relationalStore-redshift-grammar/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-redshift/legend-engine-xt-relationalStore-redshift-grammar/pom.xml index caf1784ebb9..882e6635fc7 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-redshift/legend-engine-xt-relationalStore-redshift-grammar/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-redshift/legend-engine-xt-relationalStore-redshift-grammar/pom.xml @@ -157,7 +157,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json test diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-redshift/legend-engine-xt-relationalStore-redshift-pure/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-redshift/legend-engine-xt-relationalStore-redshift-pure/pom.xml index 959b4770655..f1487f54ed6 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-redshift/legend-engine-xt-relationalStore-redshift-pure/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-redshift/legend-engine-xt-relationalStore-redshift-pure/pom.xml @@ -54,7 +54,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -187,7 +187,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java org.finos.legend.engine diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-redshift/legend-engine-xt-relationalStore-redshift-pure/src/main/resources/core_relational_redshift.definition.json b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-redshift/legend-engine-xt-relationalStore-redshift-pure/src/main/resources/core_relational_redshift.definition.json index 096e8f2231f..5ae3e0350e6 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-redshift/legend-engine-xt-relationalStore-redshift-pure/src/main/resources/core_relational_redshift.definition.json +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-redshift/legend-engine-xt-relationalStore-redshift-pure/src/main/resources/core_relational_redshift.definition.json @@ -1,5 +1,13 @@ { - "name" : "core_relational_redshift", - "pattern" : "(meta::relational::functions::sqlQueryToString::redshift|meta::relational::tests::sqlQueryToString::redshift|meta::relational::functions::sqlQueryToString::tests::redshift|meta::pure::executionPlan::tests::redshift|meta::pure::legend::connections::legend::specification|meta::pure::alloy::connections|meta::protocols::pure)(::.*)?", - "dependencies" : ["platform", "platform_functions", "platform_store_relational", "platform_dsl_mapping", "core_functions", "core", "core_relational"] + "name": "core_relational_redshift", + "pattern": "(meta::relational::functions::sqlQueryToString::redshift|meta::relational::tests::sqlQueryToString::redshift|meta::relational::functions::sqlQueryToString::tests::redshift|meta::pure::executionPlan::tests::redshift|meta::pure::legend::connections::legend::specification|meta::pure::alloy::connections|meta::protocols::pure)(::.*)?", + "dependencies": [ + "platform", + "platform_functions", + "platform_store_relational", + "platform_dsl_store", + "core_functions", + "core", + "core_relational" + ] } diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-snowflake/legend-engine-xt-relationalStore-snowflake-execution/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-snowflake/legend-engine-xt-relationalStore-snowflake-execution/pom.xml index cf98b11bfa5..491b696e459 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-snowflake/legend-engine-xt-relationalStore-snowflake-execution/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-snowflake/legend-engine-xt-relationalStore-snowflake-execution/pom.xml @@ -183,6 +183,11 @@ legend-engine-xt-javaPlatformBinding-pure test + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-externalFormat-pure + test + org.finos.legend.engine legend-engine-pure-code-compiled-core diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-snowflake/legend-engine-xt-relationalStore-snowflake-grammar/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-snowflake/legend-engine-xt-relationalStore-snowflake-grammar/pom.xml index 8c006f5ad2d..6353517f3e2 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-snowflake/legend-engine-xt-relationalStore-snowflake-grammar/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-snowflake/legend-engine-xt-relationalStore-snowflake-grammar/pom.xml @@ -196,7 +196,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json test diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-snowflake/legend-engine-xt-relationalStore-snowflake-pure/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-snowflake/legend-engine-xt-relationalStore-snowflake-pure/pom.xml index b2f8f134524..a5679233695 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-snowflake/legend-engine-xt-relationalStore-snowflake-pure/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-snowflake/legend-engine-xt-relationalStore-snowflake-pure/pom.xml @@ -54,7 +54,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -187,7 +187,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-store-relational + legend-pure-runtime-java-extension-compiled-store-relational org.finos.legend.pure @@ -206,6 +206,10 @@ org.finos.legend.engine legend-engine-pure-platform-dsl-mapping-java + + org.finos.legend.engine + legend-engine-pure-platform-dsl-store-java + org.finos.legend.engine legend-engine-pure-platform-java @@ -253,6 +257,11 @@ jackson-core test + + com.h2database + h2 + test + junit junit diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-spanner/legend-engine-xt-relationalStore-spanner-grammar/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-spanner/legend-engine-xt-relationalStore-spanner-grammar/pom.xml index d57f632a672..de6a4a523a3 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-spanner/legend-engine-xt-relationalStore-spanner-grammar/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-spanner/legend-engine-xt-relationalStore-spanner-grammar/pom.xml @@ -143,7 +143,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json test diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-spanner/legend-engine-xt-relationalStore-spanner-pure/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-spanner/legend-engine-xt-relationalStore-spanner-pure/pom.xml index 921ee8a82e8..97d1bd9ffe5 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-spanner/legend-engine-xt-relationalStore-spanner-pure/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-spanner/legend-engine-xt-relationalStore-spanner-pure/pom.xml @@ -37,7 +37,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-sparksql/legend-engine-xt-relationalStore-sparksql-pure/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-sparksql/legend-engine-xt-relationalStore-sparksql-pure/pom.xml index 8ebb3de8d2b..61ab2c3d2fc 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-sparksql/legend-engine-xt-relationalStore-sparksql-pure/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-sparksql/legend-engine-xt-relationalStore-sparksql-pure/pom.xml @@ -54,7 +54,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-sqlserver/legend-engine-xt-relationalStore-sqlserver-pure/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-sqlserver/legend-engine-xt-relationalStore-sqlserver-pure/pom.xml index 2cbc35d5154..27cea5b6557 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-sqlserver/legend-engine-xt-relationalStore-sqlserver-pure/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-sqlserver/legend-engine-xt-relationalStore-sqlserver-pure/pom.xml @@ -53,7 +53,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-sybase/legend-engine-xt-relationalStore-sybase-pure/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-sybase/legend-engine-xt-relationalStore-sybase-pure/pom.xml index 867427a6ebd..62717923bc9 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-sybase/legend-engine-xt-relationalStore-sybase-pure/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-sybase/legend-engine-xt-relationalStore-sybase-pure/pom.xml @@ -54,7 +54,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -182,7 +182,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-store-relational + legend-pure-runtime-java-extension-compiled-store-relational @@ -197,6 +197,10 @@ org.finos.legend.engine legend-engine-pure-platform-dsl-mapping-java + + org.finos.legend.engine + legend-engine-pure-platform-dsl-store-java + org.finos.legend.engine legend-engine-pure-platform-java @@ -244,6 +248,11 @@ jackson-core test + + com.h2database + h2 + test + junit junit diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-sybaseiq/legend-engine-xt-relationalStore-sybaseiq-pure/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-sybaseiq/legend-engine-xt-relationalStore-sybaseiq-pure/pom.xml index c9f208e8e7c..fbacfebe5bd 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-sybaseiq/legend-engine-xt-relationalStore-sybaseiq-pure/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-sybaseiq/legend-engine-xt-relationalStore-sybaseiq-pure/pom.xml @@ -54,7 +54,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -193,6 +193,10 @@ org.finos.legend.engine legend-engine-pure-platform-dsl-mapping-java + + org.finos.legend.engine + legend-engine-pure-platform-dsl-store-java + org.finos.legend.engine legend-engine-pure-platform-java @@ -240,6 +244,11 @@ jackson-core test + + com.h2database + h2 + test + junit junit diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-sybaseiq/legend-engine-xt-relationalStore-sybaseiq-pure/src/main/resources/core_relational_sybaseiq.definition.json b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-sybaseiq/legend-engine-xt-relationalStore-sybaseiq-pure/src/main/resources/core_relational_sybaseiq.definition.json index a02c92891cb..84b154d68b9 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-sybaseiq/legend-engine-xt-relationalStore-sybaseiq-pure/src/main/resources/core_relational_sybaseiq.definition.json +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-sybaseiq/legend-engine-xt-relationalStore-sybaseiq-pure/src/main/resources/core_relational_sybaseiq.definition.json @@ -1,5 +1,13 @@ { - "name" : "core_relational_sybaseiq", - "pattern" : "(meta::relational::functions::sqlQueryToString::sybaseIQ|meta::relational::tests::sqlQueryToString::sybaseIQ|meta::relational::tests::sqlToString::sybaseIQ|meta::pure::executionPlan::tests::sybaseIQ|meta::relational::tests::mapping::sqlFunction::sybaseIQ|meta::relational::tests::postProcessor::sybaseIQ|meta::relational::tests::query::function::sybaseIQ|meta::relational::tests::functions::sqlstring::sybaseIQ|meta::relational::tests::tds::sybaseIQ|meta::relational::tests::projection::sybaseIQ|meta::pure::alloy::connections|meta::protocols::pure)(::.*)?", - "dependencies" : ["platform", "platform_functions", "platform_store_relational", "platform_dsl_mapping", "core_functions", "core", "core_relational"] + "name": "core_relational_sybaseiq", + "pattern": "(meta::relational::functions::sqlQueryToString::sybaseIQ|meta::relational::tests::sqlQueryToString::sybaseIQ|meta::relational::tests::sqlToString::sybaseIQ|meta::pure::executionPlan::tests::sybaseIQ|meta::relational::tests::mapping::sqlFunction::sybaseIQ|meta::relational::tests::postProcessor::sybaseIQ|meta::relational::tests::query::function::sybaseIQ|meta::relational::tests::functions::sqlstring::sybaseIQ|meta::relational::tests::tds::sybaseIQ|meta::relational::tests::projection::sybaseIQ|meta::pure::alloy::connections|meta::protocols::pure)(::.*)?", + "dependencies": [ + "platform", + "platform_functions", + "platform_store_relational", + "platform_dsl_store", + "core_functions", + "core", + "core_relational" + ] } diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-test-reports/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-test-reports/pom.xml index 75e00c75590..b6b4040ad12 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-test-reports/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-test-reports/pom.xml @@ -199,7 +199,7 @@ org.finos.legend.engine - legend-engine-query-pure + legend-engine-core-query-pure-rest * @@ -219,7 +219,7 @@ org.finos.legend.engine - legend-engine-server + legend-engine-server-rest * diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-trino/legend-engine-xt-relationalStore-trino-grammar/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-trino/legend-engine-xt-relationalStore-trino-grammar/pom.xml index 6e599aebca1..00c6af04cfb 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-trino/legend-engine-xt-relationalStore-trino-grammar/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-trino/legend-engine-xt-relationalStore-trino-grammar/pom.xml @@ -157,7 +157,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json test diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-trino/legend-engine-xt-relationalStore-trino-pure/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-trino/legend-engine-xt-relationalStore-trino-pure/pom.xml index 7ce4deb2f7a..04e49634a0f 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-trino/legend-engine-xt-relationalStore-trino-pure/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-trino/legend-engine-xt-relationalStore-trino-pure/pom.xml @@ -53,7 +53,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/legend-engine-xt-relationalStore-executionPlan-authorizer/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/legend-engine-xt-relationalStore-executionPlan-authorizer/pom.xml index 49249944778..4dd5cca7b30 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/legend-engine-xt-relationalStore-executionPlan-authorizer/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/legend-engine-xt-relationalStore-executionPlan-authorizer/pom.xml @@ -115,7 +115,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json ${legend.pure.version} test diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/legend-engine-xt-relationalStore-executionPlan-rest/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/legend-engine-xt-relationalStore-executionPlan-rest/pom.xml new file mode 100644 index 00000000000..901660574cc --- /dev/null +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/legend-engine-xt-relationalStore-executionPlan-rest/pom.xml @@ -0,0 +1,49 @@ + + + + + + org.finos.legend.engine + legend-engine-xt-relationalStore-execution + 4.40.4-SNAPSHOT + + 4.0.0 + + legend-engine-xt-relationalStore-executionPlan-rest + jar + Legend Engine - XT - Relational Store - Execution Plan - Rest + + + + + org.finos.legend.engine + legend-engine-xt-relationalStore-executionPlan-connection + + + + + + javax.ws.rs + javax.ws.rs-api + + + io.swagger + swagger-annotations + + + + diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/legend-engine-xt-relationalStore-executionPlan/src/main/java/org/finos/legend/engine/plan/execution/stores/relational/api/RelationalExecutorInformation.java b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/legend-engine-xt-relationalStore-executionPlan-rest/src/main/java/org/finos/legend/engine/plan/execution/stores/relational/api/RelationalExecutorInformation.java similarity index 99% rename from legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/legend-engine-xt-relationalStore-executionPlan/src/main/java/org/finos/legend/engine/plan/execution/stores/relational/api/RelationalExecutorInformation.java rename to legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/legend-engine-xt-relationalStore-executionPlan-rest/src/main/java/org/finos/legend/engine/plan/execution/stores/relational/api/RelationalExecutorInformation.java index d2c64825939..829bc06318e 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/legend-engine-xt-relationalStore-executionPlan/src/main/java/org/finos/legend/engine/plan/execution/stores/relational/api/RelationalExecutorInformation.java +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/legend-engine-xt-relationalStore-executionPlan-rest/src/main/java/org/finos/legend/engine/plan/execution/stores/relational/api/RelationalExecutorInformation.java @@ -26,7 +26,6 @@ import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; - @Api(tags = "Server") @Path("server/v1") @Produces(MediaType.APPLICATION_JSON) diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/legend-engine-xt-relationalStore-executionPlan/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/legend-engine-xt-relationalStore-executionPlan/pom.xml index e55c6bbc856..5341f7eaee5 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/legend-engine-xt-relationalStore-executionPlan/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/legend-engine-xt-relationalStore-executionPlan/pom.xml @@ -242,17 +242,6 @@ - - - javax.ws.rs - javax.ws.rs-api - - - io.swagger - swagger-annotations - - - junit @@ -286,7 +275,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json test @@ -341,7 +330,7 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure test @@ -349,6 +338,11 @@ legend-engine-xt-javaPlatformBinding-pure test + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-externalFormat-pure + test + org.finos.legend.engine legend-engine-xt-relationalStore-javaPlatformBinding-pure diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/pom.xml index d95d76ff28d..c626e864ec3 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-execution/pom.xml @@ -28,6 +28,7 @@ legend-engine-xt-relationalStore-executionPlan + legend-engine-xt-relationalStore-executionPlan-rest legend-engine-xt-relationalStore-executionPlan-authorizer legend-engine-xt-relationalStore-executionPlan-connection legend-engine-xt-relationalStore-executionPlan-connection-api diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-generation/legend-engine-xt-relationalStore-grammar/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-generation/legend-engine-xt-relationalStore-grammar/pom.xml index e12fec4b632..da462ae8cb6 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-generation/legend-engine-xt-relationalStore-grammar/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-generation/legend-engine-xt-relationalStore-grammar/pom.xml @@ -115,16 +115,16 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-store-relational + legend-pure-runtime-java-extension-compiled-store-relational org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-store + legend-pure-runtime-java-extension-compiled-dsl-store org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-mapping + legend-pure-runtime-java-extension-compiled-dsl-mapping @@ -143,6 +143,10 @@ org.finos.legend.engine legend-engine-pure-platform-dsl-mapping-java + + org.finos.legend.engine + legend-engine-pure-platform-dsl-store-java + org.finos.legend.engine legend-engine-xt-relationalStore-pure @@ -182,7 +186,7 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-compiler @@ -268,7 +272,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json test diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-generation/legend-engine-xt-relationalStore-javaPlatformBinding-pure/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-generation/legend-engine-xt-relationalStore-javaPlatformBinding-pure/pom.xml index 6ea0416743a..bbbc1d02cb2 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-generation/legend-engine-xt-relationalStore-javaPlatformBinding-pure/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-generation/legend-engine-xt-relationalStore-javaPlatformBinding-pure/pom.xml @@ -97,6 +97,11 @@ legend-engine-xt-javaPlatformBinding-pure ${project.version} + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-externalFormat-pure + ${project.version} + @@ -166,6 +171,11 @@ legend-engine-xt-javaPlatformBinding-pure ${project.version} + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-externalFormat-pure + ${project.version} + @@ -230,6 +240,10 @@ org.finos.legend.engine legend-engine-pure-platform-dsl-mapping-java + + org.finos.legend.engine + legend-engine-pure-platform-dsl-store-java + org.finos.legend.engine legend-engine-xt-relationalStore-pure @@ -242,6 +256,10 @@ org.finos.legend.engine legend-engine-xt-javaPlatformBinding-pure + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-externalFormat-pure + @@ -263,6 +281,11 @@ legend-engine-language-pure-compiler test + + com.h2database + h2 + test + diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-generation/legend-engine-xt-relationalStore-javaPlatformBinding-pure/src/main/resources/core_relational_java_platform_binding.definition.json b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-generation/legend-engine-xt-relationalStore-javaPlatformBinding-pure/src/main/resources/core_relational_java_platform_binding.definition.json index 21462974c87..6091b3cb037 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-generation/legend-engine-xt-relationalStore-javaPlatformBinding-pure/src/main/resources/core_relational_java_platform_binding.definition.json +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-generation/legend-engine-xt-relationalStore-javaPlatformBinding-pure/src/main/resources/core_relational_java_platform_binding.definition.json @@ -11,6 +11,7 @@ "core", "core_relational", "core_external_language_java", - "core_java_platform_binding" + "core_java_platform_binding", + "core_java_platform_binding_external_format" ] } \ No newline at end of file diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-generation/legend-engine-xt-relationalStore-pure/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-generation/legend-engine-xt-relationalStore-pure/pom.xml index c066c4d7976..046e4655545 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-generation/legend-engine-xt-relationalStore-pure/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-generation/legend-engine-xt-relationalStore-pure/pom.xml @@ -39,7 +39,7 @@ org.finos.legend.engine:legend-engine-pure-platform-dsl-store-java - org.finos.legend.pure:legend-pure-runtime-java-extension-dsl-store + org.finos.legend.pure:legend-pure-runtime-java-extension-compiled-dsl-store @@ -69,7 +69,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -195,13 +195,13 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-store-relational + legend-pure-runtime-java-extension-compiled-store-relational ${legend.pure.version} org.finos.legend.pure - legend-pure-runtime-java-extension-functions-relation + legend-pure-runtime-java-extension-compiled-functions-relation ${legend.pure.version} @@ -323,15 +323,15 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-store-relational + legend-pure-runtime-java-extension-compiled-store-relational org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-shared-functions-json org.finos.legend.pure - legend-pure-runtime-java-extension-functions-relation + legend-pure-runtime-java-extension-compiled-functions-relation org.finos.legend.engine @@ -339,30 +339,30 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-store + legend-pure-runtime-java-extension-compiled-dsl-store org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-mapping + legend-pure-runtime-java-extension-compiled-dsl-mapping runtime org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-diagram + legend-pure-runtime-java-extension-compiled-dsl-diagram runtime org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-path + legend-pure-runtime-java-extension-compiled-dsl-path runtime org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-tds + legend-pure-runtime-java-extension-compiled-dsl-tds org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-graph + legend-pure-runtime-java-extension-compiled-dsl-graph runtime @@ -381,6 +381,11 @@ junit junit + + com.h2database + h2 + test + org.finos.legend.pure legend-pure-m2-functions-json-pure diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-test/legend-engine-xt-relationalStore-test-mutation/pom.xml b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-test/legend-engine-xt-relationalStore-test-mutation/pom.xml index a71310a5e74..36e85d3d532 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-test/legend-engine-xt-relationalStore-test-mutation/pom.xml +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-test/legend-engine-xt-relationalStore-test-mutation/pom.xml @@ -72,7 +72,7 @@ org.finos.legend.engine - legend-engine-xt-javaPlatformBinding-pure + legend-engine-xt-javaPlatformBinding-externalFormat-pure ${project.version} @@ -140,7 +140,7 @@ org.finos.legend.engine - legend-engine-xt-javaPlatformBinding-pure + legend-engine-xt-javaPlatformBinding-externalFormat-pure ${project.version} @@ -218,7 +218,7 @@ org.finos.legend.engine - legend-engine-xt-javaPlatformBinding-pure + legend-engine-xt-javaPlatformBinding-externalFormat-pure org.finos.legend.engine @@ -275,6 +275,11 @@ jackson-core test + + com.h2database + h2 + test + diff --git a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-test/legend-engine-xt-relationalStore-test-mutation/src/main/resources/core_relational_mutation_execution_test.definition.json b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-test/legend-engine-xt-relationalStore-test-mutation/src/main/resources/core_relational_mutation_execution_test.definition.json index 47b10b3a452..e52388715ee 100644 --- a/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-test/legend-engine-xt-relationalStore-test-mutation/src/main/resources/core_relational_mutation_execution_test.definition.json +++ b/legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-test/legend-engine-xt-relationalStore-test-mutation/src/main/resources/core_relational_mutation_execution_test.definition.json @@ -13,6 +13,7 @@ "platform_functions_json", "platform_store_relational", "core_java_platform_binding", + "core_java_platform_binding_external_format", "core_external_format_json", "core_external_format_json_java_platform_binding" ] diff --git a/legend-engine-xts-rosetta/legend-engine-xt-rosetta-pure/pom.xml b/legend-engine-xts-rosetta/legend-engine-xt-rosetta-pure/pom.xml index 6768c413238..0538d96d772 100644 --- a/legend-engine-xts-rosetta/legend-engine-xt-rosetta-pure/pom.xml +++ b/legend-engine-xts-rosetta/legend-engine-xt-rosetta-pure/pom.xml @@ -50,7 +50,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} diff --git a/legend-engine-xts-service/legend-engine-language-pure-dsl-service-generation/pom.xml b/legend-engine-xts-service/legend-engine-language-pure-dsl-service-generation/pom.xml index 1ad18e82c4a..bae5952f316 100644 --- a/legend-engine-xts-service/legend-engine-language-pure-dsl-service-generation/pom.xml +++ b/legend-engine-xts-service/legend-engine-language-pure-dsl-service-generation/pom.xml @@ -71,7 +71,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java @@ -154,7 +154,12 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure + test + + + com.h2database + h2 test diff --git a/legend-engine-xts-service/legend-engine-language-pure-dsl-service-pure/pom.xml b/legend-engine-xts-service/legend-engine-language-pure-dsl-service-pure/pom.xml index f5e8122e11f..396bd5c4599 100644 --- a/legend-engine-xts-service/legend-engine-language-pure-dsl-service-pure/pom.xml +++ b/legend-engine-xts-service/legend-engine-language-pure-dsl-service-pure/pom.xml @@ -53,7 +53,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -101,7 +101,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -173,7 +173,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java org.finos.legend.engine diff --git a/legend-engine-xts-service/legend-engine-language-pure-dsl-service-pure/src/main/resources/core_service.definition.json b/legend-engine-xts-service/legend-engine-language-pure-dsl-service-pure/src/main/resources/core_service.definition.json index 708d7b011ee..cef481b5090 100644 --- a/legend-engine-xts-service/legend-engine-language-pure-dsl-service-pure/src/main/resources/core_service.definition.json +++ b/legend-engine-xts-service/legend-engine-language-pure-dsl-service-pure/src/main/resources/core_service.definition.json @@ -6,6 +6,7 @@ "platform_functions", "platform_dsl_diagram", "platform_dsl_mapping", + "platform_dsl_store", "core_functions", "core", "core_data_space_metamodel" diff --git a/legend-engine-xts-service/legend-engine-language-pure-dsl-service/pom.xml b/legend-engine-xts-service/legend-engine-language-pure-dsl-service/pom.xml index 85d41bb2de4..de62935c1a4 100644 --- a/legend-engine-xts-service/legend-engine-language-pure-dsl-service/pom.xml +++ b/legend-engine-xts-service/legend-engine-language-pure-dsl-service/pom.xml @@ -99,7 +99,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java @@ -179,7 +179,7 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-core test diff --git a/legend-engine-xts-service/legend-engine-service-post-validation-runner/pom.xml b/legend-engine-xts-service/legend-engine-service-post-validation-runner/pom.xml index f6343c525f4..d4578218d2e 100644 --- a/legend-engine-xts-service/legend-engine-service-post-validation-runner/pom.xml +++ b/legend-engine-xts-service/legend-engine-service-post-validation-runner/pom.xml @@ -43,7 +43,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java org.finos.legend.engine @@ -143,7 +143,7 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure test diff --git a/legend-engine-xts-service/legend-engine-services-model/pom.xml b/legend-engine-xts-service/legend-engine-services-model/pom.xml index cec468f9d2b..efa30ee8d15 100644 --- a/legend-engine-xts-service/legend-engine-services-model/pom.xml +++ b/legend-engine-xts-service/legend-engine-services-model/pom.xml @@ -79,7 +79,7 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure runtime diff --git a/legend-engine-xts-service/legend-engine-test-runner-service/pom.xml b/legend-engine-xts-service/legend-engine-test-runner-service/pom.xml index 9ea84726dbc..b664097d441 100644 --- a/legend-engine-xts-service/legend-engine-test-runner-service/pom.xml +++ b/legend-engine-xts-service/legend-engine-test-runner-service/pom.xml @@ -63,6 +63,10 @@ org.finos.legend.engine legend-engine-pure-platform-dsl-mapping-java + + org.finos.legend.engine + legend-engine-pure-platform-dsl-store-java + org.finos.legend.engine legend-engine-xt-relationalStore-pure @@ -205,7 +209,12 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure + test + + + org.finos.legend.engine + legend-engine-configuration-plan-generation-serialization test diff --git a/legend-engine-xts-serviceStore/legend-engine-xt-serviceStore-executionPlan/pom.xml b/legend-engine-xts-serviceStore/legend-engine-xt-serviceStore-executionPlan/pom.xml index 60ad9092eaf..b32f8365e43 100644 --- a/legend-engine-xts-serviceStore/legend-engine-xt-serviceStore-executionPlan/pom.xml +++ b/legend-engine-xts-serviceStore/legend-engine-xt-serviceStore-executionPlan/pom.xml @@ -266,7 +266,27 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-core + test + + + org.finos.legend.engine + legend-engine-external-format-grammar + test + + + org.finos.legend.engine + legend-engine-external-format-compiler + test + + + org.finos.legend.engine + legend-engine-external-format-generation + test + + + org.finos.legend.engine + legend-engine-external-shared-format-runtime test @@ -301,7 +321,12 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure + test + + + org.finos.legend.engine + legend-engine-configuration-plan-generation-serialization test @@ -309,6 +334,11 @@ legend-engine-xt-javaPlatformBinding-pure test + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-externalFormat-pure + test + org.finos.legend.engine legend-engine-xt-serviceStore-javaPlatformBinding-pure @@ -324,6 +354,11 @@ legend-engine-xt-flatdata-javaPlatformBinding-pure test + + org.finos.legend.engine + legend-engine-xt-flatdata-shared + test + org.finos.legend.pure legend-pure-m2-dsl-mapping-pure diff --git a/legend-engine-xts-serviceStore/legend-engine-xt-serviceStore-grammar/pom.xml b/legend-engine-xts-serviceStore/legend-engine-xt-serviceStore-grammar/pom.xml index e35472dbe5d..a128c2fca3e 100644 --- a/legend-engine-xts-serviceStore/legend-engine-xt-serviceStore-grammar/pom.xml +++ b/legend-engine-xts-serviceStore/legend-engine-xt-serviceStore-grammar/pom.xml @@ -103,11 +103,11 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-mapping + legend-pure-runtime-java-extension-compiled-dsl-mapping org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-path + legend-pure-runtime-java-extension-compiled-dsl-path org.finos.legend.engine @@ -119,7 +119,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java org.finos.legend.engine @@ -176,7 +176,31 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-core + + + org.finos.legend.engine + legend-engine-external-format-grammar + runtime + + + org.finos.legend.engine + legend-engine-external-format-generation + runtime + + + org.finos.legend.engine + legend-engine-external-format-compiler + + + org.finos.legend.engine + legend-engine-xt-flatdata-pure + test + + + org.finos.legend.engine + legend-engine-xt-flatdata-shared + test @@ -220,7 +244,7 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-example test-jar test diff --git a/legend-engine-xts-serviceStore/legend-engine-xt-serviceStore-javaPlatformBinding-pure/pom.xml b/legend-engine-xts-serviceStore/legend-engine-xt-serviceStore-javaPlatformBinding-pure/pom.xml index 6073493ad35..c21edf6d6dd 100644 --- a/legend-engine-xts-serviceStore/legend-engine-xt-serviceStore-javaPlatformBinding-pure/pom.xml +++ b/legend-engine-xts-serviceStore/legend-engine-xt-serviceStore-javaPlatformBinding-pure/pom.xml @@ -97,6 +97,11 @@ legend-engine-xt-javaPlatformBinding-pure ${project.version} + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-externalFormat-pure + ${project.version} + @@ -166,6 +171,11 @@ legend-engine-xt-javaPlatformBinding-pure ${project.version} + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-externalFormat-pure + ${project.version} + @@ -204,7 +214,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-mapping + legend-pure-runtime-java-extension-compiled-dsl-mapping runtime @@ -228,6 +238,10 @@ org.finos.legend.engine legend-engine-xt-javaPlatformBinding-pure + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-externalFormat-pure + diff --git a/legend-engine-xts-serviceStore/legend-engine-xt-serviceStore-javaPlatformBinding-pure/src/main/resources/core_servicestore_java_platform_binding.definition.json b/legend-engine-xts-serviceStore/legend-engine-xt-serviceStore-javaPlatformBinding-pure/src/main/resources/core_servicestore_java_platform_binding.definition.json index 358552a3cf9..14e0941d263 100644 --- a/legend-engine-xts-serviceStore/legend-engine-xt-serviceStore-javaPlatformBinding-pure/src/main/resources/core_servicestore_java_platform_binding.definition.json +++ b/legend-engine-xts-serviceStore/legend-engine-xt-serviceStore-javaPlatformBinding-pure/src/main/resources/core_servicestore_java_platform_binding.definition.json @@ -9,6 +9,7 @@ "core_external_format_json", "core_servicestore", "core_external_language_java", - "core_java_platform_binding" + "core_java_platform_binding", + "core_java_platform_binding_external_format" ] } \ No newline at end of file diff --git a/legend-engine-xts-serviceStore/legend-engine-xt-serviceStore-pure/pom.xml b/legend-engine-xts-serviceStore/legend-engine-xt-serviceStore-pure/pom.xml index 9ba66b0f556..0b21e7343d4 100644 --- a/legend-engine-xts-serviceStore/legend-engine-xt-serviceStore-pure/pom.xml +++ b/legend-engine-xts-serviceStore/legend-engine-xt-serviceStore-pure/pom.xml @@ -38,9 +38,9 @@ - org.finos.legend.pure:legend-pure-runtime-java-extension-store-relational - org.finos.legend.pure:legend-pure-runtime-java-extension-functions-json - org.finos.legend.pure:legend-pure-runtime-java-extension-dsl-store + org.finos.legend.pure:legend-pure-runtime-java-extension-compiled-store-relational + org.finos.legend.pure:legend-pure-runtime-java-extension-compiled-functions-json + org.finos.legend.pure:legend-pure-runtime-java-extension-compiled-dsl-store org.finos.legend.engine:legend-engine-pure-platform-dsl-store-java @@ -71,7 +71,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -207,7 +207,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-graph + legend-pure-runtime-java-extension-compiled-dsl-graph @@ -256,15 +256,15 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json org.finos.legend.pure - legend-pure-runtime-java-extension-store-relational + legend-pure-runtime-java-extension-compiled-store-relational org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-store + legend-pure-runtime-java-extension-compiled-dsl-store org.finos.legend.engine @@ -272,12 +272,12 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-mapping + legend-pure-runtime-java-extension-compiled-dsl-mapping runtime org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-path + legend-pure-runtime-java-extension-compiled-dsl-path runtime diff --git a/legend-engine-xts-snowflakeApp/legend-engine-xt-snowflakeApp-api/pom.xml b/legend-engine-xts-snowflakeApp/legend-engine-xt-snowflakeApp-api/pom.xml index a6a350d2544..715793aff30 100644 --- a/legend-engine-xts-snowflakeApp/legend-engine-xt-snowflakeApp-api/pom.xml +++ b/legend-engine-xts-snowflakeApp/legend-engine-xt-snowflakeApp-api/pom.xml @@ -165,7 +165,7 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure test diff --git a/legend-engine-xts-snowflakeApp/legend-engine-xt-snowflakeApp-generator/pom.xml b/legend-engine-xts-snowflakeApp/legend-engine-xt-snowflakeApp-generator/pom.xml index 41a97ecf9d2..01affac46a3 100644 --- a/legend-engine-xts-snowflakeApp/legend-engine-xt-snowflakeApp-generator/pom.xml +++ b/legend-engine-xts-snowflakeApp/legend-engine-xt-snowflakeApp-generator/pom.xml @@ -184,7 +184,7 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure test diff --git a/legend-engine-xts-snowflakeApp/legend-engine-xt-snowflakeApp-pure/pom.xml b/legend-engine-xts-snowflakeApp/legend-engine-xt-snowflakeApp-pure/pom.xml index b83e7f72cb7..96f2108ff61 100644 --- a/legend-engine-xts-snowflakeApp/legend-engine-xt-snowflakeApp-pure/pom.xml +++ b/legend-engine-xts-snowflakeApp/legend-engine-xt-snowflakeApp-pure/pom.xml @@ -140,6 +140,10 @@ org.finos.legend.engine legend-engine-pure-platform-dsl-mapping-java + + org.finos.legend.engine + legend-engine-pure-platform-dsl-store-java + org.finos.legend.engine legend-engine-pure-platform-store-relational-java diff --git a/legend-engine-xts-snowflakeApp/legend-engine-xt-snowflakeApp-pure/src/main/resources/core_snowflakeapp.definition.json b/legend-engine-xts-snowflakeApp/legend-engine-xt-snowflakeApp-pure/src/main/resources/core_snowflakeapp.definition.json index 9fb456e44dd..dbce5169a1f 100644 --- a/legend-engine-xts-snowflakeApp/legend-engine-xt-snowflakeApp-pure/src/main/resources/core_snowflakeapp.definition.json +++ b/legend-engine-xts-snowflakeApp/legend-engine-xt-snowflakeApp-pure/src/main/resources/core_snowflakeapp.definition.json @@ -5,7 +5,7 @@ "core", "platform", "platform_dsl_graph", - "platform_dsl_mapping", + "platform_dsl_store", "platform_store_relational", "platform_functions", "platform_functions_json", diff --git a/legend-engine-xts-sql/legend-engine-xt-sql-compiler/pom.xml b/legend-engine-xts-sql/legend-engine-xt-sql-compiler/pom.xml index bd8f60a1fe7..f0674ea6264 100644 --- a/legend-engine-xts-sql/legend-engine-xt-sql-compiler/pom.xml +++ b/legend-engine-xts-sql/legend-engine-xt-sql-compiler/pom.xml @@ -109,7 +109,7 @@ - org.finos.legend.pure:legend-pure-runtime-java-extension-dsl-mapping + org.finos.legend.pure:legend-pure-runtime-java-extension-compiled-dsl-mapping diff --git a/legend-engine-xts-sql/legend-engine-xt-sql-postgres-server/pom.xml b/legend-engine-xts-sql/legend-engine-xt-sql-postgres-server/pom.xml index 39e2e091805..fecc704dc36 100644 --- a/legend-engine-xts-sql/legend-engine-xt-sql-postgres-server/pom.xml +++ b/legend-engine-xts-sql/legend-engine-xt-sql-postgres-server/pom.xml @@ -305,12 +305,12 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure test org.finos.legend.engine - legend-engine-pure-code-compiled-core-configuration + legend-engine-configuration-plan-generation-serialization test diff --git a/legend-engine-xts-sql/legend-engine-xt-sql-protocol/pom.xml b/legend-engine-xts-sql/legend-engine-xt-sql-protocol/pom.xml index 1abe0e0abbc..ea9d2ffaeb9 100644 --- a/legend-engine-xts-sql/legend-engine-xt-sql-protocol/pom.xml +++ b/legend-engine-xts-sql/legend-engine-xt-sql-protocol/pom.xml @@ -82,7 +82,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-store-relational + legend-pure-runtime-java-extension-compiled-store-relational ${legend.pure.version} diff --git a/legend-engine-xts-sql/legend-engine-xt-sql-pure/pom.xml b/legend-engine-xts-sql/legend-engine-xt-sql-pure/pom.xml index 6faf99c14e4..4139ba02763 100644 --- a/legend-engine-xts-sql/legend-engine-xt-sql-pure/pom.xml +++ b/legend-engine-xts-sql/legend-engine-xt-sql-pure/pom.xml @@ -146,7 +146,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-mapping + legend-pure-runtime-java-extension-compiled-dsl-mapping ${legend.pure.version} @@ -205,7 +205,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-mapping + legend-pure-runtime-java-extension-compiled-dsl-mapping org.finos.legend.pure @@ -238,6 +238,10 @@ org.finos.legend.engine legend-engine-pure-platform-dsl-mapping-java + + org.finos.legend.engine + legend-engine-pure-platform-dsl-store-java + org.finos.legend.engine @@ -319,6 +323,11 @@ legend-engine-xt-sql-grammar-integration test + + com.h2database + h2 + test + diff --git a/legend-engine-xts-sql/legend-engine-xt-sql-pure/src/main/resources/core_external_query_sql.definition.json b/legend-engine-xts-sql/legend-engine-xt-sql-pure/src/main/resources/core_external_query_sql.definition.json index 7065dec99ec..37ca03f240d 100644 --- a/legend-engine-xts-sql/legend-engine-xt-sql-pure/src/main/resources/core_external_query_sql.definition.json +++ b/legend-engine-xts-sql/legend-engine-xt-sql-pure/src/main/resources/core_external_query_sql.definition.json @@ -5,6 +5,7 @@ "platform", "platform_functions", "platform_dsl_mapping", + "platform_dsl_store", "platform_store_relational", "core_functions", "core", diff --git a/legend-engine-xts-sql/legend-engine-xt-sql-query/pom.xml b/legend-engine-xts-sql/legend-engine-xt-sql-query/pom.xml index e5628e26b27..d3cee2cfe13 100644 --- a/legend-engine-xts-sql/legend-engine-xt-sql-query/pom.xml +++ b/legend-engine-xts-sql/legend-engine-xt-sql-query/pom.xml @@ -70,7 +70,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java org.finos.legend.engine @@ -205,7 +205,12 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure + test + + + org.finos.legend.engine + legend-engine-configuration-plan-generation-serialization test @@ -224,12 +229,6 @@ jersey-common test - - org.finos.legend.engine - legend-engine-external-shared-format-model - test-jar - test - io.dropwizard dropwizard-testing diff --git a/legend-engine-xts-xml/legend-engine-xt-xml-javaPlatformBinding-pure/pom.xml b/legend-engine-xts-xml/legend-engine-xt-xml-javaPlatformBinding-pure/pom.xml index 2d8be545149..8164c8abf93 100644 --- a/legend-engine-xts-xml/legend-engine-xt-xml-javaPlatformBinding-pure/pom.xml +++ b/legend-engine-xts-xml/legend-engine-xt-xml-javaPlatformBinding-pure/pom.xml @@ -15,7 +15,8 @@ limitations under the License. --> - + org.finos.legend.engine legend-engine-xts-xml @@ -89,6 +90,11 @@ legend-engine-xt-javaPlatformBinding-pure ${project.version} + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-externalFormat-pure + ${project.version} + @@ -148,6 +154,12 @@ legend-engine-xt-javaPlatformBinding-pure ${project.version} + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-externalFormat-pure + ${project.version} + + @@ -208,7 +220,13 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-xt-javaPlatformBinding-externalFormat-pure + + + + + org.finos.legend.engine + legend-engine-pure-platform-dsl-store-java diff --git a/legend-engine-xts-xml/legend-engine-xt-xml-javaPlatformBinding-pure/src/main/resources/core_external_format_xml_java_platform_binding.definition.json b/legend-engine-xts-xml/legend-engine-xt-xml-javaPlatformBinding-pure/src/main/resources/core_external_format_xml_java_platform_binding.definition.json index 2838ff1bdcc..30e2354bd9a 100644 --- a/legend-engine-xts-xml/legend-engine-xt-xml-javaPlatformBinding-pure/src/main/resources/core_external_format_xml_java_platform_binding.definition.json +++ b/legend-engine-xts-xml/legend-engine-xt-xml-javaPlatformBinding-pure/src/main/resources/core_external_format_xml_java_platform_binding.definition.json @@ -7,6 +7,6 @@ "core", "core_external_format_xml", "core_external_language_java", - "core_java_platform_binding" - ] + "core_java_platform_binding", + "core_java_platform_binding_external_format"] } \ No newline at end of file diff --git a/legend-engine-xts-xml/legend-engine-xt-xml-model/pom.xml b/legend-engine-xts-xml/legend-engine-xt-xml-model/pom.xml index f60e24bad23..d43894070d2 100644 --- a/legend-engine-xts-xml/legend-engine-xt-xml-model/pom.xml +++ b/legend-engine-xts-xml/legend-engine-xt-xml-model/pom.xml @@ -29,6 +29,20 @@ + + org.finos.legend.engine + legend-engine-external-format-grammar + runtime + + + org.finos.legend.engine + legend-engine-external-format-compiler + runtime + + + org.finos.legend.engine + legend-engine-external-format-generation + org.finos.legend.engine legend-engine-xt-xml-shared @@ -43,14 +57,14 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-core org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json runtime @@ -83,7 +97,7 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-example test-jar test diff --git a/legend-engine-xts-xml/legend-engine-xt-xml-pure/pom.xml b/legend-engine-xts-xml/legend-engine-xt-xml-pure/pom.xml index 3aab2a27fce..306b4f91c25 100644 --- a/legend-engine-xts-xml/legend-engine-xt-xml-pure/pom.xml +++ b/legend-engine-xts-xml/legend-engine-xt-xml-pure/pom.xml @@ -71,7 +71,7 @@ org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version} @@ -183,7 +183,7 @@ org.finos.legend.engine - legend-engine-pure-platform-dsl-mapping-java + legend-engine-pure-platform-dsl-store-java diff --git a/legend-engine-xts-xml/legend-engine-xt-xml-runtime/pom.xml b/legend-engine-xts-xml/legend-engine-xt-xml-runtime/pom.xml index cd0c031659e..0d39940d7a6 100644 --- a/legend-engine-xts-xml/legend-engine-xt-xml-runtime/pom.xml +++ b/legend-engine-xts-xml/legend-engine-xt-xml-runtime/pom.xml @@ -170,7 +170,7 @@ org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-core test diff --git a/pom.xml b/pom.xml index b42c6fe86a7..70c5aca8c01 100644 --- a/pom.xml +++ b/pom.xml @@ -104,7 +104,7 @@ - 5.1.3 + 5.2.1 0.25.4 @@ -816,6 +816,11 @@ legend-engine-xt-relationalStore-executionPlan ${project.version} + + org.finos.legend.engine + legend-engine-xt-relationalStore-executionPlan-rest + ${project.version} + org.finos.legend.engine legend-engine-xt-relationalStore-connection @@ -1670,7 +1675,7 @@ org.finos.legend.engine - legend-engine-query-pure + legend-engine-core-query-pure-rest ${project.version} @@ -1816,7 +1821,7 @@ org.finos.legend.engine - legend-engine-server + legend-engine-server-rest ${project.version} @@ -1886,7 +1891,12 @@ org.finos.legend.engine - legend-engine-configuration + legend-engine-configuration-contract-extension-pure + ${project.version} + + + org.finos.legend.engine + legend-engine-configuration-plan-generation-serialization ${project.version} @@ -1904,17 +1914,39 @@ legend-engine-external-shared ${project.version} + org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-api ${project.version} org.finos.legend.engine - legend-engine-external-shared-format-model + legend-engine-external-format-compiler ${project.version} + + + org.finos.legend.engine + legend-engine-external-format-core + ${project.version} + + + org.finos.legend.engine + legend-engine-external-format-generation + ${project.version} + + + org.finos.legend.engine + legend-engine-external-format-grammar + ${project.version} + + + org.finos.legend.engine + legend-engine-external-format-example test-jar + ${project.version} + org.finos.legend.engine legend-engine-external-shared-format-runtime @@ -2018,7 +2050,12 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions + legend-pure-runtime-java-extension-compiled-functions-base + ${legend.pure.version} + + + org.finos.legend.pure + legend-pure-runtime-java-extension-interpreted-functions-base ${legend.pure.version} @@ -2033,7 +2070,17 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-shared-conversion + legend-pure-runtime-java-extension-shared-store-relational + ${legend.pure.version} + + + org.finos.legend.pure + legend-pure-runtime-java-extension-shared-functions-conversion + ${legend.pure.version} + + + org.finos.legend.pure + legend-pure-runtime-java-extension-shared-functions-json ${legend.pure.version} @@ -2071,6 +2118,11 @@ legend-engine-xt-javaPlatformBinding-pure ${project.version} + + org.finos.legend.engine + legend-engine-xt-javaPlatformBinding-externalFormat-pure + ${project.version} + org.finos.legend.engine legend-engine-xt-flatdata-javaPlatformBinding-pure @@ -2096,11 +2148,6 @@ legend-engine-xt-serviceStore-javaPlatformBinding-pure ${project.version} - - org.finos.legend.engine - legend-engine-pure-code-compiled-core-configuration - ${project.version} - org.finos.legend.engine @@ -2345,7 +2392,17 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-json + legend-pure-runtime-java-extension-compiled-functions-json + ${legend.pure.version} + + + org.finos.legend.pure + legend-pure-runtime-java-extension-interpreted-functions-json + ${legend.pure.version} + + + org.finos.legend.pure + legend-pure-runtime-java-extension-interpreted-store-relational ${legend.pure.version} @@ -2395,7 +2452,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-relation + legend-pure-runtime-java-extension-compiled-functions-relation ${legend.pure.version} @@ -2415,7 +2472,7 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-functions-relation + legend-pure-runtime-java-extension-compiled-functions-relation ${legend.pure.version} @@ -2430,32 +2487,32 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-diagram + legend-pure-runtime-java-extension-compiled-dsl-diagram ${legend.pure.version} org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-graph + legend-pure-runtime-java-extension-compiled-dsl-graph ${legend.pure.version} org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-mapping + legend-pure-runtime-java-extension-compiled-dsl-mapping ${legend.pure.version} org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-store + legend-pure-runtime-java-extension-compiled-dsl-store ${legend.pure.version} org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-path + legend-pure-runtime-java-extension-compiled-dsl-path ${legend.pure.version} org.finos.legend.pure - legend-pure-runtime-java-extension-dsl-tds + legend-pure-runtime-java-extension-compiled-dsl-tds ${legend.pure.version} @@ -2495,12 +2552,12 @@ org.finos.legend.pure - legend-pure-runtime-java-extension-store-relational + legend-pure-runtime-java-extension-compiled-store-relational ${legend.pure.version} org.finos.legend.pure - legend-pure-m2-functions-pure + legend-pure-m2-functions-base-pure ${legend.pure.version}