Skip to content

Commit

Permalink
Add 1_33_0 Pure Protocol files (#2370)
Browse files Browse the repository at this point in the history
* Fix protocol generation for Pure core

* Add 1_33_0 protocol files
  • Loading branch information
aziemchawdhary-gs authored Oct 16, 2023
1 parent 0c9b2cd commit 0e51390
Show file tree
Hide file tree
Showing 75 changed files with 9,605 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@

public class PureClientVersions
{
public static ImmutableList<String> versions = Lists.immutable.with("v1_0_0", "v1_1_0", "v1_2_0", "v1_3_0", "v1_4_0", "v1_5_0", "v1_6_0", "v1_7_0", "v1_8_0", "v1_9_0", "v1_10_0", "v1_11_0", "v1_12_0", "v1_13_0", "v1_14_0", "v1_15_0", "v1_16_0", "v1_17_0", "v1_18_0", "v1_19_0", "v1_20_0", "v1_21_0", "v1_22_0", "v1_23_0", "v1_24_0", "v1_25_0", "v1_26_0", "v1_27_0", "v1_28_0", "v1_29_0", "v1_30_0", "v1_31_0", "v1_32_0", "vX_X_X");
public static ImmutableList<String> versions = Lists.immutable.with("v1_0_0", "v1_1_0", "v1_2_0", "v1_3_0", "v1_4_0", "v1_5_0", "v1_6_0", "v1_7_0", "v1_8_0", "v1_9_0", "v1_10_0", "v1_11_0", "v1_12_0", "v1_13_0", "v1_14_0", "v1_15_0", "v1_16_0", "v1_17_0", "v1_18_0", "v1_19_0", "v1_20_0", "v1_21_0", "v1_22_0", "v1_23_0", "v1_24_0", "v1_25_0", "v1_26_0", "v1_27_0", "v1_28_0", "v1_29_0", "v1_30_0", "v1_31_0", "v1_32_0", "v1_33_0", "vX_X_X");
public static ImmutableList<String> versionsSameCase = versions.collect(String::toLowerCase);

static
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -372,7 +372,8 @@
<profile>
<id>generate-protocol-version</id>
<properties>
<folderPath>core/pure/binding/protocols/pure</folderPath>
<folderBindingPath>core/pure/binding/protocols/pure</folderBindingPath>
<folderCorePath>core/pure/binding/protocols/pure</folderCorePath>
</properties>
<build>
<plugins>
Expand All @@ -388,10 +389,15 @@
</goals>
<configuration>
<target name="protocol">
<copy todir="${basedir}/src/main/resources/${folderPath}/${protocol.TargetVersion}">
<fileset dir="${basedir}/src/main/resources/${folderPath}/${protocol.SourceVersion}" />
<copy todir="${basedir}/src/main/resources/${folderBindingPath}/${protocol.TargetVersion}">
<fileset dir="${basedir}/src/main/resources/${folderBindingPath}/${protocol.SourceVersion}" />
</copy>
<replace dir="${basedir}/src/main/resources/${folderPath}/${protocol.TargetVersion}" token="${protocol.SourceVersion}" value="${protocol.TargetVersion}" />
<replace dir="${basedir}/src/main/resources/${folderBindingPath}/${protocol.TargetVersion}" token="${protocol.SourceVersion}" value="${protocol.TargetVersion}" />
<copy todir="${basedir}/src/main/resources/${folderCorePath}/${protocol.TargetVersion}">
<fileset dir="${basedir}/src/main/resources/${folderCorePath}/${protocol.SourceVersion}" />
</copy>
<replace dir="${basedir}/src/main/resources/${folderCorePath}/${protocol.TargetVersion}" token="${protocol.SourceVersion}" value="${protocol.TargetVersion}" />

</target>
</configuration>
</execution>
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
// 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.

import meta::protocols::pure::v1_33_0::metamodel::executionPlan::*;
import meta::protocols::pure::v1_33_0::transformation::fromPureGraph::external::shared::format::*;
import meta::pure::mapping::*;
import meta::pure::extension::*;

function meta::protocols::pure::v1_33_0::external::shared::format::serializerExtension(type:String[1]): meta::pure::extension::SerializerExtension[1]
{
^meta::protocols::pure::v1_33_0::extension::SerializerExtension_v1_33_0(
transfers_executionPlan_transformNode =
{mapping:Mapping[1], extensions:Extension[*] |
[
d:meta::external::format::shared::executionPlan::ExternalFormatExternalizeExecutionNode[1] | transformExternalFormatExternalizeExecutionNode($d, $mapping, $extensions),
s:meta::external::format::shared::executionPlan::ExternalFormatInternalizeExecutionNode[1] | transformExternalFormatInternalizeExecutionNode($s, $mapping, $extensions),
t:meta::external::format::shared::executionPlan::ExternalFormatExternalizeTDSExecutionNode[1] | transformExternalFormatExternalizeTDSExecutionNode($t, $mapping, $extensions)

]
}
);
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
// 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.

import meta::protocols::pure::v1_33_0::metamodel::executionPlan::*;
import meta::protocols::pure::v1_33_0::metamodel::valueSpecification::raw::*;
import meta::protocols::pure::v1_33_0::transformation::fromPureGraph::external::shared::format::*;
import meta::pure::mapping::*;
import meta::pure::extension::*;

Class meta::protocols::pure::v1_33_0::metamodel::external::shared::format::executionPlan::ExternalFormatExternalizeExecutionNode extends ExecutionNode
{
contentType : String[1];
checked : Boolean[1];
binding : String[1];
}

Class meta::protocols::pure::v1_33_0::metamodel::external::shared::format::executionPlan::ExternalFormatExternalizeTDSExecutionNode extends ExecutionNode
{
contentType : String[1];
}

Class meta::protocols::pure::v1_33_0::metamodel::external::shared::format::executionPlan::ExternalFormatInternalizeExecutionNode extends ExecutionNode
{
contentType : String[1];
binding : String[1];
enableConstraints : Boolean[1];
checked : Boolean[1];
tree : RootGraphFetchTree[0..1];
}
Original file line number Diff line number Diff line change
@@ -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.

import meta::protocols::pure::v1_33_0::metamodel::executionPlan::*;
import meta::protocols::pure::v1_33_0::transformation::fromPureGraph::external::shared::format::*;
import meta::pure::mapping::*;
import meta::pure::extension::*;

function meta::protocols::pure::v1_33_0::transformation::fromPureGraph::external::shared::format::transformExternalFormatExternalizeExecutionNode(node:meta::external::format::shared::executionPlan::ExternalFormatExternalizeExecutionNode[1], mapping:meta::pure::mapping::Mapping[1], extensions:Extension[*]): ExecutionNode[1]
{
^meta::protocols::pure::v1_33_0::metamodel::external::shared::format::executionPlan::ExternalFormatExternalizeExecutionNode(
_type = 'externalFormatExternalize',
resultType = $node.resultType->meta::protocols::pure::v1_33_0::transformation::fromPureGraph::executionPlan::transformResultType($mapping, $extensions),
resultSizeRange = $node.resultSizeRange->map(s| $s->meta::protocols::pure::v1_33_0::transformation::fromPureGraph::domain::transformMultiplicity()),
checked = $node.checked,
binding = $node.binding->elementToPath(),
contentType = $node.binding.contentType
);
}

function meta::protocols::pure::v1_33_0::transformation::fromPureGraph::external::shared::format::transformExternalFormatExternalizeTDSExecutionNode(node:meta::external::format::shared::executionPlan::ExternalFormatExternalizeTDSExecutionNode[1], mapping:meta::pure::mapping::Mapping[1], extensions:Extension[*]): ExecutionNode[1]
{
^meta::protocols::pure::v1_33_0::metamodel::external::shared::format::executionPlan::ExternalFormatExternalizeTDSExecutionNode(
_type = 'externalFormatExternalizeTDS',
resultType = $node.resultType->meta::protocols::pure::v1_33_0::transformation::fromPureGraph::executionPlan::transformResultType($mapping, $extensions),
resultSizeRange = $node.resultSizeRange->map(s| $s->meta::protocols::pure::v1_33_0::transformation::fromPureGraph::domain::transformMultiplicity()),
contentType = $node.contentType
);
}

function meta::protocols::pure::v1_33_0::transformation::fromPureGraph::external::shared::format::transformExternalFormatInternalizeExecutionNode(node:meta::external::format::shared::executionPlan::ExternalFormatInternalizeExecutionNode[1], mapping:meta::pure::mapping::Mapping[1], extensions:Extension[*]): ExecutionNode[1]
{
^meta::protocols::pure::v1_33_0::metamodel::external::shared::format::executionPlan::ExternalFormatInternalizeExecutionNode(
_type = 'externalFormatInternalize',
resultType = $node.resultType->meta::protocols::pure::v1_33_0::transformation::fromPureGraph::executionPlan::transformResultType($mapping, $extensions),
resultSizeRange = $node.resultSizeRange->map(s| $s->meta::protocols::pure::v1_33_0::transformation::fromPureGraph::domain::transformMultiplicity()),
tree = $node.tree->map(t| $t->meta::protocols::pure::v1_33_0::transformation::fromPureGraph::valueSpecification::transformGraphFetchTree([], ^Map<String,List<Any>>(), $extensions))->cast(@meta::protocols::pure::v1_33_0::metamodel::valueSpecification::raw::RootGraphFetchTree),
binding = $node.binding->elementToPath(),
enableConstraints = $node.enableConstraints,
checked = $node.checked,
contentType = $node.binding.contentType
);
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
// 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.

import meta::pure::mapping::*;
import meta::pure::store::*;
import meta::pure::runtime::*;
import meta::json::*;

import meta::protocols::pure::v1_33_0::extension::*;

Class meta::protocols::pure::v1_33_0::extension::SerializerExtension_v1_33_0 extends meta::pure::extension::SerializerExtension
{
moduleSerializerExtensions : ModuleSerializerExtension[*];

moduleSerializerExtension(module:String[1])
{
$this.moduleSerializerExtensions->filter(f|$f.module == $module)->first()
} : ModuleSerializerExtension[0..1];

transfers_execute_transformActivity : Function<{Nil[1] -> meta::pure::mapping::Activity[1]}>[*];

transfers_mapping_transformMapping : Function<{SetImplementation[1]->Boolean[1]}>[*];
transfers_mapping_transformSetImplementation : Function<{Mapping[1]->Function<{Nil[1]->meta::protocols::pure::v1_33_0::metamodel::mapping::ClassMapping[1]}>[*]}>[0..1];
transfers_mapping_transformSetImplementation2 : Function<{Mapping[1], meta::pure::extension::Extension[*] ->Function<{Nil[1]->meta::protocols::pure::v1_33_0::metamodel::mapping::ClassMapping[1]}>[*]}>[0..1];
transfers_mapping_transformAssociationImplementation : Function<{Mapping[1], meta::pure::extension::Extension[*] -> Function<{Nil[1]->meta::protocols::pure::v1_33_0::metamodel::mapping::AssociationMapping[1]}>[*]}>[0..1];

transfers_valueSpecification_transformAny : Function<{String[*],Map<String,List<Any>>[1], Multiplicity[1], FunctionExpression[0..1], Boolean[1], meta::pure::extension::Extension[*]->Function<{Nil[1]->meta::protocols::pure::v1_33_0::metamodel::valueSpecification::ValueSpecification[1]}>[*]}>[0..1];

transfers_executionPlan_transformNode : Function<{Mapping[1], meta::pure::extension::Extension[*] -> Function<{Nil[1]->meta::protocols::pure::v1_33_0::metamodel::executionPlan::ExecutionNode[1]}>[*]}>[0..1];
transfers_executionPlan_transformNode_GraphFetchM2MExecutionNode : Function<{Nil[1]->meta::protocols::pure::v1_33_0::metamodel::store::Store[1]}>[*];
transfers_executionPlan_transformNode_StoreStreamReadingExecutionNode : Function<{Nil[1]->meta::protocols::pure::v1_33_0::metamodel::store::Store[1]}>[*];
transfers_executionPlan_transformResultType : Function<{Mapping[1], meta::pure::extension::Extension[*] -> Function<{Nil[1]->meta::protocols::pure::v1_33_0::metamodel::executionPlan::ResultType[1]}>[*]}>[0..1];
transfers_executionPlan_transformSetImplementation : Pair<Function<{PropertyMapping[1]->Boolean[1]}>, Function<{PropertyMapping[1]->Map<String,List<String>>[1]}>>[0..1];

transfers_store_transformStore : Function<{Nil[1]->meta::protocols::pure::v1_33_0::metamodel::store::Store[1]}>[*];
transfers_store_transformStore2 : Function<{meta::pure::extension::Extension[*] -> Function<{Nil[1]->meta::protocols::pure::v1_33_0::metamodel::store::Store[1]}>[*]}>[0..1];
transfers_store_transformConnection : Function<{Nil[1]->meta::protocols::pure::v1_33_0::metamodel::runtime::Connection[1]}>[*];
transfers_store_transformConnection2 : Function<{meta::pure::extension::Extension[*] -> Function<{Nil[1]->meta::protocols::pure::v1_33_0::metamodel::runtime::Connection[1]}>[*]}>[0..1];

scan_buildBasePureModel_buildPureModelFromMapping1 : Function<{Nil[1]->Store[*]}>[*];
scan_buildBasePureModel_buildPureModelFromMapping2 : Store[*];

scan_buildBasePureModel_getExtraElementsFromStores : Function<{Store[*], meta::pure::extension::Extension[*]->meta::protocols::pure::v1_33_0::metamodel::PackageableElement[*]}>[0..1];

scan_buildPureModelAsText_getAllElementsFromMapping : Function<{Store[*]->Store[*]}>[0..1];
scan_buildPureModelAsText_getAllElementsFromMapping2 : Function<{Store[*]->PackageableElement[*]}>[0..1];
scan_buildPureModelAsText_getCorrectedElementSourceInformation : Function<{meta::pure::metamodel::PackageableElement[1] -> SourceInformation[1]}>[0..1];

scan_buildBasePureModel_findAllTypesFromMapping : Function<{Nil[1]->Type[*]}>[*];
scan_buildBasePureModel_extractStores : Function<{Mapping[1], meta::pure::extension::Extension[*] -> Function<{Nil[1]->meta::pure::store::Store[*]}>[*]}>[0..1];
scan_buildBasePureModel_processProperties : Function<{Mapping[1], meta::pure::extension::Extension[*] -> Function<{Nil[1]->meta::pure::store::Store[*]}>[*]}>[0..1];

invocation_execution_execute1 : Function<{ExecutionContext[1]->Boolean[1]}>[*];
invocation_execution_execute2_pre : Pair<Function<{String[1]->Boolean[1]}>, Function<{String[1], JSONObject[1], Mapping[1], Runtime[1],ExtendedJSONDeserializationConfig[1],ExecutionContext[0..1]->Pair<List<Any>,List<Activity>>[1]}>>[*];
invocation_execution_execute2_pre2 : Function<{meta::pure::extension::Extension[*] -> Pair<Function<{String[1]->Boolean[1]}>, Function<{String[1], JSONObject[1], Mapping[1], Runtime[1],ExtendedJSONDeserializationConfig[1],ExecutionContext[0..1]->Pair<List<Any>,List<Activity>>[1]}>>[*]}>[0..1];
invocation_execution_execute2_post : Pair<Function<{String[1]->Boolean[1]}>, Function<{String[1], JSONObject[1], Mapping[1], Runtime[1],ExtendedJSONDeserializationConfig[1],ExecutionContext[0..1]->Pair<List<Any>,List<Activity>>[1]}>>[*];
invocation_execution_execute2_post2 : Function<{meta::pure::extension::Extension[*] -> Pair<Function<{String[1]->Boolean[1]}>, Function<{String[1], JSONObject[1], Mapping[1], Runtime[1],ExtendedJSONDeserializationConfig[1],ExecutionContext[0..1]->Pair<List<Any>,List<Activity>>[1]}>>[*]}>[0..1];
invocation_execution_transformContext : Function<{Nil[1]->meta::protocols::pure::v1_33_0::metamodel::ExecutionContext[1]}>[*];
}

Class meta::protocols::pure::v1_33_0::extension::ModuleSerializerExtension
{
module:String[1];
}
Loading

0 comments on commit 0e51390

Please sign in to comment.