Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
O
oceandsl-tools
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
oceandsl
oceandsl-tools
Commits
91a487a7
Commit
91a487a7
authored
1 year ago
by
Reiner Jung
Browse files
Options
Downloads
Patches
Plain Diff
Renamed variables and parameters.
parent
b43ce000
No related branches found
Branches containing commit
No related tags found
Tags containing commit
1 merge request
!82
Reiner
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
tools/mop/src/main/java/org/oceandsl/tools/mop/merge/ExecutionModelMerger.java
+36
-38
36 additions, 38 deletions
...va/org/oceandsl/tools/mop/merge/ExecutionModelMerger.java
with
36 additions
and
38 deletions
tools/mop/src/main/java/org/oceandsl/tools/mop/merge/ExecutionModelMerger.java
+
36
−
38
View file @
91a487a7
...
...
@@ -41,21 +41,21 @@ public final class ExecutionModelMerger {
}
/* default */
static
void
mergeExecutionModel
(
final
DeploymentModel
deploymentModel
,
// NOPMD
final
ExecutionModel
targe
tModel
,
final
ExecutionModel
mergeModel
)
{
ExecutionModelMerger
.
mergeInvocations
(
deploymentModel
,
targe
tModel
,
mergeModel
);
ExecutionModelMerger
.
mergeStorageDataflows
(
deploymentModel
,
targe
tModel
,
mergeModel
);
ExecutionModelMerger
.
mergeOperationDataflows
(
deploymentModel
,
targe
tModel
,
mergeModel
);
final
ExecutionModel
las
tModel
,
final
ExecutionModel
mergeModel
)
{
ExecutionModelMerger
.
mergeInvocations
(
deploymentModel
,
las
tModel
,
mergeModel
);
ExecutionModelMerger
.
mergeStorageDataflows
(
deploymentModel
,
las
tModel
,
mergeModel
);
ExecutionModelMerger
.
mergeOperationDataflows
(
deploymentModel
,
las
tModel
,
mergeModel
);
}
private
static
void
mergeInvocations
(
final
DeploymentModel
deploymentModel
,
final
ExecutionModel
targe
tModel
,
private
static
void
mergeInvocations
(
final
DeploymentModel
deploymentModel
,
final
ExecutionModel
las
tModel
,
final
ExecutionModel
mergeModel
)
{
for
(
final
Entry
<
Tuple
<
DeployedOperation
,
DeployedOperation
>,
Invocation
>
entry
:
mergeModel
.
getInvocations
())
{
if
(!
ExecutionModelMerger
.
compareTupleOperationKeys
(
targe
tModel
.
getInvocations
(),
entry
.
getKey
()))
{
if
(!
ExecutionModelMerger
.
compareTupleOperationKeys
(
las
tModel
.
getInvocations
(),
entry
.
getKey
()))
{
final
Invocation
value
=
ExecutionModelCloneUtils
.
duplicate
(
deploymentModel
,
entry
.
getValue
());
final
Tuple
<
DeployedOperation
,
DeployedOperation
>
key
=
ExecutionFactory
.
eINSTANCE
.
createTuple
();
key
.
setFirst
(
value
.
getCaller
());
key
.
setSecond
(
value
.
getCallee
());
targe
tModel
.
getInvocations
().
put
(
key
,
value
);
las
tModel
.
getInvocations
().
put
(
key
,
value
);
}
}
}
...
...
@@ -72,41 +72,39 @@ public final class ExecutionModelMerger {
return
false
;
}
private
static
void
mergeStorageDataflows
(
final
DeploymentModel
deploymentModel
,
final
ExecutionModel
targe
tModel
,
private
static
void
mergeStorageDataflows
(
final
DeploymentModel
deploymentModel
,
final
ExecutionModel
las
tModel
,
final
ExecutionModel
mergeModel
)
{
for
(
final
Entry
<
Tuple
<
DeployedOperation
,
DeployedStorage
>,
StorageDataflow
>
entry
:
mergeModel
.
getStorageDataflows
())
{
final
Tuple
<
DeployedOperation
,
DeployedStorage
>
targe
tModelKey
=
ExecutionModelMerger
.
findTupleStorageKeys
(
targe
tModel
.
getStorageDataflows
(),
entry
.
getKey
());
ExecutionModelMerger
.
mergeStorageDataflow
(
targe
tModelKey
,
deploymentModel
,
targe
tModel
,
entry
.
getValue
());
final
Tuple
<
DeployedOperation
,
DeployedStorage
>
las
tModelKey
=
ExecutionModelMerger
.
findTupleStorageKeys
(
las
tModel
.
getStorageDataflows
(),
entry
.
getKey
());
ExecutionModelMerger
.
mergeStorageDataflow
(
las
tModelKey
,
deploymentModel
,
las
tModel
,
entry
.
getValue
());
}
}
private
static
void
mergeStorageDataflow
(
final
Tuple
<
DeployedOperation
,
DeployedStorage
>
targe
tModelKey
,
final
DeploymentModel
deploymentModel
,
final
ExecutionModel
targe
tModel
,
private
static
void
mergeStorageDataflow
(
final
Tuple
<
DeployedOperation
,
DeployedStorage
>
las
tModelKey
,
final
DeploymentModel
deploymentModel
,
final
ExecutionModel
las
tModel
,
final
StorageDataflow
sourceStorageDataflow
)
{
if
(
targe
tModelKey
==
null
)
{
ExecutionModelMerger
.
mergeStorageDataflowNotExistingIn
Targe
tModel
(
deploymentModel
,
targe
tModel
,
if
(
las
tModelKey
==
null
)
{
ExecutionModelMerger
.
mergeStorageDataflowNotExistingIn
las
tModel
(
deploymentModel
,
las
tModel
,
sourceStorageDataflow
);
}
else
{
ExecutionModelMerger
.
mergeStorageDataflowExistingInTarget
(
targetModel
,
targetModelKey
,
sourceStorageDataflow
);
ExecutionModelMerger
.
mergeStorageDataflowExistingInTarget
(
lastModel
,
lastModelKey
,
sourceStorageDataflow
);
}
}
private
static
void
mergeStorageDataflowNotExistingIn
Targe
tModel
(
final
DeploymentModel
deploymentModel
,
final
ExecutionModel
targe
tModel
,
final
StorageDataflow
sourceStorageDataflow
)
{
private
static
void
mergeStorageDataflowNotExistingIn
las
tModel
(
final
DeploymentModel
deploymentModel
,
final
ExecutionModel
las
tModel
,
final
StorageDataflow
sourceStorageDataflow
)
{
final
StorageDataflow
value
=
ExecutionModelCloneUtils
.
duplicate
(
deploymentModel
,
sourceStorageDataflow
);
final
Tuple
<
DeployedOperation
,
DeployedStorage
>
key
=
ExecutionFactory
.
eINSTANCE
.
createTuple
();
key
.
setFirst
(
value
.
getCode
());
key
.
setSecond
(
value
.
getStorage
());
targe
tModel
.
getStorageDataflows
().
put
(
key
,
value
);
las
tModel
.
getStorageDataflows
().
put
(
key
,
value
);
}
private
static
void
mergeStorageDataflowExistingInTarget
(
final
ExecutionModel
targetModel
,
final
Tuple
<
DeployedOperation
,
DeployedStorage
>
targetModelKey
,
final
StorageDataflow
sourceStorageDataflow
)
{
final
StorageDataflow
targetStorageDataflow
=
targetModel
.
getStorageDataflows
().
get
(
targetModelKey
);
private
static
void
mergeStorageDataflowExistingInTarget
(
final
ExecutionModel
lastModel
,
final
Tuple
<
DeployedOperation
,
DeployedStorage
>
lastModelKey
,
final
StorageDataflow
sourceStorageDataflow
)
{
final
StorageDataflow
targetStorageDataflow
=
lastModel
.
getStorageDataflows
().
get
(
lastModelKey
);
switch
(
sourceStorageDataflow
.
getDirection
())
{
case
READ:
if
(
targetStorageDataflow
.
getDirection
()
==
EDirection
.
WRITE
)
{
...
...
@@ -125,7 +123,7 @@ public final class ExecutionModelMerger {
throw
new
InternalError
(
"Found unsupported direction type "
+
sourceStorageDataflow
.
getDirection
().
getName
());
}
targe
tModel
.
getStorageDataflows
().
put
(
targe
tModelKey
,
targetStorageDataflow
);
las
tModel
.
getStorageDataflows
().
put
(
las
tModelKey
,
targetStorageDataflow
);
}
private
static
Tuple
<
DeployedOperation
,
DeployedStorage
>
findTupleStorageKeys
(
...
...
@@ -140,36 +138,36 @@ public final class ExecutionModelMerger {
return
null
;
}
private
static
void
mergeOperationDataflows
(
final
DeploymentModel
deploymentModel
,
final
ExecutionModel
targe
tModel
,
private
static
void
mergeOperationDataflows
(
final
DeploymentModel
deploymentModel
,
final
ExecutionModel
las
tModel
,
final
ExecutionModel
mergeModel
)
{
for
(
final
Entry
<
Tuple
<
DeployedOperation
,
DeployedOperation
>,
OperationDataflow
>
entry
:
mergeModel
.
getOperationDataflows
())
{
final
Tuple
<
DeployedOperation
,
DeployedOperation
>
targe
tModelKey
=
ExecutionModelMerger
.
findTupleOperationKeys
(
targe
tModel
.
getOperationDataflows
(),
entry
.
getKey
());
final
Tuple
<
DeployedOperation
,
DeployedOperation
>
las
tModelKey
=
ExecutionModelMerger
.
findTupleOperationKeys
(
las
tModel
.
getOperationDataflows
(),
entry
.
getKey
());
final
OperationDataflow
sourceOperationDataflow
=
entry
.
getValue
();
if
(
targe
tModelKey
==
null
)
{
ExecutionModelMerger
.
mergeOperationDataflowNotExistingIn
Targe
tModel
(
deploymentModel
,
targe
tModel
,
if
(
las
tModelKey
==
null
)
{
ExecutionModelMerger
.
mergeOperationDataflowNotExistingIn
las
tModel
(
deploymentModel
,
las
tModel
,
sourceOperationDataflow
);
}
else
{
ExecutionModelMerger
.
mergeOperationDataflowExistingInTarget
(
targe
tModel
,
targe
tModelKey
,
ExecutionModelMerger
.
mergeOperationDataflowExistingInTarget
(
las
tModel
,
las
tModelKey
,
sourceOperationDataflow
);
}
}
}
private
static
void
mergeOperationDataflowNotExistingIn
Targe
tModel
(
final
DeploymentModel
deploymentModel
,
final
ExecutionModel
targe
tModel
,
final
OperationDataflow
sourceOperationDataflow
)
{
private
static
void
mergeOperationDataflowNotExistingIn
las
tModel
(
final
DeploymentModel
deploymentModel
,
final
ExecutionModel
las
tModel
,
final
OperationDataflow
sourceOperationDataflow
)
{
final
OperationDataflow
value
=
ExecutionModelCloneUtils
.
duplicate
(
deploymentModel
,
sourceOperationDataflow
);
final
Tuple
<
DeployedOperation
,
DeployedOperation
>
key
=
ExecutionFactory
.
eINSTANCE
.
createTuple
();
key
.
setFirst
(
value
.
getCaller
());
key
.
setSecond
(
value
.
getCallee
());
targe
tModel
.
getOperationDataflows
().
put
(
key
,
value
);
las
tModel
.
getOperationDataflows
().
put
(
key
,
value
);
}
private
static
void
mergeOperationDataflowExistingInTarget
(
final
ExecutionModel
targe
tModel
,
final
Tuple
<
DeployedOperation
,
DeployedOperation
>
targe
tModelKey
,
private
static
void
mergeOperationDataflowExistingInTarget
(
final
ExecutionModel
las
tModel
,
final
Tuple
<
DeployedOperation
,
DeployedOperation
>
las
tModelKey
,
final
OperationDataflow
sourceOperationDataflow
)
{
final
OperationDataflow
targetOperationDataflow
=
targe
tModel
.
getOperationDataflows
().
get
(
targe
tModelKey
);
final
OperationDataflow
targetOperationDataflow
=
las
tModel
.
getOperationDataflows
().
get
(
las
tModelKey
);
switch
(
sourceOperationDataflow
.
getDirection
())
{
case
READ:
if
(
targetOperationDataflow
.
getDirection
()
==
EDirection
.
WRITE
)
{
...
...
@@ -188,7 +186,7 @@ public final class ExecutionModelMerger {
throw
new
InternalError
(
"Found unsupported direction type "
+
sourceOperationDataflow
.
getDirection
().
getName
());
}
targe
tModel
.
getOperationDataflows
().
put
(
targe
tModelKey
,
targetOperationDataflow
);
las
tModel
.
getOperationDataflows
().
put
(
las
tModelKey
,
targetOperationDataflow
);
}
private
static
Tuple
<
DeployedOperation
,
DeployedOperation
>
findTupleOperationKeys
(
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment