├── .github
├── FUNDING.yml
├── ISSUE_TEMPLATE
│ ├── bug_report.md
│ └── feature_request.md
└── workflows
│ ├── build_master.yml
│ ├── build_standard.yml
│ ├── release-trigger.yml
│ ├── release.yml
│ └── settings.xml
├── .gitignore
├── .java-version
├── .mvn
└── wrapper
│ ├── MavenWrapperDownloader.java
│ └── maven-wrapper.properties
├── .project
├── LICENSE
├── README.md
├── build.gradle
├── codecov.yml
├── docs
└── madr
│ ├── 0001-domain-services-outside-aggregates.md
│ ├── 0002-use-case-diagram-layout.md
│ └── README.md
├── gradle.properties
├── gradle
├── maven-deployment.gradle
├── source-layout.gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── mvnw
├── mvnw.cmd
├── org.contextmapper.dsl.feature
├── .project
├── build.properties
├── feature.xml
└── pom.xml
├── org.contextmapper.dsl.ide.tests
├── .classpath
├── .project
├── META-INF
│ └── MANIFEST.MF
├── build.gradle
├── build.properties
├── pom.xml
└── src
│ └── org
│ └── contextmapper
│ └── dsl
│ └── ide
│ └── tests
│ ├── AbstractCMLLanguageServerTest.java
│ ├── actions
│ ├── AbstractBoundedContextCodeActionTest.xtend
│ ├── DeriveBoundedContextFromSubdomainsActionTest.xtend
│ ├── DeriveFrontendAndBackendSystemFromFeatureBCActionTest.xtend
│ ├── ExtractAggregatesByCohesionActionTest.xtend
│ ├── ExtractAggregatesByVolatilityActionTest.xtend
│ ├── ExtractSharedKernelActionTest.xtend
│ ├── MergeAggregatesActionTest.xtend
│ ├── MergeBoundedContextsActionTest.xtend
│ ├── SplitAggregateByEntitiesActionTest.xtend
│ ├── SplitBoundedContextByFeaturesActionTest.xtend
│ ├── SplitBoundedContextByOwnerActionTest.xtend
│ ├── SplitSystemContextIntoSubsystemsActionTest.xtend
│ ├── StakeholdersActionsTest.xtend
│ ├── SuspendPartnershipActionTest.xtend
│ ├── SwitchFromPartnershipToSharedKernelActionTest.xtend
│ ├── SwitchFromSharedKernelToPartnershipActionTest.xtend
│ ├── UserStoryActionsTest.xtend
│ └── ValueActionsTest.xtend
│ ├── commands
│ ├── AbstractCMLCommandTest.xtend
│ ├── generation
│ │ ├── ContextMapGeneratorCommandTest.xtend
│ │ ├── GenericTextFileGeneratorCommandTest.xtend
│ │ ├── MDSLGeneratorCommandTest.xtend
│ │ ├── PlantUMLGeneratorCommandTest.xtend
│ │ └── SketchMinerGeneratorCommandTest.xtend
│ └── refactoring
│ │ ├── AddEthicalValueAssessmentCommandTest.xtend
│ │ ├── CreateStakeholderForUserStoryRoleCommandTest.xtend
│ │ ├── CreateValue4StakeholderCommandTest.xtend
│ │ ├── CreateValueRegisterForBoundedContextCommandTest.xtend
│ │ ├── DeriveBoundedContextFromSubdomainsCommandTest.xtend
│ │ ├── DeriveFrontendAndBackendSystemFromFeatureBCCommandTest.xtend
│ │ ├── DeriveSubdomainFromUserRequirementsCommandTest.xtend
│ │ ├── ExtractAggregatesByCohesionCommandTest.xtend
│ │ ├── ExtractAggregatesByVolatilityCommandTest.xtend
│ │ ├── ExtractSharedKernelCommandTest.xtend
│ │ ├── MergeAggregatesCommandTest.xtend
│ │ ├── MergeBoundedContextsCommandTest.xtend
│ │ ├── MoveStakeholderToGroupCommandTest.xtend
│ │ ├── SplitAggregateByEntitiesCommandTest.xtend
│ │ ├── SplitBoundedContextByFeaturesCommandTest.xtend
│ │ ├── SplitBoundedContextByOwnerCommandTest.xtend
│ │ ├── SplitSystemContextIntoSubsystemsCommandTest.xtend
│ │ ├── SuspendPartnershipCommandTest.xtend
│ │ ├── SwitchFromPartnershipToSharedKernelCommandTest.xtend
│ │ ├── SwitchFromSharedKernelToPartnershipCommandTest.xtend
│ │ └── WrapValueInClusterCommandTest.xtend
│ ├── hover
│ └── CMLHoverTextsTest.xtend
│ └── quickfixes
│ ├── CreateMissingBoundedContextQuickFixTest.xtend
│ ├── ExtractIDValueObjectQuickFixTest.xtend
│ ├── OpenCoordinationInBPMNSketchMinerActionTest.xtend
│ ├── OpenFlowInBPMNSketchMinerActionTest.xtend
│ ├── SplitStoryByVerbCommandMapperTest.java
│ └── SplitStoryByVerbQuickFixTest.xtend
├── org.contextmapper.dsl.ide
├── .classpath
├── .project
├── META-INF
│ └── MANIFEST.MF
├── build.gradle
├── build.properties
├── pom.xml
└── src
│ └── org
│ └── contextmapper
│ ├── dsl
│ └── ide
│ │ ├── ContextMappingDSLIdeModule.xtend
│ │ ├── ContextMappingDSLIdeSetup.xtend
│ │ ├── actions
│ │ ├── CMLActionRegistry.java
│ │ ├── CMLActionService.xtend
│ │ ├── CMLCodeAction.java
│ │ ├── SelectionContextResolver.java
│ │ └── impl
│ │ │ ├── AddEthicalValueAssessmentAction.java
│ │ │ ├── CreateStakeholderForUserStoryRoleAction.java
│ │ │ ├── CreateValue4StakeholderAction.java
│ │ │ ├── CreateValueRegisterForBoundedContextAction.java
│ │ │ ├── DeriveBoundedContextFromSubdomainsAction.java
│ │ │ ├── DeriveFrontendAndBackendFromFeatureBCAction.java
│ │ │ ├── DeriveSubdomainFromUserRequirementsAction.java
│ │ │ ├── ExtractAggregatesByCohesionAction.java
│ │ │ ├── ExtractAggregatesByVolatilityAction.java
│ │ │ ├── ExtractSharedKernelAction.java
│ │ │ ├── MergeAggregatesAction.java
│ │ │ ├── MergeBoundedContextsAction.java
│ │ │ ├── MoveStakeholderToGroupAction.java
│ │ │ ├── SplitAggregateByEntitiesAction.java
│ │ │ ├── SplitBoundedContextByFeaturesAction.java
│ │ │ ├── SplitBoundedContextByOwnerAction.java
│ │ │ ├── SplitSystemIntoSubsystemsAction.java
│ │ │ ├── SuspendPartnershipAction.java
│ │ │ ├── SwitchFromPartnershipToSharedKernelAction.java
│ │ │ ├── SwitchFromSharedKernelToPartnershipAction.java
│ │ │ └── WrapValueInClusterAction.java
│ │ ├── commands
│ │ ├── CMLCommandRegistry.java
│ │ ├── CMLCommandService.xtend
│ │ ├── CMLResourceCommand.java
│ │ └── impl
│ │ │ ├── generation
│ │ │ ├── AbstractGenerationCommand.java
│ │ │ ├── ContextMapGenerationCommand.java
│ │ │ ├── GenericTextFileGenerationCommand.java
│ │ │ ├── MDSLGenerationCommand.java
│ │ │ ├── PlantUMLGenerationCommand.java
│ │ │ └── SketchMinerGenerationCommand.java
│ │ │ ├── quickfix
│ │ │ ├── AbstractQuickFixCommand.java
│ │ │ └── SplitStoryByVerbCommand.java
│ │ │ └── refactoring
│ │ │ ├── AbstractRefactoringCommand.java
│ │ │ ├── AddEthicalValueAssessmentCommand.java
│ │ │ ├── CreateStakeholderForUserStoryRoleCommand.java
│ │ │ ├── CreateValue4StakeholderCommand.java
│ │ │ ├── CreateValueRegisterForBoundedContextCommand.java
│ │ │ ├── DeriveBoundedContextFromSubdomainsCommand.java
│ │ │ ├── DeriveFrontendAndBackendFromFeatureBCCommand.java
│ │ │ ├── DeriveSubdomainFromUserRequirementsCommand.java
│ │ │ ├── ExtractAggregatesByCohesionCommand.java
│ │ │ ├── ExtractAggregatesByVolatilityCommand.java
│ │ │ ├── ExtractSharedKernelCommand.java
│ │ │ ├── MergeAggregatesCommand.java
│ │ │ ├── MergeBoundedContextsCommand.java
│ │ │ ├── MoveStakeholderToGroupCommand.java
│ │ │ ├── SplitAggregateByEntitiesRefactoringCommand.java
│ │ │ ├── SplitBoundedContextByFeaturesRefactoringCommand.java
│ │ │ ├── SplitBoundedContextByOwnerRefactoringCommand.java
│ │ │ ├── SplitSystemContextIntoSubsystemsCommand.java
│ │ │ ├── SuspendPartnershipCommand.java
│ │ │ ├── SwitchFromPartnershipToSharedKernelCommand.java
│ │ │ ├── SwitchFromSharedKernelToPartnershipCommand.java
│ │ │ └── WrapValueInClusterCommand.java
│ │ ├── edit
│ │ └── WorkspaceEditRecorder.java
│ │ ├── hover
│ │ └── CMLHoverService.java
│ │ └── quickfix
│ │ ├── QuickfixCommandMapper.java
│ │ └── impl
│ │ ├── OpenCoordinationInSketchMinerCommandMapper.java
│ │ ├── OpenFlowInSketchMinerCommandMapper.java
│ │ └── SplitStoryByVerbCommandMapper.java
│ ├── servicecutter
│ └── dsl
│ │ └── ide
│ │ ├── ServiceCutterConfigurationDSLIdeModule.xtend
│ │ └── ServiceCutterConfigurationDSLIdeSetup.xtend
│ └── tactic
│ └── dsl
│ └── ide
│ ├── TacticDDDLanguageIdeModule.xtend
│ └── TacticDDDLanguageIdeSetup.xtend
├── org.contextmapper.dsl.repository
├── .project
├── category.xml
├── packaging-p2composite.ant
└── pom.xml
├── org.contextmapper.dsl.target
├── .project
├── org.contextmapper.dsl.target.target
└── pom.xml
├── org.contextmapper.dsl.tests
├── .classpath
├── .project
├── META-INF
│ └── MANIFEST.MF
├── build.gradle
├── build.properties
├── integ-test-files
│ ├── ServiceCutter-Output-Wrong.json
│ ├── ServiceCutter-Services.json
│ ├── common
│ │ └── bc-resolving-test-1.cml
│ ├── contextmapgenerator
│ │ ├── test-context-map-1.cml
│ │ ├── test-team-map-1.cml
│ │ └── test-team-map-2.cml
│ ├── exceptions
│ │ └── NoEObjectDescriptionExceptionTest.cml
│ ├── freemarker
│ │ ├── bounded-context-filter-test.cml
│ │ ├── bounded-context-filter-test.ftl
│ │ ├── complex-type-test-1.cml
│ │ ├── complex-type-test-1.ftl
│ │ ├── complex-type-test-2.cml
│ │ ├── complex-type-test-2.ftl
│ │ ├── complex-type-test-3.cml
│ │ ├── complex-type-test-3.ftl
│ │ ├── custom-variables-test-1.ftl
│ │ ├── filter-bounded-contexts-wrong-parameter-type-test.cml
│ │ ├── filter-bounded-contexts-wrong-parameter-type-test.ftl
│ │ ├── filter-bounded-contexts-wrong-parameters-test.cml
│ │ ├── filter-bounded-contexts-wrong-parameters-test.ftl
│ │ ├── filter-teams-wrong-parameter-type-test.cml
│ │ ├── filter-teams-wrong-parameter-type-test.ftl
│ │ ├── filter-teams-wrong-parameters-test.cml
│ │ ├── filter-teams-wrong-parameters-test.ftl
│ │ ├── get-type-wrong-parameter-type-test.ftl
│ │ ├── get-type-wrong-parameters-test.ftl
│ │ ├── instance-of-second-parameter-no-class.ftl
│ │ ├── instance-of-test-1.cml
│ │ ├── instance-of-test-1.ftl
│ │ ├── instance-of-wrong-parameters-test.ftl
│ │ ├── simple-context-map.cml
│ │ ├── simple-template.ftl
│ │ ├── team-filter-test.cml
│ │ └── team-filter-test.ftl
│ ├── generators
│ │ └── plantuml
│ │ │ ├── class-diagram-generation-aggregate-end-state-test-1.cml
│ │ │ ├── class-diagram-generation-aggregate-test-1.cml
│ │ │ ├── class-diagram-generation-module-test-1.cml
│ │ │ ├── stakeholder-diagram-generation-test-1.cml
│ │ │ ├── stakeholder-diagram-generation-test-2.cml
│ │ │ ├── stakeholder-diagram-generation-test-3.cml
│ │ │ ├── stakeholder-diagram-generation-test-4.cml
│ │ │ ├── state-diagram-generation-aggregate-test-1.cml
│ │ │ ├── state-diagram-generation-aggregate-test-2.cml
│ │ │ ├── state-diagram-generation-flow-test.cml
│ │ │ ├── state-diagram-generation-flow-with-end-states-test.cml
│ │ │ ├── use-case-diagram-generation-test-1.cml
│ │ │ ├── use-case-diagram-generation-test-2.cml
│ │ │ ├── use-case-diagram-generation-test-3.cml
│ │ │ ├── use-case-interactions-sequence-diagram-generation-test-1.cml
│ │ │ ├── use-case-interactions-sequence-diagram-generation-test-2.cml
│ │ │ ├── use-case-interactions-sequence-diagram-generation-test-3.cml
│ │ │ ├── use-case-interactions-sequence-diagram-generation-test-4.cml
│ │ │ ├── value-impact-map-diagram-generation-test-1.cml
│ │ │ ├── value-impact-map-diagram-generation-test-2.cml
│ │ │ ├── value-impact-map-diagram-generation-test-3.cml
│ │ │ ├── value-impact-map-diagram-generation-test-4.cml
│ │ │ ├── value-impact-map-diagram-generation-test-5.cml
│ │ │ └── value-impact-map-diagram-generation-test-6.cml
│ ├── imports
│ │ ├── empty.cml
│ │ ├── import-to-empty-resource.cml
│ │ ├── import-to-other-type.cml
│ │ ├── other-contexts.cml
│ │ ├── other-type.scl
│ │ ├── simple-import-test.cml
│ │ └── uniqueness-validation-test.cml
│ ├── mdsl
│ │ ├── application-flow-example-2.cml
│ │ ├── application-flow-example-3.cml
│ │ ├── application-flow-example-4.cml
│ │ ├── application-flow-example-simple.cml
│ │ ├── application-flow-example-simple.mdsl
│ │ ├── application-flow-example.cml
│ │ ├── application-flow-example.mdsl
│ │ ├── basic-mdsl-model-test-without-contextmap.cml
│ │ ├── basic-mdsl-model-test.cml
│ │ ├── basic-mdsl-model-test.mdsl
│ │ ├── context-is-upstream-in-multiple-relationships.cml
│ │ ├── mdsl-basic-data-types-as-parameters.cml
│ │ ├── mdsl-basic-data-types-as-parameters.mdsl
│ │ ├── mdsl-can-handle-keyword-clashes.cml
│ │ ├── mdsl-cyclic-reference.cml
│ │ ├── mdsl-cyclic-reference.mdsl
│ │ ├── mdsl-date-to-string.cml
│ │ ├── mdsl-date-to-string.mdsl
│ │ ├── mdsl-domain-vision-statements-test.cml
│ │ ├── mdsl-domain-vision-statements-test.mdsl
│ │ ├── mdsl-entity-extending-other-entity.cml
│ │ ├── mdsl-entity-extending-other-entity.mdsl
│ │ ├── mdsl-entity-without-attributes.cml
│ │ ├── mdsl-entity-without-attributes.mdsl
│ │ ├── mdsl-enum-support.cml
│ │ ├── mdsl-enum-support.mdsl
│ │ ├── mdsl-http-binding.cml
│ │ ├── mdsl-http-binding.mdsl
│ │ ├── mdsl-list-in-parameter.cml
│ │ ├── mdsl-list-in-parameter.mdsl
│ │ ├── mdsl-list-in-return-type.cml
│ │ ├── mdsl-list-in-return-type.mdsl
│ │ ├── mdsl-list-parameter-test.cml
│ │ ├── mdsl-list-parameter-test.mdsl
│ │ ├── mdsl-mixed-parameters-test.cml
│ │ ├── mdsl-mixed-parameters-test.mdsl
│ │ ├── mdsl-no-implementation-technology.cml
│ │ ├── mdsl-no-implementation-technology.mdsl
│ │ ├── mdsl-no-operation-in-one-api.cml
│ │ ├── mdsl-no-operation-in-one-api.mdsl
│ │ ├── mdsl-no-parameters.cml
│ │ ├── mdsl-no-parameters.mdsl
│ │ ├── mdsl-no-return-type.cml
│ │ ├── mdsl-no-return-type.mdsl
│ │ ├── mdsl-nothing-to-generate-test-1.cml
│ │ ├── mdsl-nothing-to-generate-test-2.cml
│ │ ├── mdsl-nullable-attributes.cml
│ │ ├── mdsl-nullable-attributes.mdsl
│ │ ├── mdsl-only-use-public-operations.cml
│ │ ├── mdsl-only-use-public-operations.mdsl
│ │ ├── mdsl-parameter-tree-test-deep.cml
│ │ ├── mdsl-parameter-tree-test-deep.mdsl
│ │ ├── mdsl-parameter-tree-test.cml
│ │ ├── mdsl-parameter-tree-test.mdsl
│ │ ├── mdsl-parameter-tree-with-list-test.cml
│ │ ├── mdsl-parameter-tree-with-list-test.mdsl
│ │ ├── mdsl-protected-regions-do-not-match-commented-types-existing.mdsl
│ │ ├── mdsl-protected-regions-do-not-match-commented-types.cml
│ │ ├── mdsl-protected-regions-do-not-match-commented-types.mdsl
│ │ ├── mdsl-protected-regions-existing.mdsl
│ │ ├── mdsl-protected-regions.cml
│ │ ├── mdsl-protected-regions.mdsl
│ │ ├── mdsl-reference-to-empty-domain-object-1.cml
│ │ ├── mdsl-reference-to-empty-domain-object-1.mdsl
│ │ ├── mdsl-reference-to-empty-domain-object-2.cml
│ │ ├── mdsl-reference-to-empty-domain-object-2.mdsl
│ │ ├── mdsl-reference-to-empty-domain-object-3.cml
│ │ ├── mdsl-reference-to-empty-domain-object-3.mdsl
│ │ ├── mdsl-serves-as-test-1.cml
│ │ ├── mdsl-serves-as-test-1.mdsl
│ │ ├── mdsl-serves-as-test-2.cml
│ │ ├── mdsl-serves-as-test-2.mdsl
│ │ ├── mdsl-upstream-downstream-role-comments.cml
│ │ ├── mdsl-upstream-downstream-role-comments.mdsl
│ │ ├── mdsl-usage-context-community-api.cml
│ │ ├── mdsl-usage-context-community-api.mdsl
│ │ ├── mdsl-usage-context-public-api.cml
│ │ ├── mdsl-usage-context-public-api.mdsl
│ │ ├── mdsl-use-application-commands-1.cml
│ │ ├── mdsl-use-application-commands-1.mdsl
│ │ ├── mdsl-use-application-commands-2.cml
│ │ ├── mdsl-use-application-commands-2.mdsl
│ │ ├── mdsl-use-application-name.cml
│ │ ├── mdsl-use-application-name.mdsl
│ │ ├── mdsl-use-application-service-operations-1.cml
│ │ ├── mdsl-use-application-service-operations-1.mdsl
│ │ ├── mdsl-use-application-service-operations-2.cml
│ │ ├── mdsl-use-application-service-operations-2.mdsl
│ │ ├── mdsl-use-application-service-operations-3.cml
│ │ ├── mdsl-use-application-service-operations-3.mdsl
│ │ ├── mdsl-use-service-operations.cml
│ │ ├── mdsl-use-service-operations.mdsl
│ │ ├── no-exposed-aggregates.cml
│ │ ├── no-operation.cml
│ │ ├── no-upstream-downstream-relationship.cml
│ │ ├── overwrite-with-preserving-protected-region-test.cml
│ │ ├── overwrite-with-preserving-protected-region-test.mdsl
│ │ ├── protected-region-identifier-test.mdsl
│ │ ├── protected-region-null-test.mdsl
│ │ ├── protected-region-reader-test.mdsl
│ │ ├── same-data-type-in-multiple-methods.cml
│ │ └── use-references-in-methods.cml
│ ├── plantuml
│ │ ├── application-layer-test-1.cml
│ │ ├── associations.cml
│ │ ├── class-diagram-generation-services-test-1.cml
│ │ ├── operations-domain-object-types-test.cml
│ │ ├── operations-with-list-types-test.cml
│ │ ├── operations-with-no-return-value.cml
│ │ └── services-test.cml
│ ├── quickfixes
│ │ ├── create-missing-bounded-context-test-1.cml
│ │ ├── extract-vo-for-primitive-id-test-1.cml
│ │ └── extract-vo-for-primitive-id-test-2.cml
│ ├── refactorings
│ │ ├── add-ethical-value-assessment-1.cml
│ │ ├── change-partnership-to-upstream-downstream-precondition-checks-input.cml
│ │ ├── change-partnership-to-upstream-downstream-precondition-checks-multiple-rels-input.cml
│ │ ├── change-partnership-to-upstream-downstream-precondition-checks-no-rel-input.cml
│ │ ├── change-partnership-to-upstream-downstream-test-1-input.cml
│ │ ├── create-stakeholder-for-roleinstory-1.cml
│ │ ├── create-value-for-stakeholder-1.cml
│ │ ├── create-value-for-stakeholder-2.cml
│ │ ├── create-value-register-for-bounded-context-1.cml
│ │ ├── derive-bc-from-subdomain-duplicate-aggregate-name-test-1-input.cml
│ │ ├── derive-bc-from-subdomain-entity-attributes-test-1-input.cml
│ │ ├── derive-bc-from-subdomain-test-1-input.cml
│ │ ├── derive-bc-from-subdomain-test-10-input.cml
│ │ ├── derive-bc-from-subdomain-test-11-input.cml
│ │ ├── derive-bc-from-subdomain-test-11-output.cml
│ │ ├── derive-bc-from-subdomain-test-2-input.cml
│ │ ├── derive-bc-from-subdomain-test-3-input.cml
│ │ ├── derive-bc-from-subdomain-test-4-input.cml
│ │ ├── derive-bc-from-subdomain-test-5-input.cml
│ │ ├── derive-bc-from-subdomain-test-6-input.cml
│ │ ├── derive-bc-from-subdomain-test-7-input.cml
│ │ ├── derive-bc-from-subdomain-test-8-input.cml
│ │ ├── derive-bc-from-subdomain-test-9-input.cml
│ │ ├── derive-frontend-backend-from-feature-test-1-input.cml
│ │ ├── derive-frontend-backend-from-feature-test-2-input.cml
│ │ ├── derive-frontend-backend-from-feature-test-5-input.cml
│ │ ├── derive-frontend-backend-from-feature-test-6-input.cml
│ │ ├── derive-frontend-backend-from-feature-test-6-output.cml
│ │ ├── derive-frontend-backend-from-feature-test-7-input.cml
│ │ ├── derive-frontend-backend-from-feature-test-7-output.cml
│ │ ├── derive-subdomain-from-user-story-test-1-input.cml
│ │ ├── derive-subdomain-from-user-story-test-10-input.cml
│ │ ├── derive-subdomain-from-user-story-test-11-input.cml
│ │ ├── derive-subdomain-from-user-story-test-12-input.cml
│ │ ├── derive-subdomain-from-user-story-test-2-input.cml
│ │ ├── derive-subdomain-from-user-story-test-3-input.cml
│ │ ├── derive-subdomain-from-user-story-test-4-input.cml
│ │ ├── derive-subdomain-from-user-story-test-5-input.cml
│ │ ├── derive-subdomain-from-user-story-test-6-input.cml
│ │ ├── derive-subdomain-from-user-story-test-7-input.cml
│ │ ├── derive-subdomain-from-user-story-test-8-input.cml
│ │ ├── derive-subdomain-from-user-story-test-9-input.cml
│ │ ├── derive-subdomain-from-user-story-test-existing-dvs-1.cml
│ │ ├── extract-aggregates-by-nfr-test-1-input.cml
│ │ ├── extract-aggregates-by-nfr-test-2-input.cml
│ │ ├── extract-aggregates-by-nfr-test-3-input.cml
│ │ ├── extract-aggregates-by-nfr-test-4-input-1.cml
│ │ ├── extract-aggregates-by-nfr-test-4-input-2.cml
│ │ ├── extract-aggregates-likely-to-change-test-1-input.cml
│ │ ├── extract-aggregates-likely-to-change-test-2-input.cml
│ │ ├── extract-aggregates-likely-to-change-test-3-input.cml
│ │ ├── extract-aggregates-likely-to-change-test-4-input.cml
│ │ ├── extract-aggregates-likely-to-change-test-5-input.cml
│ │ ├── extract-aggregates-likely-to-change-test-6-input-1.cml
│ │ ├── extract-aggregates-likely-to-change-test-6-input-2.cml
│ │ ├── extract-partnership-contextmap-existence-check.cml
│ │ ├── extract-partnership-precondition-checks-input.cml
│ │ ├── extract-partnership-precondition-checks-multiple-rels-input.cml
│ │ ├── extract-partnership-precondition-checks-no-rel-input.cml
│ │ ├── extract-partnership-test-1-input.cml
│ │ ├── extract-partnership-test-2-input.cml
│ │ ├── extract-shared-kernel-precondition-checks-input.cml
│ │ ├── extract-shared-kernel-precondition-checks-multiple-rels-input.cml
│ │ ├── extract-shared-kernel-precondition-checks-no-rel-input.cml
│ │ ├── extract-shared-kernel-test-1-input.cml
│ │ ├── extract-shared-kernel-test-2-input.cml
│ │ ├── extract-suggested-service-DDD-sample.cml
│ │ ├── extract-suggested-service-DDD-sample_Markov_Clustering_Cut_1.cml
│ │ ├── extract-suggested-service-empty-model-test.cml
│ │ ├── extract-suggested-service-missing-original-file-sample_Markov_Clustering_Cut_2.cml
│ │ ├── extract-suggested-service-unsupported-type-test-1.cml
│ │ ├── extract-suggested-service-unsupported-type-test-1_Markov_Clustering_Cut_1.cml
│ │ ├── extract-suggested-service-unsupported-type-test-2.cml
│ │ ├── extract-suggested-service-unsupported-type-test-2_Markov_Clustering_Cut_1.cml
│ │ ├── extract-suggested-service-with-modules-test.cml
│ │ ├── extract-suggested-service-with-modules-test_Markov_Clustering_Cut_1.cml
│ │ ├── just-an-empty-model.cml
│ │ ├── merge-aggregates-test-1-input.cml
│ │ ├── merge-aggregates-test-2-input.cml
│ │ ├── merge-aggregates-test-3-input.cml
│ │ ├── merge-aggregates-test-4-input.cml
│ │ ├── merge-aggregates-test-5-input.cml
│ │ ├── merge-aggregates-test-6-input.cml
│ │ ├── merge-aggregates-test-7-input-1.cml
│ │ ├── merge-aggregates-test-7-input-2.cml
│ │ ├── merge-bounded-contexts-fix-import-test-1.cml
│ │ ├── merge-bounded-contexts-fix-import-test-2.cml
│ │ ├── merge-bounded-contexts-fix-import-test-3.cml
│ │ ├── merge-bounded-contexts-fix-import-test-4.cml
│ │ ├── merge-bounded-contexts-multiple-files-test-1.cml
│ │ ├── merge-bounded-contexts-multiple-files-test-2.cml
│ │ ├── merge-bounded-contexts-multiple-files-test-3.cml
│ │ ├── merge-bounded-contexts-test-1-input.cml
│ │ ├── merge-bounded-contexts-test-10-input.cml
│ │ ├── merge-bounded-contexts-test-11-input.cml
│ │ ├── merge-bounded-contexts-test-2-input.cml
│ │ ├── merge-bounded-contexts-test-3-input.cml
│ │ ├── merge-bounded-contexts-test-4-input.cml
│ │ ├── merge-bounded-contexts-test-5-input.cml
│ │ ├── merge-bounded-contexts-test-6-input.cml
│ │ ├── merge-bounded-contexts-test-7-input.cml
│ │ ├── merge-bounded-contexts-test-8-input.cml
│ │ ├── merge-bounded-contexts-test-9-input.cml
│ │ ├── move-stakeholder-to-group-1.cml
│ │ ├── move-stakeholder-to-group-2.cml
│ │ ├── split-agg-by-entities-test-1-input.cml
│ │ ├── split-agg-by-entities-test-2-input.cml
│ │ ├── split-agg-by-entities-test-3-input.cml
│ │ ├── split-agg-by-entities-test-4-input-1.cml
│ │ ├── split-agg-by-entities-test-4-input-2.cml
│ │ ├── split-bc-by-owner-test-1-input.cml
│ │ ├── split-bc-by-owner-test-2-input.cml
│ │ ├── split-bc-by-owner-test-3-input.cml
│ │ ├── split-bc-by-owner-test-4-input.cml
│ │ ├── split-bc-by-owner-test-5-input-1.cml
│ │ ├── split-bc-by-owner-test-5-input-2.cml
│ │ ├── split-bc-by-use-cases-test-1-input.cml
│ │ ├── split-bc-by-use-cases-test-2-input.cml
│ │ ├── split-bc-by-use-cases-test-3-input.cml
│ │ ├── split-bc-by-use-cases-test-4-input.cml
│ │ ├── split-bc-by-use-cases-test-5-input-1.cml
│ │ ├── split-bc-by-use-cases-test-5-input-2.cml
│ │ ├── split-by-duplicate-entity-test-1-input.cml
│ │ ├── split-by-duplicate-entity-test-1-output.cml
│ │ ├── split-by-duplicate-entity-test-2-no-duplicates.cml
│ │ ├── split-system-tier-test-1-input.cml
│ │ ├── split-system-tier-test-2-input.cml
│ │ ├── split-system-tier-test-3-input.cml
│ │ ├── split-system-tier-test-3-output.cml
│ │ ├── split-system-tier-test-4-input.cml
│ │ ├── split-system-tier-test-4-output.cml
│ │ ├── split-system-tier-test-5-input.cml
│ │ ├── split-system-tier-test-6-input.cml
│ │ ├── split-system-tier-test-7-input.cml
│ │ ├── split-system-tier-test-8-input.cml
│ │ ├── switch-from-partnership-to-sharedkernel-precondition-checks-input.cml
│ │ ├── switch-from-partnership-to-sharedkernel-precondition-checks-multiple-rels-input.cml
│ │ ├── switch-from-partnership-to-sharedkernel-precondition-checks-no-rel-input.cml
│ │ ├── switch-from-partnership-to-sharedkernel-test-1-input.cml
│ │ ├── switch-from-sharedkernel-to-partnership-precondition-checks-input.cml
│ │ ├── switch-from-sharedkernel-to-partnership-precondition-checks-multiple-rels-input.cml
│ │ ├── switch-from-sharedkernel-to-partnership-precondition-checks-no-rel-input.cml
│ │ ├── switch-from-sharedkernel-to-partnership-test-1-input.cml
│ │ └── wrap-value-in-cluster-1.cml
│ ├── servicecutter
│ │ ├── .wrong-servicecutter.yml
│ │ ├── CML_Model_without_ContextMap.cml
│ │ ├── CML_Model_without_attributes.cml
│ │ ├── DDD_Sample_Expected_JSON_Input.json
│ │ ├── DDD_Sample_Input.cml
│ │ ├── DDD_Sample_Input_Root-Elements.cml
│ │ ├── DDD_Sample_ServiceCutter-User-Representations.scl
│ │ ├── solver-configuration.json
│ │ ├── user-representations-builder-test-1.cml
│ │ ├── user-representations-builder-test-10.cml
│ │ ├── user-representations-builder-test-11.cml
│ │ ├── user-representations-builder-test-2.cml
│ │ ├── user-representations-builder-test-3.cml
│ │ ├── user-representations-builder-test-3.scl
│ │ ├── user-representations-builder-test-4.cml
│ │ ├── user-representations-builder-test-5.cml
│ │ ├── user-representations-builder-test-6.cml
│ │ ├── user-representations-builder-test-7.cml
│ │ ├── user-representations-builder-test-8.cml
│ │ ├── user-representations-builder-test-9.cml
│ │ ├── user-representations-generation-test-1.cml
│ │ └── user-representations-generation-test-1.scl
│ ├── sketchminer
│ │ ├── actor-test-1.cml
│ │ ├── aggregate-without-state-transition-test-1.cml
│ │ ├── app-layer-name-test-1.cml
│ │ ├── exclusive-gate-command-test-1.cml
│ │ ├── exclusive-gate-command-test-2.cml
│ │ ├── exclusive-gate-command-test-3.cml
│ │ ├── exclusive-gate-event-test-1.cml
│ │ ├── exclusive-gate-event-test-2.cml
│ │ ├── exclusive-gate-event-test-3.cml
│ │ ├── link-integ-test.cml
│ │ ├── link-integ-test2.cml
│ │ ├── loop-test-1.cml
│ │ ├── loop-test-2.cml
│ │ ├── loop-test-3.cml
│ │ ├── loop-test-4.cml
│ │ ├── multiple-input-events-test-1.cml
│ │ ├── no-coordination-existing-test-1.cml
│ │ ├── no-flow-existing-test-1.cml
│ │ ├── order-of-separate-sequences-test-1.cml
│ │ ├── parallel-fragments-test-1.cml
│ │ ├── restbucks-integ-test.cml
│ │ ├── simple-coordination-test-1.cml
│ │ ├── simple-coordination-test-2.cml
│ │ ├── simple-sequence-test-1.cml
│ │ ├── simple-sequence-test-2.cml
│ │ ├── simple-sequence-with-parallel-step-test-1.cml
│ │ ├── simple-sequence-with-parallel-step-test-2.cml
│ │ ├── simple-sequence-with-parallel-step-test-3.cml
│ │ ├── state-transition-comment-test-1.cml
│ │ ├── state-transition-comment-test-2.cml
│ │ └── underlines-test-1.cml
│ ├── standalone
│ │ ├── hello-world.cml
│ │ ├── refactoring-test.cml
│ │ └── simple-context-map.cml
│ └── subdomain-resolving
│ │ ├── imported-file-test-1.cml
│ │ ├── imported-file-test-2.cml
│ │ ├── root-file-with-imports-test-1.cml
│ │ ├── root-file-with-imports-test-2.cml
│ │ └── simple-single-file-test.cml
├── pom.xml
└── src
│ └── org
│ └── contextmapper
│ ├── dsl
│ ├── AbstractCMLInputFileTest.java
│ ├── AbstractDirectoryIntegrationTest.java
│ ├── AggregateDSLParsingTest.xtend
│ ├── ApplicationLayerDSLParsingTest.xtend
│ ├── ApplicationLayerValidationTest.xtend
│ ├── BoundedContextDSLParsingTest.xtend
│ ├── ContextMapDSLParsingTest.xtend
│ ├── ContextMappingDSLFactoryTest.xtend
│ ├── DomainDSLParsingTest.xtend
│ ├── DomainObjectValidatorTest.xtend
│ ├── StakeholderDSLParsingTest.xtend
│ ├── SymmetricRelationshipDSLParsingTest.xtend
│ ├── TacticDDDAssociatonsGrammarTest.xtend
│ ├── TacticDDDDomainObjectsTest.xtend
│ ├── TacticDDDDomainServicesTest.xtend
│ ├── TacticDDDListOfEnumsTest.xtend
│ ├── TacticDDDModuleValidationTest.xtend
│ ├── TacticDDDOperationsGrammarAndValidationTest.xtend
│ ├── UniquenessAcrossFilesTest.java
│ ├── UniquenessValidatorTest.xtend
│ ├── UpstreamDownstreamExposedAggregatesTest.xtend
│ ├── UpstreamDownstreamGovernanceRightsTest.xtend
│ ├── UpstreamDownstreamRelationshipDSLParsingTest.xtend
│ ├── UseCaseDSLParsingTest.xtend
│ ├── UserStoryDSLParsingTest.xtend
│ ├── ValueRegisterDSLParsingTest.xtend
│ ├── cml
│ │ ├── CMLImportResolverTest.java
│ │ ├── CMLModelDomainAndSubdomainResolverTest.java
│ │ ├── CMLModelObjectsResolvingHelperTest.java
│ │ ├── CMLResourceTest.java
│ │ └── CommentSerializationTest.java
│ ├── exception
│ │ └── RefactoringSerializationExceptionTest.java
│ ├── generators
│ │ ├── XMIGeneratorTest.java
│ │ ├── contextmap
│ │ │ ├── ContextMapGeneratorTest.java
│ │ │ └── ContextMapModelConverterTest.java
│ │ ├── freemarker
│ │ │ ├── AbstractFreemarkerTextCreatorTest.java
│ │ │ ├── GenericContentGeneratorTest.java
│ │ │ ├── hello.ftl
│ │ │ └── hello_error.ftl
│ │ ├── mdsl
│ │ │ ├── MDSLAPIDescriptionCreatorTest.java
│ │ │ ├── MDSLContractsGeneratorTest.java
│ │ │ ├── MDSLModelCreatorTest.java
│ │ │ ├── ProtectedRegionContextFactoryTest.java
│ │ │ ├── ProtectedRegionReaderTest.java
│ │ │ └── TestMDSLAPIDescriptionCreator.java
│ │ ├── mocks
│ │ │ ├── ContextMappingModelResourceMock.java
│ │ │ ├── IFileSystemAccess2Mock.java
│ │ │ ├── IGeneratorContextMock.java
│ │ │ ├── ServiceCutterConfigurationModelResourceMock.java
│ │ │ └── URIMock.java
│ │ ├── plantuml
│ │ │ ├── AssociationLinkTest.java
│ │ │ ├── PlantUMLAggregateClassDiagramCreatorTest.java
│ │ │ ├── PlantUMLBoundedContextClassDiagramCreatorTest.java
│ │ │ ├── PlantUMLComponentDiagramCreatorTest.java
│ │ │ ├── PlantUMLGeneratorTest.java
│ │ │ ├── PlantUMLModuleClassDiagramCreatorTest.java
│ │ │ ├── PlantUMLStakeholderDiagramCreatorTest.java
│ │ │ ├── PlantUMLStateDiagramCreatorTest.java
│ │ │ ├── PlantUMLSubdomainClassDiagramCreatorTest.java
│ │ │ ├── PlantUMLTest.java
│ │ │ ├── PlantUMLUseCaseDiagramCreatorTest.java
│ │ │ ├── PlantUMLUseCaseInteractionsSequenceDiagramCreatorTest.java
│ │ │ ├── PlantUMLValueImpactMapDiagramCreatorTest.java
│ │ │ └── value_impact_mapping
│ │ │ │ └── model
│ │ │ │ └── StakeholderTest.java
│ │ └── sketchminer
│ │ │ ├── SketchMinerCoordinationModelCreatorTest.java
│ │ │ ├── SketchMinerGeneratorTest.java
│ │ │ ├── SketchMinerLinkCreatorTest.java
│ │ │ ├── SketchMinerModelCreatorTest.java
│ │ │ └── model
│ │ │ ├── TaskSequenceTest.java
│ │ │ └── TaskTest.java
│ ├── hover
│ │ └── CMLHoverTextProviderTest.java
│ ├── quickfixes
│ │ ├── AbstractQuickFixTest.java
│ │ ├── CreateMissingBoundedContextQuickFixTest.java
│ │ ├── ExtractIDValueObjectQuickFixTest.java
│ │ └── SplitStoryByVerbTest.java
│ ├── refactoring
│ │ ├── AbstractRefactoringTest.java
│ │ ├── AddEthicalValueAssessmentToStoryRefactoringTest.java
│ │ ├── ChangePartnershipToUpstreamDownstreamRefactoringTest.java
│ │ ├── CompoundKeyTest.java
│ │ ├── DeriveBoundedContextFromSubdomainsTest.java
│ │ ├── DeriveFrontendAndBackendSystemsFromFeatureTest.java
│ │ ├── DeriveSubdomainFromUserRequirementsTest.java
│ │ ├── ExtractAggregatesByCohesionTest.java
│ │ ├── ExtractAggregatesByVolatilityTest.java
│ │ ├── ExtractPartnershipRefactoringTest.java
│ │ ├── ExtractSharedKernelRefactoringTest.java
│ │ ├── MergeAggregatesTest.java
│ │ ├── MergeBoundedContextsTest.java
│ │ ├── SplitAggregateByEntitiesTest.java
│ │ ├── SplitBoundedContextByOwnerTest.java
│ │ ├── SplitBoundedContextByUseCasesTest.java
│ │ ├── SplitSystemIntoSubsystemsTest.java
│ │ ├── SwitchFromPartnershipToSharedKernelRefactoringTest.java
│ │ ├── SwitchFromSharedKernelToPartnershipRefactoringTest.java
│ │ ├── stakeholders
│ │ │ ├── CreateStakeholderFromUserStoryRoleTest.java
│ │ │ ├── CreateValue4StakeholderRefactoringTest.java
│ │ │ └── MoveStakeholderToNewStakeholderGroupRefactoringTest.java
│ │ └── value_registers
│ │ │ ├── CreateValueRegisterForBoundedContextTest.java
│ │ │ └── WrapValueInClusterRefactoringTest.java
│ ├── standalone
│ │ └── StandaloneAPITest.java
│ └── util
│ │ └── ParsingErrorAssertions.java
│ └── servicecutter
│ └── dsl
│ └── scl
│ └── SCLResourceContainerTest.java
├── org.contextmapper.dsl.ui.tests
├── .classpath
├── .project
├── META-INF
│ └── MANIFEST.MF
├── build.properties
└── pom.xml
├── org.contextmapper.dsl.ui
├── .classpath
├── .project
├── META-INF
│ └── MANIFEST.MF
├── about.ini
├── build.properties
├── icons
│ ├── cml-32x32.png
│ ├── cml-dialog-image.png
│ └── cml.png
├── plugin.xml
├── pom.xml
├── samples
│ └── freemarker
│ │ ├── csv-files
│ │ ├── stakeholders.csv.ftl
│ │ └── value-registers.csv.ftl
│ │ ├── jhipster
│ │ ├── JDL.ftl
│ │ ├── JHipster-Microservices.jdl.ftl
│ │ └── JHipster-Monolith.jdl.ftl
│ │ ├── markdown-templates
│ │ ├── FullReportTemplate.md.ftl
│ │ ├── GlossaryTemplate.md.ftl
│ │ ├── bounded-contexts
│ │ │ ├── bounded-context-list-detailed.ftl
│ │ │ ├── bounded-context-list-glossary.ftl
│ │ │ └── bounded-context-list-simple.ftl
│ │ ├── common
│ │ │ └── header.md.ftl
│ │ ├── domain-objects
│ │ │ └── domain-object-attribute-and-operation-tables.ftl
│ │ ├── domains
│ │ │ ├── domain-list-glossary.md.ftl
│ │ │ └── domain-list.md.ftl
│ │ ├── flows
│ │ │ └── application_flow.ftl
│ │ └── states
│ │ │ └── state_transition.ftl
│ │ └── sample-models
│ │ ├── OnlineShopScenario.cml
│ │ └── TacticDDDModelSkeleton.cml
└── src
│ └── org
│ └── contextmapper
│ ├── dsl
│ └── ui
│ │ ├── ContextMappingDSLUiModule.xtend
│ │ ├── actions
│ │ ├── GeneratorsActionGroup.java
│ │ └── RefactoringActionGroup.java
│ │ ├── contentassist
│ │ └── ContextMappingDSLProposalProvider.xtend
│ │ ├── editor
│ │ ├── CMLEditor.java
│ │ ├── CMLQuickMenuCreator.java
│ │ └── XtextEditorHelper.java
│ │ ├── handler
│ │ ├── AbstractGenerationHandler.java
│ │ ├── AbstractRefactoringHandler.java
│ │ ├── AbstractRefactoringWithUserInputHandler.java
│ │ ├── AddEthicalValueAssessmentToStoryHandler.java
│ │ ├── ContextMapGenerationHandler.java
│ │ ├── ExtractAggregatesByCohesionRefactoringHandler.java
│ │ ├── ExtractAggregatesByVolatilityRefactoringHandler.java
│ │ ├── ExtractSharedKernelRefactoringHandler.java
│ │ ├── GenerateBackendFrontendSystemsFromFeatureBCRefactoringHandler.java
│ │ ├── GenerateBoundedContextFromSubdomainRefactoringHandler.java
│ │ ├── GenerateSubdomainFromUserRequirementsRefactoringHandler.java
│ │ ├── GenericTextFileGenerationHandler.java
│ │ ├── MDSLGenerationHandler.java
│ │ ├── MergeAggregatesRefactoringHandler.java
│ │ ├── MergeBoundedContextsRefactoringHandler.java
│ │ ├── PlantUMLGenerationHandler.java
│ │ ├── SketchMinerGenerationHandler.java
│ │ ├── SplitAggregateByEntitiesRefactoringHandler.java
│ │ ├── SplitBoundedContextByOwnerRefactoringHandler.java
│ │ ├── SplitBoundedContextByUseCasesRefactoringHandler.java
│ │ ├── SplitSystemIntoSubsystemsRefactoringHandler.java
│ │ ├── SuspendPartnershipRefactoringHandler.java
│ │ ├── SwitchFromPartnershipToSharedKernelRefactoringHandler.java
│ │ ├── SwitchFromSharedKernelToPartnershipRefactoringHandler.java
│ │ ├── XMIGenerationHandler.java
│ │ ├── stakeholders
│ │ │ ├── CreateStakeholderForUserStoryRoleHandler.java
│ │ │ ├── CreateValue4StakeholderHandler.java
│ │ │ └── MoveStakeholderToNewGroupHandler.java
│ │ ├── value_registers
│ │ │ ├── CreateValueRegisterForBoundedContextHandler.java
│ │ │ └── WrapValueInClusterHandler.java
│ │ └── wizard
│ │ │ ├── ChooseName4NewBoundedContextContext.java
│ │ │ ├── ChooseName4NewBoundedContextWizard.java
│ │ │ ├── DeriveBackendFrontendFromFeatureContext.java
│ │ │ ├── DeriveBackendFrontendSystemsFromFeatureWizard.java
│ │ │ ├── DeriveBoundedContextFromSubdomainsContext.java
│ │ │ ├── DeriveBoundedContextFromSubdomainsWizard.java
│ │ │ ├── DeriveSubdomainsFromRequirementsContext.java
│ │ │ ├── DeriveSubdomainsFromRequirementsWizard.java
│ │ │ ├── ExtractAggregatesByCohesionContext.java
│ │ │ ├── ExtractAggregatesByCohesionRefactoringWizard.java
│ │ │ ├── ExtractAggregatesByVolatilityContext.java
│ │ │ ├── ExtractAggregatesByVolatilityRefactoringWizard.java
│ │ │ ├── GenerateContextMapContext.java
│ │ │ ├── GenerateContextMapWizard.java
│ │ │ ├── GenerateGenericTextFileContext.java
│ │ │ ├── GenerateGenericTextFileWizard.java
│ │ │ ├── MergeAggregatesContext.java
│ │ │ ├── MergeAggregatesRefactoringWizard.java
│ │ │ ├── MergeBoundedContextsContext.java
│ │ │ ├── MergeBoundedContextsRefactoringWizard.java
│ │ │ ├── SplitSystemIntoSubsystemsContext.java
│ │ │ ├── SplitSystemIntoSubsystemsWizard.java
│ │ │ ├── SuspendPartnershipContext.java
│ │ │ ├── SuspendPartnershipRefactoringWizard.java
│ │ │ └── pages
│ │ │ ├── AggregateSelectionWizardPage.java
│ │ │ ├── ContextMapperWizardPage.java
│ │ │ ├── DeriveBackendFrontendSystemsFromFeatureWizardPage.java
│ │ │ ├── DeriveBoundedContextFromSubdomainsWizardPage.java
│ │ │ ├── DeriveSubdomainFromRequirementsWizardPage.java
│ │ │ ├── GenerateContextMapWizardPage.java
│ │ │ ├── GenerateGenericTextFileWizardPage.java
│ │ │ ├── LikelihoodForChangeSelectionWizardPage.java
│ │ │ ├── NewBoundedContextNameWizardPage.java
│ │ │ ├── SplitSystemIntoSubsystemsWizardPage.java
│ │ │ ├── SuspendPartnershipWizardPage.java
│ │ │ ├── TwoAggregatesSelectionWizardPage.java
│ │ │ ├── TwoBoundedContextSelectionWizardPage.java
│ │ │ └── components
│ │ │ ├── FileByExtensionChooser.java
│ │ │ ├── FreemarkerFileChooser.java
│ │ │ └── SCLFileChooser.java
│ │ ├── hover
│ │ ├── CMLHoverProvider.java
│ │ ├── CMLKeywordAtOffsetHelper.java
│ │ └── CMLXbaseDispatchingEObjectTextHover.java
│ │ ├── images
│ │ └── CMLImageDescriptionFactory.java
│ │ ├── labeling
│ │ ├── ContextMappingDSLDescriptionLabelProvider.xtend
│ │ └── ContextMappingDSLLabelProvider.xtend
│ │ ├── outline
│ │ └── ContextMappingDSLOutlineTreeProvider.xtend
│ │ ├── quickfix
│ │ ├── CMLTextEditComposer.java
│ │ ├── ContextMappingDSLQuickfixProvider.xtend
│ │ ├── context
│ │ │ ├── SelectStoryVerbsContext.java
│ │ │ └── SelectStoryVerbsContextCreator.java
│ │ └── wizard
│ │ │ ├── SelectStoryVerbsWizard.java
│ │ │ └── page
│ │ │ └── SelectUserStoryVerbsWizardPage.java
│ │ └── wizard
│ │ ├── NewCMLFileWizard.java
│ │ └── page
│ │ └── WizardNewCMLFileCreationPage.java
│ ├── servicecutter
│ └── dsl
│ │ └── ui
│ │ ├── ServiceCutterConfigurationDSLUiModule.xtend
│ │ ├── actions
│ │ └── GeneratorsActionGroup.java
│ │ ├── contentassist
│ │ └── ServiceCutterConfigurationDSLProposalProvider.xtend
│ │ ├── editor
│ │ └── SCLEditor.java
│ │ ├── labeling
│ │ ├── ServiceCutterConfigurationDSLDescriptionLabelProvider.xtend
│ │ └── ServiceCutterConfigurationDSLLabelProvider.xtend
│ │ ├── outline
│ │ └── ServiceCutterConfigurationDSLOutlineTreeProvider.xtend
│ │ └── quickfix
│ │ └── ServiceCutterConfigurationDSLQuickfixProvider.xtend
│ └── tactic
│ └── dsl
│ └── ui
│ ├── TacticDDDLanguageUiModule.xtend
│ ├── contentassist
│ └── TacticDDDLanguageProposalProvider.xtend
│ ├── labeling
│ ├── TacticDDDLanguageDescriptionLabelProvider.xtend
│ └── TacticDDDLanguageLabelProvider.xtend
│ ├── outline
│ └── TacticDDDLanguageOutlineTreeProvider.xtend
│ └── quickfix
│ └── TacticDDDLanguageQuickfixProvider.xtend
├── org.contextmapper.dsl
├── .classpath
├── .launch
│ ├── GenerateContextMappingDSLInfrastructure.launch
│ └── LaunchRuntimeEclipse.launch
├── .project
├── META-INF
│ └── MANIFEST.MF
├── build.gradle
├── build.properties
├── plugin.xml
├── pom.xml
└── src
│ └── org
│ └── contextmapper
│ ├── dsl
│ ├── ContextMapperPDAUtil.java
│ ├── ContextMappingDSL.xtext
│ ├── ContextMappingDSLRuntimeModule.xtend
│ ├── ContextMappingDSLStandaloneSetup.xtend
│ ├── GenerateContextMappingDSL.mwe2
│ ├── cml
│ │ ├── CMLImportResolver.java
│ │ ├── CMLModelDomainAndSubdomainResolver.java
│ │ ├── CMLModelObjectsResolvingHelper.java
│ │ ├── CMLResource.java
│ │ ├── CMLTypeChecker.java
│ │ ├── XtextIdHelper.java
│ │ └── exception
│ │ │ └── ResourceIsNoCMLModelException.java
│ ├── exception
│ │ ├── ContextMapperApplicationException.java
│ │ └── RefactoringSerializationException.java
│ ├── formatting2
│ │ └── ContextMappingDSLFormatter.xtend
│ ├── generator
│ │ ├── AbstractContextMapGenerator.java
│ │ ├── AbstractContextMappingModelGenerator.java
│ │ ├── AbstractFreemarkerTextCreator.java
│ │ ├── ContextMapGenerator.java
│ │ ├── GenericContentGenerator.java
│ │ ├── MDSLContractsGenerator.java
│ │ ├── PlantUMLGenerator.java
│ │ ├── SketchMinerGenerator.java
│ │ ├── XMIGenerator.java
│ │ ├── contextmap
│ │ │ ├── ContextMapFormat.java
│ │ │ └── ContextMapModelConverter.java
│ │ ├── exception
│ │ │ ├── GeneratorInputException.java
│ │ │ ├── InputNotYetSupportedException.java
│ │ │ ├── NoContextMapDefinedException.java
│ │ │ └── NoContextMappingModelDefinedException.java
│ │ ├── freemarker
│ │ │ ├── BoundedContextsFilterMethod.java
│ │ │ ├── FreemarkerTextGenerator.java
│ │ │ ├── GetTypeOfComplexTypeMethod.java
│ │ │ ├── InstanceOfMethod.java
│ │ │ └── TeamsFilterMethod.java
│ │ ├── mdsl
│ │ │ ├── MDSLAPIDescriptionCreator.java
│ │ │ ├── MDSLDataTypeCreator.java
│ │ │ ├── MDSLModelCreator.java
│ │ │ ├── MDSLNameEncoder.java
│ │ │ ├── MDSLPatternMatcher.java
│ │ │ ├── ProtectedRegionContext.java
│ │ │ ├── ProtectedRegionContextFactory.java
│ │ │ ├── ProtectedRegionIdentifier.java
│ │ │ ├── ProtectedRegionReader.java
│ │ │ ├── generatorcontext
│ │ │ │ ├── DownstreamContext.java
│ │ │ │ └── UpstreamAPIContext.java
│ │ │ ├── mdsl-api-description.ftl
│ │ │ └── model
│ │ │ │ ├── APIUsageContext.java
│ │ │ │ ├── DataType.java
│ │ │ │ ├── DataTypeAttribute.java
│ │ │ │ ├── EndpointClient.java
│ │ │ │ ├── EndpointContract.java
│ │ │ │ ├── EndpointOffer.java
│ │ │ │ ├── EndpointOperation.java
│ │ │ │ ├── EndpointProvider.java
│ │ │ │ ├── FlowStep.java
│ │ │ │ ├── IntegrationScenario.java
│ │ │ │ ├── OrchestrationFlow.java
│ │ │ │ ├── ServiceSpecification.java
│ │ │ │ └── Story.java
│ │ ├── plantuml
│ │ │ ├── AbstractPlantUMLClassDiagramCreator.java
│ │ │ ├── AbstractPlantUMLDiagramCreator.java
│ │ │ ├── AbstractPlantUMLMindMapDiagramCreator.java
│ │ │ ├── AbstractPlantUMLStateDiagramCreator.java
│ │ │ ├── AssociationInfo.java
│ │ │ ├── AssociationLink.java
│ │ │ ├── ClassRelationType.java
│ │ │ ├── Multiplicity.java
│ │ │ ├── PlantUMLAggregateClassDiagramCreator.java
│ │ │ ├── PlantUMLBoundedContextClassDiagramCreator.java
│ │ │ ├── PlantUMLComponentDiagramCreator.java
│ │ │ ├── PlantUMLDiagramCreator.java
│ │ │ ├── PlantUMLModuleClassDiagramCreator.java
│ │ │ ├── PlantUMLStakeholderMapGenerator.java
│ │ │ ├── PlantUMLStateDiagramCreator4Aggregate.java
│ │ │ ├── PlantUMLStateDiagramCreator4Flow.java
│ │ │ ├── PlantUMLSubdomainClassDiagramCreator.java
│ │ │ ├── PlantUMLUseCaseDiagramCreator.java
│ │ │ ├── PlantUMLUseCaseInteractionsSequenceDiagramCreator.java
│ │ │ ├── PlantUMLValueImpactMapGenerator.java
│ │ │ ├── UMLRelationship.java
│ │ │ └── value_impact_mapping
│ │ │ │ ├── CML2ValueImpactModelMapper.java
│ │ │ │ ├── ValueImpactMapPumlTextCreator.java
│ │ │ │ ├── model
│ │ │ │ ├── ConsequenceOnValue.java
│ │ │ │ ├── MitigationAction.java
│ │ │ │ ├── Stakeholder.java
│ │ │ │ ├── SystemOfInterest.java
│ │ │ │ └── Value.java
│ │ │ │ └── value-impact-map-puml.ftl
│ │ └── sketchminer
│ │ │ ├── LZString.java
│ │ │ ├── SketchMinerCoordinationModelCreator.java
│ │ │ ├── SketchMinerLinkCreator.java
│ │ │ ├── SketchMinerModelCreator.java
│ │ │ ├── converter
│ │ │ ├── Coordination2SketchMinerConverter.java
│ │ │ ├── Flow2SketchMinerConverter.java
│ │ │ ├── SimplifiedCoordinationStep.java
│ │ │ └── SimplifiedFlowStep.java
│ │ │ ├── model
│ │ │ ├── SketchMinerModel.java
│ │ │ ├── Task.java
│ │ │ ├── TaskSequence.java
│ │ │ └── TaskType.java
│ │ │ └── sketchminer.ftl
│ ├── hover
│ │ ├── CMLHoverTextProvider.java
│ │ └── impl
│ │ │ ├── AbstractCMLHoverTextProvider.java
│ │ │ ├── HTMLHoverTextProvider4CML.xtend
│ │ │ └── MarkdownHoverTextProvider4CML.xtend
│ ├── quickfixes
│ │ ├── CMLQuickFix.java
│ │ ├── CreateMissingBoundedContextQuickFix.java
│ │ ├── SplitStoryByVerb.java
│ │ └── tactic
│ │ │ └── ExtractIDValueObjectQuickFix.java
│ ├── refactoring
│ │ ├── AbstractExtractSymmetricRelationshipRefactoring.java
│ │ ├── AbstractRefactoring.java
│ │ ├── AbstractToggleSymmetricRelationshipRefactoring.java
│ │ ├── AddEthicalValueAssessmentToStory.java
│ │ ├── ChangePartnershipToUpstreamDownstreamRefactoring.java
│ │ ├── CompoundKey.java
│ │ ├── ContextMappingModelHelper.java
│ │ ├── ContextSplittingIntegrationType.java
│ │ ├── DeriveBoundedContextFromSubdomains.java
│ │ ├── DeriveFrontendAndBackendSystemsFromFeature.java
│ │ ├── DeriveSubdomainFromUserRequirements.java
│ │ ├── ExtractAggregatesByCohesion.java
│ │ ├── ExtractAggregatesByVolatility.java
│ │ ├── ExtractPartnershipRefactoring.java
│ │ ├── ExtractSharedKernelRefactoring.java
│ │ ├── MergeAggregatesRefactoring.java
│ │ ├── MergeBoundedContextsRefactoring.java
│ │ ├── RefactoringHelper.java
│ │ ├── SemanticCMLRefactoring.java
│ │ ├── SplitAggregateByEntitiesRefactoring.java
│ │ ├── SplitBoundedContextByAggregateAttribute.java
│ │ ├── SplitBoundedContextByFeatures.java
│ │ ├── SplitBoundedContextByOwner.java
│ │ ├── SplitSystemIntoSubsystems.java
│ │ ├── SuspendPartnershipMode.java
│ │ ├── SwitchFromPartnershipToSharedKernelRefactoring.java
│ │ ├── SwitchFromSharedKernelToPartnershipRefactoring.java
│ │ ├── exception
│ │ │ └── RefactoringInputException.java
│ │ ├── stakeholders
│ │ │ ├── CreateStakeholderForUserStoryRole.java
│ │ │ ├── CreateValue4StakeholderRefactoring.java
│ │ │ └── MoveStakeholderToNewStakeholderGroupRefactoring.java
│ │ └── value_registers
│ │ │ ├── CreateValueRegisterForBoundedContext.java
│ │ │ └── WrapValueInClusterRefactoring.java
│ ├── scoping
│ │ ├── CMLScopingHelper.java
│ │ └── ContextMappingDSLScopeProvider.xtend
│ ├── standalone
│ │ ├── ContextMapperStandaloneSetup.java
│ │ ├── FileSystemHelper.java
│ │ ├── StandaloneContextMapper.java
│ │ └── StandaloneContextMapperAPI.java
│ └── validation
│ │ ├── AbstractCMLValidator.java
│ │ ├── AggregateSemanticsValidator.java
│ │ ├── ApplicationCoordinationSemanticsValidator.java
│ │ ├── ApplicationFlowSemanticsValidator.java
│ │ ├── BoundedContextRelationshipSemanticsValidator.java
│ │ ├── BoundedContextSemanticsValidator.java
│ │ ├── ContextMapSemanticsValidator.java
│ │ ├── DomainObjectValidator.java
│ │ ├── DomainValidator.java
│ │ ├── TacticDDDModuleValidator.java
│ │ ├── TacticDDDOperationsValidator.java
│ │ ├── TeamSemanticsValidator.java
│ │ ├── UniquenessValidator.java
│ │ ├── UserRequirementsValidator.java
│ │ └── ValidationMessages.java
│ ├── servicecutter
│ └── dsl
│ │ ├── ServiceCutterConfigurationDSL.xtext
│ │ ├── ServiceCutterConfigurationDSLRuntimeModule.xtend
│ │ ├── ServiceCutterConfigurationDSLStandaloneSetup.xtend
│ │ ├── formatting2
│ │ └── ServiceCutterConfigurationDSLFormatter.xtend
│ │ ├── scl
│ │ ├── SCLResourceContainer.java
│ │ └── exception
│ │ │ └── ResourceIsNoSCLModelException.java
│ │ └── scoping
│ │ └── ServiceCutterConfigurationDSLScopeProvider.xtend
│ └── tactic
│ └── dsl
│ ├── TacticDDDLanguage.xtext
│ ├── TacticDDDLanguageRuntimeModule.xtend
│ ├── TacticDDDLanguageStandaloneSetup.xtend
│ ├── TacticDslExtensions.xtend
│ ├── conversion
│ └── TacticDslValueConverters.xtend
│ ├── formatting2
│ └── TacticDDDLanguageFormatter.xtend
│ ├── scoping
│ ├── Scope.java
│ └── TacticDDDLanguageScopeProvider.xtend
│ └── validation
│ ├── IssueCodes.java
│ ├── TacticDDDLanguageValidator.xtend
│ └── TacticDslSyntaxErrorMessageProvider.xtend
├── pom.xml
└── settings.gradle
/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | github: stefan-ka
2 |
3 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/bug_report.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Bug report
3 | about: Create a report to help us improve
4 |
5 | ---
6 |
7 | **Describe the bug**
8 | A clear and concise description of what the bug is.
9 |
10 | **To Reproduce**
11 | Steps to reproduce the behavior:
12 | 1. Go to '...'
13 | 2. Click on '....'
14 | 3. Scroll down to '....'
15 | 4. See error
16 |
17 | **Expected behavior**
18 | A clear and concise description of what you expected to happen.
19 |
20 | **Screenshots / Exceptions**
21 | If applicable, add screenshots to help explain your problem.
22 | Provide error messages and exceptions you may got in the eclipse plugin (see error log view).
23 |
24 | **Input files to reproduce**
25 | If possible, provide input files which allow reproducing the problem (CML or SCL files).
26 |
27 | **IDE and Plugin (please complete the following information):**
28 | - Eclipse version
29 | - ContextMapper plugin version
30 |
31 | **Additional context**
32 | Add any other context about the problem here.
33 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feature_request.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Feature request
3 | about: Suggest an idea for this project
4 |
5 | ---
6 |
7 | **Is your feature request related to a problem? Please describe.**
8 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
9 |
10 | **Describe the solution you'd like**
11 | A clear and concise description of what you want to happen.
12 |
13 | **Describe alternatives you've considered**
14 | A clear and concise description of any alternative solutions or features you've considered.
15 |
16 | **Additional context**
17 | Add any other context or screenshots about the feature request here.
18 |
--------------------------------------------------------------------------------
/.github/workflows/settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | false
6 |
7 |
8 | github
9 | ${env.GH_CI_USERNAME}
10 | ${env.GH_CI_TOKEN}
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Compiled class file
2 | *.class
3 | **/target
4 | **/out
5 | **/bin
6 |
7 | # Log file
8 | *.log
9 |
10 | # BlueJ files
11 | *.ctxt
12 |
13 | # Mobile Tools for Java (J2ME)
14 | .mtj.tmp/
15 |
16 | # Package Files #
17 | *.jar
18 | *.war
19 | *.nar
20 | *.ear
21 | *.zip
22 | *.tar.gz
23 | *.rar
24 |
25 | # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
26 | hs_err_pid*
27 |
28 | # Eclipse files
29 | **/.settings
30 | plugin.xml_gen
31 |
32 | # IntelliJ files
33 | .idea/
34 | **/*.iml
35 |
36 | # Xtext generated sources
37 | **/src-gen
38 | **/xtend-gen
39 | **/model/generated/
40 |
41 | # Build
42 | .gradle/
43 | build/
44 |
45 | # MacOS
46 | .DS_Store
47 |
--------------------------------------------------------------------------------
/.java-version:
--------------------------------------------------------------------------------
1 | 11.0
2 |
--------------------------------------------------------------------------------
/.mvn/wrapper/maven-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.6/apache-maven-3.8.6-bin.zip
2 |
--------------------------------------------------------------------------------
/.project:
--------------------------------------------------------------------------------
1 |
2 |
3 | org.contextmapper.dsl.parent
4 |
5 |
6 |
7 |
8 |
9 | org.eclipse.m2e.core.maven2Builder
10 |
11 |
12 |
13 |
14 |
15 | org.eclipse.m2e.core.maven2Nature
16 |
17 |
18 |
--------------------------------------------------------------------------------
/codecov.yml:
--------------------------------------------------------------------------------
1 | coverage:
2 | status:
3 | project: on
4 | patch: off
5 | precision: 1
6 |
7 |
--------------------------------------------------------------------------------
/docs/madr/README.md:
--------------------------------------------------------------------------------
1 | # Markdown Any Decision Records (MADR)
2 |
3 | Within this folder we document our design and architectural decisions according to the [MADR template](https://github.com/adr/madr).
4 |
5 | To create a new record, use the template file [here](https://github.com/adr/madr/blob/develop/template/adr-template.md).
6 |
--------------------------------------------------------------------------------
/gradle.properties:
--------------------------------------------------------------------------------
1 | ossSnapshotRepository=https://oss.sonatype.org/content/repositories/snapshots/
2 | ossReleaseStagingRepository=https://oss.sonatype.org/service/local/staging/deploy/maven2/
3 |
--------------------------------------------------------------------------------
/gradle/maven-deployment.gradle:
--------------------------------------------------------------------------------
1 | //see https://docs.gradle.org/current/userguide/maven_plugin.html
2 | apply plugin: 'maven-publish'
3 |
4 | publishing {
5 | repositories {
6 | maven {
7 | def releasesRepoUrl = "file://${buildDir}/localRepo"
8 | def snapshotsRepoUrl = "file://${buildDir}/localRepo"
9 | url = version.endsWith('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/gradle/source-layout.gradle:
--------------------------------------------------------------------------------
1 | if (name.endsWith("-tests")) {
2 | sourceSets {
3 | main {
4 | java.srcDirs = []
5 | resources.srcDirs = []
6 | }
7 | test {
8 | java.srcDirs = ['src', 'src-gen', 'xtend-gen']
9 | resources.srcDirs = ['src', 'src-gen']
10 | xtendOutputDir = 'xtend-gen'
11 | }
12 | }
13 | } else {
14 | sourceSets {
15 | main {
16 | java.srcDirs = ['src', 'src-gen', 'xtend-gen']
17 | resources.srcDirs = ['src', 'src-gen']
18 | xtendOutputDir = 'xtend-gen'
19 | }
20 | test {
21 | java.srcDirs = []
22 | resources.srcDirs = []
23 | }
24 | }
25 | }
26 |
27 | sourceSets.all {
28 | resources.exclude '**/*.g', '**/*.mwe2', '**/*.xtend', '**/*._trace'
29 | }
30 |
31 | jar {
32 | from('model') {
33 | into('model')
34 | }
35 | manifest {
36 | attributes 'Bundle-SymbolicName': project.name
37 | }
38 | }
39 |
40 | plugins.withId('war') {
41 | webAppDirName = "WebRoot"
42 | }
43 |
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ContextMapper/context-mapper-dsl/981d5beaea768787e5677a0e4091458264302d0b/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Mon Sep 30 23:33:31 CEST 2019
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.2-all.zip
7 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.feature/.project:
--------------------------------------------------------------------------------
1 |
2 |
3 | org.contextmapper.dsl.feature
4 |
5 |
6 |
7 |
8 |
9 | org.eclipse.pde.FeatureBuilder
10 |
11 |
12 |
13 |
14 | org.eclipse.m2e.core.maven2Builder
15 |
16 |
17 |
18 |
19 |
20 | org.eclipse.m2e.core.maven2Nature
21 | org.eclipse.pde.FeatureNature
22 |
23 |
24 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.feature/build.properties:
--------------------------------------------------------------------------------
1 | bin.includes = feature.xml
2 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.feature/pom.xml:
--------------------------------------------------------------------------------
1 |
2 | 4.0.0
3 |
4 | org.contextmapper.dsl
5 | org.contextmapper.dsl.parent
6 | 6.12.1-SNAPSHOT
7 |
8 | org.contextmapper.dsl.feature
9 | eclipse-feature
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ide.tests/.classpath:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ide.tests/build.gradle:
--------------------------------------------------------------------------------
1 | dependencies {
2 | implementation project(':context-mapper-dsl')
3 | implementation project(':context-mapper-lsp')
4 | implementation group: 'commons-io', name: 'commons-io', version: '2.6'
5 | testImplementation "org.junit.jupiter:junit-jupiter-api:5.5.1"
6 | testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:5.5.1"
7 | testImplementation 'org.junit.jupiter:junit-jupiter-params:5.5.1'
8 | testImplementation "org.eclipse.xtext:org.eclipse.xtext.testing:${xtextVersion}"
9 | testImplementation "org.eclipse.xtext:org.eclipse.xtext.xbase.testing:${xtextVersion}"
10 | }
11 | test {
12 | useJUnitPlatform()
13 | }
14 | //this is an eclipse plugin project
15 | eclipseClasspath.enabled=false
16 | cleanEclipseClasspath.enabled=false
17 |
18 | jacocoTestReport {
19 | sourceSets project(':context-mapper-lsp').sourceSets.main
20 |
21 | reports {
22 | html.enabled = true
23 | xml.enabled = true
24 | csv.enabled = false
25 | }
26 | }
27 |
28 | check.dependsOn jacocoTestReport
29 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ide.tests/build.properties:
--------------------------------------------------------------------------------
1 | source.. = src/,\
2 | xtend-gen/
3 | bin.includes = .,\
4 | META-INF/
5 | bin.excludes = **/*.xtend
6 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ide/.classpath:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ide/build.properties:
--------------------------------------------------------------------------------
1 | source.. = src/,\
2 | src-gen/,\
3 | xtend-gen/
4 | bin.includes = .,\
5 | META-INF/
6 | bin.excludes = **/*.xtend
7 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ide/src/org/contextmapper/servicecutter/dsl/ide/ServiceCutterConfigurationDSLIdeModule.xtend:
--------------------------------------------------------------------------------
1 | /*
2 | * generated by Xtext 2.32.0
3 | */
4 | package org.contextmapper.servicecutter.dsl.ide
5 |
6 |
7 | /**
8 | * Use this class to register ide components.
9 | */
10 | class ServiceCutterConfigurationDSLIdeModule extends AbstractServiceCutterConfigurationDSLIdeModule {
11 | }
12 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ide/src/org/contextmapper/servicecutter/dsl/ide/ServiceCutterConfigurationDSLIdeSetup.xtend:
--------------------------------------------------------------------------------
1 | /*
2 | * generated by Xtext 2.32.0
3 | */
4 | package org.contextmapper.servicecutter.dsl.ide
5 |
6 | import com.google.inject.Guice
7 | import org.contextmapper.servicecutter.dsl.ServiceCutterConfigurationDSLRuntimeModule
8 | import org.contextmapper.servicecutter.dsl.ServiceCutterConfigurationDSLStandaloneSetup
9 | import org.eclipse.xtext.util.Modules2
10 |
11 | /**
12 | * Initialization support for running Xtext languages as language servers.
13 | */
14 | class ServiceCutterConfigurationDSLIdeSetup extends ServiceCutterConfigurationDSLStandaloneSetup {
15 |
16 | override createInjector() {
17 | Guice.createInjector(Modules2.mixin(new ServiceCutterConfigurationDSLRuntimeModule, new ServiceCutterConfigurationDSLIdeModule))
18 | }
19 |
20 | }
21 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ide/src/org/contextmapper/tactic/dsl/ide/TacticDDDLanguageIdeModule.xtend:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2018 The Context Mapper Project Team
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 | package org.contextmapper.tactic.dsl.ide
17 |
18 |
19 | /**
20 | * Use this class to register ide components.
21 | */
22 | class TacticDDDLanguageIdeModule extends AbstractTacticDDDLanguageIdeModule {
23 | }
24 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.repository/.project:
--------------------------------------------------------------------------------
1 |
2 |
3 | org.contextmapper.dsl.repository
4 |
5 |
6 |
7 |
8 |
9 | org.eclipse.m2e.core.maven2Builder
10 |
11 |
12 |
13 |
14 |
15 | org.eclipse.m2e.core.maven2Nature
16 |
17 |
18 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.repository/category.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.target/.project:
--------------------------------------------------------------------------------
1 |
2 |
3 | org.contextmapper.dsl.target
4 |
5 |
6 |
7 |
8 |
9 | org.eclipse.m2e.core.maven2Builder
10 |
11 |
12 |
13 |
14 |
15 | org.eclipse.m2e.core.maven2Nature
16 |
17 |
18 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.target/pom.xml:
--------------------------------------------------------------------------------
1 |
2 | 4.0.0
3 |
4 | org.contextmapper.dsl
5 | org.contextmapper.dsl.parent
6 | 6.12.1-SNAPSHOT
7 |
8 | org.contextmapper.dsl.target
9 | eclipse-target-definition
10 |
11 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/.classpath:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/build.properties:
--------------------------------------------------------------------------------
1 | source.. = src/,\
2 | src-gen/,\
3 | xtend-gen/
4 | bin.includes = .,\
5 | META-INF/
6 | bin.excludes = **/*.xtend
7 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/ServiceCutter-Output-Wrong.json:
--------------------------------------------------------------------------------
1 | {
2 | "hello": "just another json file"
3 | }
4 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/common/bc-resolving-test-1.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestContext {
2 | Module TestModule {
3 | Aggregate TestAggregateInModule {
4 | Entity TestEntity1
5 | }
6 |
7 | Entity TestEntity4
8 | }
9 |
10 | Aggregate TestAggregate {
11 | Entity TestEntity2
12 | }
13 |
14 | }
15 |
16 | Domain TestDomain {
17 | Subdomain TestSubdomain {
18 | Entity TestEntity3
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/contextmapgenerator/test-context-map-1.cml:
--------------------------------------------------------------------------------
1 | ContextMap InsuranceContextMap {
2 | contains CustomerManagementContext
3 | contains CustomerSelfServiceContext
4 | contains PrintingContext
5 | contains PolicyManagementContext
6 | contains RiskManagementContext
7 | contains DebtCollection
8 |
9 | CustomerSelfServiceContext [D,C]<-[U,S] CustomerManagementContext
10 |
11 | CustomerManagementContext [D,ACL]<-[U,OHS,PL] PrintingContext
12 |
13 | RiskManagementContext [P]<->[P] PolicyManagementContext : testLabel {
14 | implementationTechnology "Java"
15 | }
16 |
17 | PolicyManagementContext [D,CF]<-[U,OHS] CustomerManagementContext
18 |
19 | PolicyManagementContext [SK]<->[SK] DebtCollection
20 |
21 | }
22 |
23 | BoundedContext CustomerManagementContext
24 |
25 | BoundedContext CustomerSelfServiceContext
26 |
27 | BoundedContext PrintingContext
28 |
29 | BoundedContext PolicyManagementContext
30 |
31 | BoundedContext RiskManagementContext
32 |
33 | BoundedContext DebtCollection
34 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/contextmapgenerator/test-team-map-1.cml:
--------------------------------------------------------------------------------
1 | ContextMap InsuranceTeamMap {
2 | type ORGANIZATIONAL
3 |
4 | contains ContractsTeam, CustomersTeam
5 |
6 | ContractsTeam [D,CF]<-[U,OHS] CustomersTeam
7 | }
8 |
9 | BoundedContext CustomersTeam { type TEAM }
10 |
11 | BoundedContext ContractsTeam { type TEAM }
12 |
13 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/contextmapgenerator/test-team-map-2.cml:
--------------------------------------------------------------------------------
1 | ContextMap InsuranceTeamMap {
2 | type ORGANIZATIONAL
3 |
4 | contains ContractsTeam, CustomersTeam
5 | contains CustomerManagementContext, PolicyManagementContext
6 |
7 | ContractsTeam [D,CF]<-[U,OHS] CustomersTeam
8 |
9 | PolicyManagementContext [D,CF]<-[U,OHS] CustomerManagementContext
10 | }
11 |
12 | BoundedContext CustomersTeam realizes CustomerManagementContext { type TEAM }
13 |
14 | BoundedContext ContractsTeam realizes PolicyManagementContext { type TEAM }
15 |
16 | BoundedContext CustomerManagementContext
17 |
18 | BoundedContext PolicyManagementContext
19 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/bounded-context-filter-test.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestTeam { type TEAM }
2 | BoundedContext TestSystem { type SYSTEM }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/bounded-context-filter-test.ftl:
--------------------------------------------------------------------------------
1 | <#list filterBoundedContexts(boundedContexts) as bc>${bc.name}#list>
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/complex-type-test-1.cml:
--------------------------------------------------------------------------------
1 | BoundedContext bc1 {
2 | Aggregate agg1 {
3 | Entity e1 {
4 | def ReturnType aMethod();
5 | }
6 | }
7 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/complex-type-test-1.ftl:
--------------------------------------------------------------------------------
1 | <#list boundedContexts as bc><#list bc.aggregates as agg><#list agg.domainObjects as do><#list do.operations as op>${getType(op.returnType)}#list>#list>#list>#list>
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/complex-type-test-2.cml:
--------------------------------------------------------------------------------
1 | BoundedContext bc1 {
2 | Aggregate agg1 {
3 | Entity e1 {
4 | def @ReturnType aMethod();
5 | }
6 | Entity ReturnType
7 | }
8 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/complex-type-test-2.ftl:
--------------------------------------------------------------------------------
1 | <#list boundedContexts as bc><#list bc.aggregates as agg><#list agg.domainObjects as do><#list do.operations as op>${getType(op.returnType)}#list>#list>#list>#list>
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/complex-type-test-3.cml:
--------------------------------------------------------------------------------
1 | BoundedContext bc1 {
2 | Aggregate agg1 {
3 | Entity e1 {
4 | def List<@ReturnType> aMethod();
5 | }
6 | Entity ReturnType
7 | }
8 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/complex-type-test-3.ftl:
--------------------------------------------------------------------------------
1 | <#list boundedContexts as bc><#list bc.aggregates as agg><#list agg.domainObjects as do><#list do.operations as op>${getType(op.returnType)}#list>#list>#list>#list>
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/custom-variables-test-1.ftl:
--------------------------------------------------------------------------------
1 | ${projectName}
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/filter-bounded-contexts-wrong-parameter-type-test.cml:
--------------------------------------------------------------------------------
1 | ContextMap testMap {}
2 |
3 | BoundedContext TestTeam { type TEAM }
4 | BoundedContext TestSystem { type SYSTEM }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/filter-bounded-contexts-wrong-parameter-type-test.ftl:
--------------------------------------------------------------------------------
1 | <#list filterBoundedContexts(contextMap) as bc>${bc.name}#list>
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/filter-bounded-contexts-wrong-parameters-test.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestTeam { type TEAM }
2 | BoundedContext TestSystem { type SYSTEM }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/filter-bounded-contexts-wrong-parameters-test.ftl:
--------------------------------------------------------------------------------
1 | <#list filterBoundedContexts(boundedContexts,boundedContexts) as bc>${bc.name}#list>
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/filter-teams-wrong-parameter-type-test.cml:
--------------------------------------------------------------------------------
1 | ContextMap testMap {}
2 |
3 | BoundedContext TestTeam { type TEAM }
4 | BoundedContext TestSystem { type SYSTEM }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/filter-teams-wrong-parameter-type-test.ftl:
--------------------------------------------------------------------------------
1 | <#list filterTeams(contextMap) as bc>${bc.name}#list>
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/filter-teams-wrong-parameters-test.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestTeam { type TEAM }
2 | BoundedContext TestSystem { type SYSTEM }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/filter-teams-wrong-parameters-test.ftl:
--------------------------------------------------------------------------------
1 | <#list filterTeams(boundedContexts,boundedContexts) as bc>${bc.name}#list>
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/get-type-wrong-parameter-type-test.ftl:
--------------------------------------------------------------------------------
1 | <#list boundedContexts as bc><#list bc.aggregates as agg><#list agg.domainObjects as do><#list do.operations as op>${getType(op)}#list>#list>#list>#list>
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/get-type-wrong-parameters-test.ftl:
--------------------------------------------------------------------------------
1 | <#list boundedContexts as bc><#list bc.aggregates as agg><#list agg.domainObjects as do><#list do.operations as op>${getType(op.returnType,op.returnType)}#list>#list>#list>#list>
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/instance-of-second-parameter-no-class.ftl:
--------------------------------------------------------------------------------
1 | <#list contextMap.relationships as rel><#if instanceOf(rel, rel)>true#if>#list>
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/instance-of-test-1.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains context1, context2
3 |
4 | context1 -> context2
5 | }
6 |
7 | BoundedContext context1
8 | BoundedContext context2
9 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/instance-of-test-1.ftl:
--------------------------------------------------------------------------------
1 | <#list contextMap.relationships as rel><#if instanceOf(rel, UpstreamDownstreamRelationship)>true#if>#list>
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/instance-of-wrong-parameters-test.ftl:
--------------------------------------------------------------------------------
1 | <#list contextMap.relationships as rel><#if instanceOf(UpstreamDownstreamRelationship)>true#if>#list>
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/simple-context-map.cml:
--------------------------------------------------------------------------------
1 | ContextMap testMap {
2 | // empty map
3 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/simple-template.ftl:
--------------------------------------------------------------------------------
1 | ${contextMap.name}
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/team-filter-test.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestTeam { type TEAM }
2 | BoundedContext TestSystem { type SYSTEM }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/freemarker/team-filter-test.ftl:
--------------------------------------------------------------------------------
1 | <#list filterTeams(boundedContexts) as bc>${bc.name}#list>
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/generators/plantuml/class-diagram-generation-module-test-1.cml:
--------------------------------------------------------------------------------
1 | BoundedContext InsuranceQuotes {
2 |
3 | Module QuoteRequest {
4 | Entity QuoteRequest {
5 | aggregateRoot
6 | }
7 |
8 |
9 | enum RequestState {
10 | aggregateLifecycle
11 | REQUEST_SUBMITTED, QUOTE_RECEIVED, REQUEST_REJECTED, QUOTE_ACCEPTED, QUOTE_REJECTED, QUOTE_EXPIRED, POLICY_CREATED
12 | }
13 | }
14 |
15 | Aggregate AnotherAggregateThatMustBeIgnored {
16 | enum States {
17 | REQUEST_SUBMITTED, QUOTE_RECEIVED, REQUEST_REJECTED, QUOTE_ACCEPTED, QUOTE_REJECTED, QUOTE_EXPIRED, POLICY_CREATED
18 | }
19 | }
20 |
21 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/generators/plantuml/stakeholder-diagram-generation-test-1.cml:
--------------------------------------------------------------------------------
1 | Stakeholders {
2 |
3 | Stakeholder Tester
4 |
5 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/generators/plantuml/use-case-diagram-generation-test-1.cml:
--------------------------------------------------------------------------------
1 | UseCase Get_paid_for_car_accident { // title
2 | actor "Claimant" // primary actor
3 | scope "Insurance company" // scope
4 | level "Summary" // level
5 | benefit "A claimant submits a claim and and gets paid from the insurance company." // story (brief summary)
6 | interactions
7 | "submit" a "Claim", // step 1: claimant submits claim
8 | "verifyExistanceOf" "Policy", // step 2: insurance company verifies that valid policy exists
9 | "assign" an "Agent" for a "Claim", // step 3: agent is assigned to claim
10 | "verify" "Policy", // step 4: agent verifies all details are within policy guidelines
11 | "pay" "Claimant", // step 5 (1): claimant gets paid
12 | "close" "Claim" // step 5 (2): file/claim gets closed
13 | }
14 |
15 | UseCase Order_Offer_for_new_Insurance {
16 | actor "Claimant"
17 | }
18 |
19 | UseCase Just_do_something {
20 | actor "Chiller"
21 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/generators/plantuml/use-case-interactions-sequence-diagram-generation-test-2.cml:
--------------------------------------------------------------------------------
1 | UseCase Get_paid_for_car_accident { // title
2 | secondaryActors "Insurance Employee"
3 | scope "Insurance company" // scope
4 | level "Summary" // level
5 | benefit "A claimant submits a claim and and gets paid from the insurance company." // story (brief summary)
6 | interactions
7 | "submit" a "Claim", // step 1: claimant submits claim
8 | "verifyExistanceOf" "Policy", // step 2: insurance company verifies that valid policy exists
9 | "assign" an "Agent" for a "Claim", // step 3: agent is assigned to claim
10 | "verify" "Policy", // step 4: agent verifies all details are within policy guidelines
11 | "pay" "Claimant", // step 5 (1): claimant gets paid
12 | "close" "Claim" // step 5 (2): file/claim gets closed
13 | }
14 |
15 | UseCase Order_Offer_for_new_Insurance {
16 | actor "Claimant"
17 | }
18 |
19 | UseCase Just_do_something {
20 | actor "Chiller"
21 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/generators/plantuml/use-case-interactions-sequence-diagram-generation-test-3.cml:
--------------------------------------------------------------------------------
1 | UseCase Get_paid_for_car_accident { // title
2 | actor "Claimant" // primary actor
3 | scope "Insurance company" // scope
4 | level "Summary" // level
5 | benefit "A claimant submits a claim and and gets paid from the insurance company." // story (brief summary)
6 | interactions
7 | "submit" a "Claim", // step 1: claimant submits claim
8 | "verifyExistanceOf" "Policy", // step 2: insurance company verifies that valid policy exists
9 | "assign" an "Agent" for a "Claim", // step 3: agent is assigned to claim
10 | "verify" "Policy", // step 4: agent verifies all details are within policy guidelines
11 | "pay" "Claimant", // step 5 (1): claimant gets paid
12 | "close" "Claim" // step 5 (2): file/claim gets closed
13 | }
14 |
15 | UseCase Order_Offer_for_new_Insurance {
16 | actor "Claimant"
17 | }
18 |
19 | UseCase Just_do_something {
20 | actor "Chiller"
21 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/generators/plantuml/use-case-interactions-sequence-diagram-generation-test-4.cml:
--------------------------------------------------------------------------------
1 | UseCase Get_paid_for_car_accident { // title
2 | actor "Claimant" // primary actor
3 | secondaryActors "Insurance Employee"
4 | scope "Insurance company" // scope
5 | level "Summary" // level
6 | interactions
7 | "submit" a "Claim", // step 1: claimant submits claim
8 | "verifyExistanceOf" "Policy", // step 2: insurance company verifies that valid policy exists
9 | "assign" an "Agent" for a "Claim", // step 3: agent is assigned to claim
10 | "verify" "Policy", // step 4: agent verifies all details are within policy guidelines
11 | "pay" "Claimant", // step 5 (1): claimant gets paid
12 | "close" "Claim" // step 5 (2): file/claim gets closed
13 | }
14 |
15 | UseCase Order_Offer_for_new_Insurance {
16 | actor "Claimant"
17 | }
18 |
19 | UseCase Just_do_something {
20 | actor "Chiller"
21 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/generators/plantuml/value-impact-map-diagram-generation-test-1.cml:
--------------------------------------------------------------------------------
1 | BoundedContext SameDayDelivery
2 |
3 | Stakeholders of SameDayDelivery {
4 | StakeholderGroup Drivers
5 | }
6 |
7 | ValueRegister SD_Values for SameDayDelivery {
8 |
9 | Value WorkLifeBalance {
10 | isCore
11 | demonstrator "Drivers value a healthy work-life-balance"
12 | Stakeholder Drivers {
13 | priority HIGH
14 | impact HIGH
15 | consequences
16 | bad "SDD will harm work-life-balance of drivers"
17 | action "hire more drivers" ACT
18 | }
19 | }
20 |
21 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/generators/plantuml/value-impact-map-diagram-generation-test-2.cml:
--------------------------------------------------------------------------------
1 |
2 | Stakeholders {
3 | StakeholderGroup Drivers
4 | }
5 |
6 | ValueRegister SD_Values {
7 |
8 | Value WorkLifeBalance {
9 | Stakeholder Drivers {
10 | }
11 | }
12 |
13 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/generators/plantuml/value-impact-map-diagram-generation-test-3.cml:
--------------------------------------------------------------------------------
1 | BoundedContext SameDayDelivery
2 |
3 | Stakeholders of SameDayDelivery {
4 | StakeholderGroup Drivers
5 | }
6 |
7 | ValueRegister SD_Values for SameDayDelivery {
8 |
9 | Value WorkLifeBalance {
10 | isCore
11 | demonstrator "Drivers value a healthy work-life-balance"
12 | Stakeholder Drivers {
13 | priority HIGH
14 | impact HIGH
15 | consequences
16 | bad "SDD will harm work-life-balance of drivers"
17 | action "hire more drivers" ACT
18 | }
19 | }
20 |
21 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/generators/plantuml/value-impact-map-diagram-generation-test-4.cml:
--------------------------------------------------------------------------------
1 |
2 | Stakeholders {
3 | StakeholderGroup Customers_and_Shoppers {
4 | Stakeholder Shoppers_in_Emergency_Situations
5 | Stakeholder Others
6 | }
7 | }
8 |
9 | ValueRegister SD_Values {
10 |
11 | ValueCluster Autonomy {
12 | core AUTONOMY
13 | demonstrator "customer values potentially increased freedom"
14 | demonstrator "delivery staff's freedom might suffer because of work-life-balance"
15 |
16 | Stakeholder Customers_and_Shoppers {
17 | priority HIGH
18 | impact MEDIUM
19 | consequences
20 | good "increased freedom"
21 | }
22 |
23 | }
24 |
25 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/generators/plantuml/value-impact-map-diagram-generation-test-5.cml:
--------------------------------------------------------------------------------
1 |
2 | Stakeholders {
3 | StakeholderGroup Customers_and_Shoppers {
4 | Stakeholder Shoppers_in_Emergency_Situations
5 | Stakeholder Others
6 | }
7 | StakeholderGroup Delivery_Staff_of_Suppliers
8 | }
9 |
10 | ValueRegister SD_Values {
11 |
12 | ValueCluster Autonomy {
13 | core AUTONOMY
14 | demonstrator "customer values potentially increased freedom"
15 | demonstrator "delivery staff's freedom might suffer because of work-life-balance"
16 |
17 | Value Freedom {
18 | Stakeholder Customers_and_Shoppers {
19 | priority HIGH
20 | impact MEDIUM
21 | consequences
22 | good "increased freedom"
23 | }
24 |
25 | Stakeholder Delivery_Staff_of_Suppliers {
26 | priority HIGH
27 | impact HIGH
28 | consequences
29 | bad "work-life-balance"
30 | good "tbd"
31 |
32 | }
33 | }
34 | }
35 |
36 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/imports/empty.cml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ContextMapper/context-mapper-dsl/981d5beaea768787e5677a0e4091458264302d0b/org.contextmapper.dsl.tests/integ-test-files/imports/empty.cml
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/imports/import-to-empty-resource.cml:
--------------------------------------------------------------------------------
1 | import "./empty.cml"
2 |
3 | ContextMap testMap {
4 |
5 | }
6 |
7 | BoundedContext context1
8 | BoundedContext context2
9 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/imports/import-to-other-type.cml:
--------------------------------------------------------------------------------
1 | import "./other-type.scl"
2 |
3 | ContextMap testMap {
4 |
5 | }
6 |
7 | BoundedContext context1
8 | BoundedContext context2
9 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/imports/other-contexts.cml:
--------------------------------------------------------------------------------
1 | BoundedContext anotherContext
2 | BoundedContext yetAnotherContext
3 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/imports/other-type.scl:
--------------------------------------------------------------------------------
1 | Aggregate Customers {
2 | "Customer.firstname"
3 | }
4 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/imports/simple-import-test.cml:
--------------------------------------------------------------------------------
1 | import "./other-contexts.cml"
2 |
3 | ContextMap testMap {
4 |
5 | }
6 |
7 | BoundedContext context1
8 | BoundedContext context2
9 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/imports/uniqueness-validation-test.cml:
--------------------------------------------------------------------------------
1 | import "./other-contexts.cml"
2 |
3 | BoundedContext anotherContext
4 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/application-flow-example-simple.cml:
--------------------------------------------------------------------------------
1 | BoundedContext SampleSystem {
2 | Application SampleApplication {
3 | DomainEvent FlowInitiated
4 | DomainEvent Event1
5 |
6 | CommandEvent StartFlow
7 | CommandEvent Command1
8 |
9 | Flow SampleFlow {
10 | event FlowInitiated triggers command StartFlow
11 | command StartFlow emits event Event1
12 | event Event1 triggers command Command1
13 | command Command1 emits event FlowTerminated
14 | }
15 | }
16 | Aggregate SampleAggregate {
17 | Event FlowTerminated
18 | }
19 | }
20 |
21 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/basic-mdsl-model-test-without-contextmap.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagementContext {
2 |
3 | "INFORMATION_HOLDER_RESOURCE"
4 | Aggregate Customers {
5 | Entity Customer {
6 | aggregateRoot
7 |
8 | "COMPUTATION_FUNCTION"
9 | def ReturnType updateAddress(Address address);
10 | "JustSomeResponsibility"
11 | def void anotherMethod(Parameter1Type param1, Parameter2Type param2);
12 | }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/context-is-upstream-in-multiple-relationships.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext, JustAnotherContext
3 |
4 | CustomerManagementContext -> ContractManagementContext {
5 | exposedAggregates = Customers
6 | implementationTechnology = "RESTful HTTP"
7 | }
8 |
9 | CustomerManagementContext -> JustAnotherContext {
10 | exposedAggregates = Customers
11 | implementationTechnology = "RESTful HTTP"
12 | }
13 |
14 | }
15 |
16 | BoundedContext ContractManagementContext
17 |
18 | BoundedContext CustomerManagementContext {
19 |
20 | Aggregate Customers {
21 | Entity Customer {
22 | aggregateRoot
23 |
24 | def ReturnType updateAddress(Address address);
25 | def void anotherMethod(Parameter1Type param1, Parameter2Type param2);
26 | }
27 | }
28 | }
29 |
30 | BoundedContext JustAnotherContext
31 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-can-handle-keyword-clashes.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext, JustAnotherContext
3 |
4 | CustomerManagementContext -> ContractManagementContext {
5 | exposedAggregates = Customers
6 | implementationTechnology = "RESTful HTTP"
7 | }
8 |
9 | // this relationship must be ignored, because it has no exposedAggregates
10 | CustomerManagementContext -> JustAnotherContext
11 |
12 | }
13 |
14 | BoundedContext ContractManagementContext
15 |
16 | BoundedContext CustomerManagementContext {
17 |
18 | Aggregate Customers {
19 | Entity Customer {
20 | aggregateRoot
21 |
22 | def @ReturnType updateLink(@Link link);
23 | }
24 |
25 | Entity Link
26 | Entity ReturnType
27 | }
28 | }
29 |
30 | BoundedContext JustAnotherContext
31 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-cyclic-reference.mdsl:
--------------------------------------------------------------------------------
1 | // Generated from DDD Context Map.
2 | API description CustomerManagementContextAPI
3 |
4 |
5 | data type CyclicVO { "name":D, "refToMyself":CyclicVO }
6 | data type CyclicVO2 { "name":D, "refToMyself":CyclicVO2* }
7 |
8 |
9 | endpoint type Customers
10 | exposes
11 | operation myMethod
12 | expecting
13 | payload CyclicVO
14 | delivering
15 | payload D
16 | operation myMethod2
17 | expecting
18 | payload CyclicVO
19 | delivering
20 | payload D
21 | operation myMethod3
22 | expecting
23 | payload CyclicVO2
24 | delivering
25 | payload D
26 |
27 |
28 | API provider CustomerManagementContextProvider
29 | offers Customers
30 | at endpoint location "http://localhost:8000"
31 | via protocol "RESTful HTTP"
32 |
33 |
34 | API client ContractManagementContextClient
35 | consumes Customers
36 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-date-to-string.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext, JustAnotherContext
3 |
4 | CustomerManagementContext -> ContractManagementContext {
5 | exposedAggregates = Customers
6 | implementationTechnology = "RESTful HTTP"
7 | }
8 |
9 | // this relationship must be ignored, because it has no exposedAggregates
10 | CustomerManagementContext -> JustAnotherContext
11 |
12 | // duplicate relationship should not change the result
13 | CustomerManagementContext -> ContractManagementContext {
14 | exposedAggregates = Customers
15 | }
16 |
17 | }
18 |
19 | BoundedContext ContractManagementContext
20 |
21 | BoundedContext CustomerManagementContext {
22 |
23 | Aggregate Customers {
24 | Entity Customer {
25 | aggregateRoot
26 |
27 | def void dateMethod(Date dateParam);
28 | }
29 | }
30 | }
31 |
32 | BoundedContext JustAnotherContext
33 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-date-to-string.mdsl:
--------------------------------------------------------------------------------
1 | // Generated from DDD Context Map.
2 | API description CustomerManagementContextAPI
3 |
4 |
5 |
6 |
7 | endpoint type Customers
8 | exposes
9 | operation dateMethod
10 | expecting
11 | payload D
12 |
13 |
14 | API provider CustomerManagementContextProvider
15 | offers Customers
16 | at endpoint location "http://localhost:8000"
17 | via protocol "RESTful HTTP"
18 |
19 |
20 | API client ContractManagementContextClient
21 | consumes Customers
22 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-domain-vision-statements-test.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext
3 |
4 | CustomerManagementContext -> ContractManagementContext {
5 | exposedAggregates = Customers
6 | implementationTechnology = "RESTful HTTP"
7 | }
8 |
9 | }
10 |
11 | BoundedContext ContractManagementContext {
12 | domainVisionStatement "Contracts vision statement ..."
13 | }
14 |
15 | BoundedContext CustomerManagementContext {
16 | domainVisionStatement "Customers vision statement ..."
17 |
18 | Aggregate Customers {
19 | Entity Customer {
20 | aggregateRoot
21 |
22 | def ReturnType updateAddress(Address address);
23 | def void anotherMethod(Parameter1Type param1, Parameter2Type param2);
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-enum-support.mdsl:
--------------------------------------------------------------------------------
1 | // Generated from DDD Context Map.
2 | API description CustomerManagementContextAPI
3 |
4 |
5 | data type Address { "street":D, "houseNumber":D, "enumVal":TestEnum }
6 | data type ReturnType P // the type ReturnType has not been specified or does not contain any attributes in CML
7 | data type TestEnum {"VAL1"|"VAL2"}
8 | data type TestEnum2 {"VAL1"|"VAL2"}
9 |
10 |
11 | endpoint type Customers
12 | serves as INFORMATION_HOLDER_RESOURCE
13 | exposes
14 | operation updateAddress
15 | with responsibility COMPUTATION_FUNCTION
16 | expecting
17 | payload Address
18 | delivering
19 | payload ReturnType
20 | operation anotherMethod
21 | with responsibility "JustSomeResponsibility"
22 | expecting
23 | payload TestEnum2
24 |
25 |
26 | API provider CustomerManagementContextProvider
27 | offers Customers
28 | at endpoint location "http://localhost:8000"
29 | via protocol "RESTful HTTP"
30 |
31 |
32 | API client ContractManagementContextClient
33 | consumes Customers
34 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-list-in-parameter.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext, JustAnotherContext
3 |
4 | CustomerManagementContext -> ContractManagementContext {
5 | exposedAggregates = Customers
6 | implementationTechnology = "RESTful HTTP"
7 | }
8 |
9 | // this relationship must be ignored, because it has no exposedAggregates
10 | CustomerManagementContext -> JustAnotherContext
11 |
12 | // duplicate relationship should not change the result
13 | CustomerManagementContext -> ContractManagementContext {
14 | exposedAggregates = Customers
15 | }
16 |
17 | }
18 |
19 | BoundedContext ContractManagementContext
20 |
21 | BoundedContext CustomerManagementContext {
22 |
23 | Aggregate Customers {
24 | Entity Customer {
25 | aggregateRoot
26 |
27 | def ReturnType updateAddress(Address address);
28 | def void anotherMethod(Parameter1Type param1, List param2);
29 | }
30 | }
31 | }
32 |
33 | BoundedContext JustAnotherContext
34 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-list-in-return-type.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext, JustAnotherContext
3 |
4 | CustomerManagementContext -> ContractManagementContext {
5 | exposedAggregates = Customers
6 | implementationTechnology = "RESTful HTTP"
7 | }
8 |
9 | // this relationship must be ignored, because it has no exposedAggregates
10 | CustomerManagementContext -> JustAnotherContext
11 |
12 | // duplicate relationship should not change the result
13 | CustomerManagementContext -> ContractManagementContext {
14 | exposedAggregates = Customers
15 | }
16 |
17 | }
18 |
19 | BoundedContext ContractManagementContext
20 |
21 | BoundedContext CustomerManagementContext {
22 |
23 | Aggregate Customers {
24 | Entity Customer {
25 | aggregateRoot
26 |
27 | def List updateAddress(Address address);
28 | def void anotherMethod(Parameter1Type param1, List param2);
29 | }
30 | }
31 | }
32 |
33 | BoundedContext JustAnotherContext
34 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-list-parameter-test.mdsl:
--------------------------------------------------------------------------------
1 | // Generated from DDD Context Map.
2 | API description CustomerManagementContextAPI
3 |
4 |
5 | data type Address { "street":D, "houseNumber":D }
6 | data type BankAccount P // the type BankAccount has not been specified or does not contain any attributes in CML
7 | data type Customer { "firstName":D, "lastName":D, "account":BankAccount, "address":Address }
8 | data type ReturnType P // the type ReturnType has not been specified or does not contain any attributes in CML
9 |
10 |
11 | endpoint type Customers
12 | exposes
13 | operation updateCustomer
14 | expecting
15 | payload Customer*
16 | delivering
17 | payload ReturnType
18 |
19 |
20 | API provider CustomerManagementContextProvider
21 | offers Customers
22 | at endpoint location "http://localhost:8000"
23 | via protocol "RESTful HTTP"
24 |
25 |
26 | API client ContractManagementContextClient
27 | consumes Customers
28 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-no-implementation-technology.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext, JustAnotherContext
3 |
4 | CustomerManagementContext -> ContractManagementContext {
5 | exposedAggregates = Customers
6 | }
7 |
8 | // this relationship must be ignored, because it has no exposedAggregates
9 | CustomerManagementContext -> JustAnotherContext
10 |
11 | // duplicate relationship should not change the result
12 | CustomerManagementContext -> ContractManagementContext {
13 | exposedAggregates = Customers
14 | }
15 |
16 | }
17 |
18 | BoundedContext ContractManagementContext
19 |
20 | BoundedContext CustomerManagementContext {
21 | Aggregate Customers {
22 | Entity Customer {
23 | aggregateRoot
24 | def String myMethod();
25 | }
26 | }
27 | }
28 |
29 | BoundedContext JustAnotherContext
30 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-no-operation-in-one-api.cml:
--------------------------------------------------------------------------------
1 | ContextMap mymap {
2 | contains MyBoundedContext, MyDownstreamContext, YetAnotherContext
3 |
4 | MyBoundedContext -> MyDownstreamContext {
5 | exposedAggregates = myAggregate
6 | }
7 |
8 | MyDownstreamContext -> YetAnotherContext {
9 | exposedAggregates = myOtherAggregate
10 | }
11 | }
12 |
13 | BoundedContext MyBoundedContext {
14 | Aggregate myAggregate {
15 | Entity RootEntity {
16 | aggregateRoot
17 | }
18 | }
19 | }
20 |
21 | BoundedContext MyDownstreamContext {
22 | Aggregate myOtherAggregate {
23 | Entity JustAnEntity {
24 | aggregateRoot
25 |
26 | def doSomething();
27 | }
28 | }
29 | }
30 |
31 | BoundedContext YetAnotherContext
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-no-operation-in-one-api.mdsl:
--------------------------------------------------------------------------------
1 | // Generated from DDD Context Map.
2 | API description MyBoundedContextAPI
3 |
4 |
5 |
6 |
7 | endpoint type myAggregate
8 | // Your aggregate root does not specify any methods/operations. Therefore we can not generate any endpoint operations.
9 |
10 |
11 | API provider MyBoundedContextProvider
12 | offers myAggregate
13 | at endpoint location "http://localhost:8001"
14 | via protocol "tbd" // The protocol is generated if you specify the implementation technology in CML
15 |
16 |
17 | API client MyDownstreamContextClient
18 | consumes myAggregate
19 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-no-parameters.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext, JustAnotherContext
3 |
4 | CustomerManagementContext -> ContractManagementContext {
5 | exposedAggregates = Customers
6 | implementationTechnology = "RESTful HTTP"
7 | }
8 |
9 | // this relationship must be ignored, because it has no exposedAggregates
10 | CustomerManagementContext -> JustAnotherContext
11 |
12 | // duplicate relationship should not change the result
13 | CustomerManagementContext -> ContractManagementContext {
14 | exposedAggregates = Customers
15 | }
16 |
17 | }
18 |
19 | BoundedContext ContractManagementContext
20 |
21 | BoundedContext CustomerManagementContext {
22 | Aggregate Customers {
23 | Entity Customer {
24 | aggregateRoot
25 | def String myMethod();
26 | }
27 | }
28 | }
29 |
30 | BoundedContext JustAnotherContext
31 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-no-parameters.mdsl:
--------------------------------------------------------------------------------
1 | // Generated from DDD Context Map.
2 | API description CustomerManagementContextAPI
3 |
4 |
5 |
6 |
7 | endpoint type Customers
8 | exposes
9 | operation myMethod
10 | expecting
11 | payload D
12 | delivering
13 | payload D
14 |
15 |
16 | API provider CustomerManagementContextProvider
17 | offers Customers
18 | at endpoint location "http://localhost:8000"
19 | via protocol "RESTful HTTP"
20 |
21 |
22 | API client ContractManagementContextClient
23 | consumes Customers
24 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-no-return-type.mdsl:
--------------------------------------------------------------------------------
1 | // Generated from DDD Context Map.
2 | API description CustomerManagementContextAPI
3 |
4 | // ** BEGIN PROTECTED REGION for data types
5 |
6 | // ** END PROTECTED REGION for data types
7 |
8 |
9 | // ** BEGIN PROTECTED REGION for endpoint types
10 |
11 | // ** END PROTECTED REGION for endpoint types
12 |
13 | endpoint type Customers
14 | exposes
15 | operation myMethod
16 | expecting
17 | payload D
18 | operation myMethod2
19 | expecting
20 | payload D
21 |
22 | // ** BEGIN PROTECTED REGION for API providers
23 |
24 | // ** END PROTECTED REGION for API providers
25 |
26 | API provider CustomerManagementContextProvider
27 | offers Customers
28 | at endpoint location "http://localhost:8000"
29 | via protocol "RESTful HTTP"
30 |
31 | // ** BEGIN PROTECTED REGION for API clients
32 |
33 | // ** END PROTECTED REGION for API clients
34 |
35 | API client ContractManagementContextClient
36 | consumes Customers
37 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-nothing-to-generate-test-1.cml:
--------------------------------------------------------------------------------
1 |
2 | BoundedContext ContractManagementContext
3 |
4 | BoundedContext CustomerManagementContext {
5 | Application {
6 | Flow EmptyFlow {
7 |
8 | }
9 | }
10 | }
11 |
12 | BoundedContext JustAnotherContext
13 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-nothing-to-generate-test-2.cml:
--------------------------------------------------------------------------------
1 |
2 | BoundedContext ContractManagementContext
3 |
4 | BoundedContext CustomerManagementContext {
5 | }
6 |
7 | BoundedContext JustAnotherContext
8 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-nullable-attributes.mdsl:
--------------------------------------------------------------------------------
1 | // Generated from DDD Context Map.
2 | API description CustomerManagementContextAPI
3 |
4 |
5 | data type Address { "street":D, "houseNumber":D }
6 | data type BankAccount P // the type BankAccount has not been specified or does not contain any attributes in CML
7 | data type Customer { "firstName":D?, "lastName":D?, "account":BankAccount, "address":Address }
8 | data type ReturnType P // the type ReturnType has not been specified or does not contain any attributes in CML
9 |
10 |
11 | endpoint type Customers
12 | exposes
13 | operation updateCustomer
14 | expecting
15 | payload Customer
16 | delivering
17 | payload ReturnType
18 |
19 |
20 | API provider CustomerManagementContextProvider
21 | offers Customers
22 | at endpoint location "http://localhost:8000"
23 | via protocol "RESTful HTTP"
24 |
25 |
26 | API client ContractManagementContextClient
27 | consumes Customers
28 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-only-use-public-operations.mdsl:
--------------------------------------------------------------------------------
1 | // Generated from DDD Context Map.
2 | API description CustomerManagementContextAPI
3 |
4 |
5 |
6 |
7 | endpoint type Customers
8 | exposes
9 | operation publicMethod
10 | expecting
11 | payload D
12 | delivering
13 | payload D
14 | operation anotherPublicMethod
15 | expecting
16 | payload D
17 |
18 |
19 | API provider CustomerManagementContextProvider
20 | offers Customers
21 | at endpoint location "http://localhost:8000"
22 | via protocol "RESTful HTTP"
23 |
24 |
25 | API client ContractManagementContextClient
26 | consumes Customers
27 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-parameter-tree-test.mdsl:
--------------------------------------------------------------------------------
1 | // Generated from DDD Context Map.
2 | API description CustomerManagementContextAPI
3 |
4 |
5 | data type Address { "street":D, "houseNumber":D }
6 | data type BankAccount P // the type BankAccount has not been specified or does not contain any attributes in CML
7 | data type Customer { "firstName":D, "lastName":D, "account":BankAccount, "address":Address }
8 | data type ReturnType P // the type ReturnType has not been specified or does not contain any attributes in CML
9 |
10 |
11 | endpoint type Customers
12 | exposes
13 | operation updateCustomer
14 | expecting
15 | payload Customer
16 | delivering
17 | payload ReturnType
18 |
19 |
20 | API provider CustomerManagementContextProvider
21 | offers Customers
22 | at endpoint location "http://localhost:8000"
23 | via protocol "RESTful HTTP"
24 |
25 |
26 | API client ContractManagementContextClient
27 | consumes Customers
28 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-parameter-tree-with-list-test.mdsl:
--------------------------------------------------------------------------------
1 | // Generated from DDD Context Map.
2 | API description CustomerManagementContextAPI
3 |
4 |
5 | data type Address { "street":D, "houseNumber":D }
6 | data type BankAccount P // the type BankAccount has not been specified or does not contain any attributes in CML
7 | data type Customer { "firstName":D, "lastName":D, "account":BankAccount*, "address":Address* }
8 | data type ReturnType P // the type ReturnType has not been specified or does not contain any attributes in CML
9 |
10 |
11 | endpoint type Customers
12 | exposes
13 | operation updateCustomer
14 | expecting
15 | payload Customer
16 | delivering
17 | payload ReturnType
18 |
19 |
20 | API provider CustomerManagementContextProvider
21 | offers Customers
22 | at endpoint location "http://localhost:8000"
23 | via protocol "RESTful HTTP"
24 |
25 |
26 | API client ContractManagementContextClient
27 | consumes Customers
28 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-protected-regions-do-not-match-commented-types.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext, JustAnotherContext
3 |
4 | CustomerManagementContext -> ContractManagementContext {
5 | exposedAggregates = Customers
6 | implementationTechnology = "RESTful HTTP"
7 | }
8 |
9 | // this relationship must be ignored, because it has no exposedAggregates
10 | CustomerManagementContext -> JustAnotherContext
11 |
12 | // duplicate relationship should not change the result
13 | CustomerManagementContext -> ContractManagementContext {
14 | exposedAggregates = Customers
15 | }
16 |
17 | }
18 |
19 | BoundedContext ContractManagementContext
20 |
21 | BoundedContext CustomerManagementContext {
22 |
23 | Aggregate Customers {
24 | Entity Customer {
25 | aggregateRoot
26 |
27 | def ReturnType updateAddress(Address address);
28 | def void anotherMethod(Parameter1Type param1, Parameter2Type param2);
29 | }
30 | }
31 | }
32 |
33 | BoundedContext JustAnotherContext
34 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-protected-regions.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext, JustAnotherContext
3 |
4 | CustomerManagementContext -> ContractManagementContext {
5 | exposedAggregates = Customers
6 | implementationTechnology = "RESTful HTTP"
7 | }
8 |
9 | // this relationship must be ignored, because it has no exposedAggregates
10 | CustomerManagementContext -> JustAnotherContext
11 |
12 | // duplicate relationship should not change the result
13 | CustomerManagementContext -> ContractManagementContext {
14 | exposedAggregates = Customers
15 | }
16 |
17 | }
18 |
19 | BoundedContext ContractManagementContext
20 |
21 | BoundedContext CustomerManagementContext {
22 |
23 | Aggregate Customers {
24 | Entity Customer {
25 | aggregateRoot
26 |
27 | def ReturnType updateAddress(Address address);
28 | def void anotherMethod(Parameter1Type param1, Parameter2Type param2);
29 | }
30 | }
31 | }
32 |
33 | BoundedContext JustAnotherContext
34 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-reference-to-empty-domain-object-1.mdsl:
--------------------------------------------------------------------------------
1 | // Generated from DDD Context Map.
2 | API description CustomerManagementContextAPI
3 |
4 |
5 | data type Address { "street":D, "houseNumber":D, "empty":EmptyType }
6 | data type EmptyType P // the type EmptyType has not been specified or does not contain any attributes in CML
7 | data type ReturnType P // the type ReturnType has not been specified or does not contain any attributes in CML
8 |
9 |
10 | endpoint type Customers
11 | serves as INFORMATION_HOLDER_RESOURCE
12 | exposes
13 | operation updateAddress
14 | with responsibility COMPUTATION_FUNCTION
15 | expecting
16 | payload Address
17 | delivering
18 | payload ReturnType
19 |
20 |
21 | API provider CustomerManagementContextProvider
22 | offers Customers
23 | at endpoint location "http://localhost:8000"
24 | via protocol "RESTful HTTP"
25 |
26 |
27 | API client ContractManagementContextClient
28 | consumes Customers
29 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-reference-to-empty-domain-object-2.mdsl:
--------------------------------------------------------------------------------
1 | // Generated from DDD Context Map.
2 | API description CustomerManagementContextAPI
3 |
4 |
5 | data type Address { "street":D, "houseNumber":D, "refAttr":ReferenceType }
6 | data type EmptyVO P // the type EmptyVO has not been specified or does not contain any attributes in CML
7 | data type ReferenceType { "attr1":D, "empty":EmptyVO }
8 | data type ReturnType P // the type ReturnType has not been specified or does not contain any attributes in CML
9 |
10 |
11 | endpoint type Customers
12 | serves as INFORMATION_HOLDER_RESOURCE
13 | exposes
14 | operation updateAddress
15 | with responsibility COMPUTATION_FUNCTION
16 | expecting
17 | payload Address
18 | delivering
19 | payload ReturnType
20 |
21 |
22 | API provider CustomerManagementContextProvider
23 | offers Customers
24 | at endpoint location "http://localhost:8000"
25 | via protocol "RESTful HTTP"
26 |
27 |
28 | API client ContractManagementContextClient
29 | consumes Customers
30 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-reference-to-empty-domain-object-3.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext, JustAnotherContext
3 |
4 | CustomerManagementContext -> ContractManagementContext {
5 | exposedAggregates = Customers
6 | implementationTechnology = "RESTful HTTP"
7 | }
8 |
9 | // this relationship must be ignored, because it has no exposedAggregates
10 | CustomerManagementContext -> JustAnotherContext
11 |
12 | // duplicate relationship should not change the result
13 | CustomerManagementContext -> ContractManagementContext {
14 | exposedAggregates = Customers
15 | }
16 |
17 | }
18 |
19 | BoundedContext ContractManagementContext
20 |
21 | BoundedContext CustomerManagementContext {
22 |
23 | Aggregate Customers {
24 | Entity Customer {
25 | aggregateRoot
26 |
27 | def ReturnType updateCustomer(@Param1 param1, @Param2 param2);
28 | }
29 | Entity Param1
30 | Entity Param2
31 | }
32 | }
33 |
34 | BoundedContext JustAnotherContext
35 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-reference-to-empty-domain-object-3.mdsl:
--------------------------------------------------------------------------------
1 | // Generated from DDD Context Map.
2 | API description CustomerManagementContextAPI
3 |
4 |
5 | data type Param1 P // the type Param1 has not been specified or does not contain any attributes in CML
6 | data type Param2 P // the type Param2 has not been specified or does not contain any attributes in CML
7 | data type ReturnType P // the type ReturnType has not been specified or does not contain any attributes in CML
8 | data type updateCustomerParameter { "param1":Param1, "param2":Param2 }
9 |
10 |
11 | endpoint type Customers
12 | exposes
13 | operation updateCustomer
14 | expecting
15 | payload updateCustomerParameter
16 | delivering
17 | payload ReturnType
18 |
19 |
20 | API provider CustomerManagementContextProvider
21 | offers Customers
22 | at endpoint location "http://localhost:8000"
23 | via protocol "RESTful HTTP"
24 |
25 |
26 | API client ContractManagementContextClient
27 | consumes Customers
28 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-upstream-downstream-role-comments.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext
3 |
4 | CustomerManagementContext[U,OHS,PL] -> [D,ACL]ContractManagementContext {
5 | exposedAggregates = Customers
6 | implementationTechnology = "RESTful HTTP"
7 | }
8 |
9 | }
10 |
11 | BoundedContext ContractManagementContext
12 |
13 | BoundedContext CustomerManagementContext {
14 |
15 | Aggregate Customers {
16 | Entity Customer {
17 | aggregateRoot
18 |
19 | def ReturnType updateAddress(Address address);
20 | def void anotherMethod(Parameter1Type param1, Parameter2Type param2);
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-usage-context-community-api.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext
3 |
4 | CustomerManagementContext[U,OHS] -> [D]ContractManagementContext {
5 | exposedAggregates = Customers
6 | implementationTechnology = "RESTful HTTP"
7 | }
8 |
9 | }
10 |
11 | BoundedContext ContractManagementContext
12 |
13 | BoundedContext CustomerManagementContext {
14 |
15 | Aggregate Customers {
16 | Entity Customer {
17 | aggregateRoot
18 |
19 | def ReturnType updateAddress(Address address);
20 | def void anotherMethod(Parameter1Type param1, Parameter2Type param2);
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-usage-context-public-api.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext
3 |
4 | CustomerManagementContext[U,OHS,PL] -> [D]ContractManagementContext {
5 | exposedAggregates = Customers
6 | implementationTechnology = "RESTful HTTP"
7 | }
8 |
9 | }
10 |
11 | BoundedContext ContractManagementContext
12 |
13 | BoundedContext CustomerManagementContext {
14 |
15 | Aggregate Customers {
16 | Entity Customer {
17 | aggregateRoot
18 |
19 | def ReturnType updateAddress(Address address);
20 | def void anotherMethod(Parameter1Type param1, Parameter2Type param2);
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-use-application-commands-1.cml:
--------------------------------------------------------------------------------
1 |
2 | BoundedContext CustomerManagementContext {
3 | Application {
4 | Command CreateCustomer {
5 | String firstName
6 | String lastName
7 | }
8 | }
9 |
10 | Aggregate Customers {
11 | Entity Address {
12 | String street
13 | int houseNumber
14 | String city
15 |
16 | def updateCity(String city);
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-use-application-commands-1.mdsl:
--------------------------------------------------------------------------------
1 | // Generated from DDD Context Map.
2 | API description CustomerManagementContextAPI
3 |
4 |
5 | data type CreateCustomerCommand { "firstName":D, "lastName":D }
6 |
7 | command type CreateCustomerCommand
8 |
9 | endpoint type Application
10 | exposes
11 | operation CreateCustomer
12 | expecting
13 | payload CreateCustomerCommand
14 | endpoint type Customers
15 | // Your aggregate root does not specify any methods/operations. Therefore we can not generate any endpoint operations.
16 |
17 |
18 | API provider CustomerManagementContextProvider
19 | offers Application
20 | at endpoint location "http://localhost:8000"
21 | via protocol "tbd" // The protocol is generated if you specify the implementation technology in CML
22 | offers Customers
23 | at endpoint location "http://localhost:8001"
24 | via protocol "tbd" // The protocol is generated if you specify the implementation technology in CML
25 |
26 |
27 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-use-application-commands-2.cml:
--------------------------------------------------------------------------------
1 |
2 | BoundedContext CustomerManagementContext {
3 | Application {
4 | Command CreateCustomerCommand {
5 | String firstName
6 | String lastName
7 | }
8 | }
9 |
10 | Aggregate Customers {
11 | Entity Address {
12 | String street
13 | int houseNumber
14 | String city
15 |
16 | def updateCity(String city);
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-use-application-commands-2.mdsl:
--------------------------------------------------------------------------------
1 | // Generated from DDD Context Map.
2 | API description CustomerManagementContextAPI
3 |
4 |
5 | data type CreateCustomerCommand { "firstName":D, "lastName":D }
6 |
7 | command type CreateCustomerCommand
8 |
9 | endpoint type Application
10 | exposes
11 | operation CreateCustomerCommand
12 | expecting
13 | payload CreateCustomerCommand
14 | endpoint type Customers
15 | // Your aggregate root does not specify any methods/operations. Therefore we can not generate any endpoint operations.
16 |
17 |
18 | API provider CustomerManagementContextProvider
19 | offers Application
20 | at endpoint location "http://localhost:8000"
21 | via protocol "tbd" // The protocol is generated if you specify the implementation technology in CML
22 | offers Customers
23 | at endpoint location "http://localhost:8001"
24 | via protocol "tbd" // The protocol is generated if you specify the implementation technology in CML
25 |
26 |
27 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-use-application-name.cml:
--------------------------------------------------------------------------------
1 |
2 | BoundedContext CustomerManagementContext {
3 | Application MyAppLayer {
4 | Service MyService {
5 | String anotherMethod(int param);
6 | AnyReturnType yetAnotherMethod(int param1, boolean param2);
7 | }
8 |
9 | Service AnotherService {
10 | methodWithParameterTree(@Address address);
11 | }
12 | }
13 |
14 | Aggregate Customers {
15 | Entity Address {
16 | String street
17 | int houseNumber
18 | String city
19 |
20 | def updateCity(String city);
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-use-application-service-operations-1.cml:
--------------------------------------------------------------------------------
1 |
2 | BoundedContext CustomerManagementContext {
3 | Application {
4 | Service MyService {
5 | String anotherMethod(int param);
6 | AnyReturnType yetAnotherMethod(int param1, boolean param2);
7 | }
8 |
9 | Service AnotherService {
10 | methodWithParameterTree(@Address address);
11 | }
12 | }
13 |
14 | Aggregate Customers {
15 | Entity Address {
16 | String street
17 | int houseNumber
18 | String city
19 |
20 | def updateCity(String city);
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/mdsl-use-application-service-operations-3.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext, JustAnotherContext
3 |
4 | CustomerManagementContext -> ContractManagementContext {
5 | implementationTechnology = "RESTful HTTP"
6 | }
7 |
8 | // this relationship must be ignored, because it has no exposedAggregates
9 | CustomerManagementContext -> JustAnotherContext
10 |
11 | // duplicate relationship should not change the result
12 | CustomerManagementContext -> ContractManagementContext {
13 | }
14 |
15 | }
16 |
17 | BoundedContext ContractManagementContext
18 |
19 | BoundedContext CustomerManagementContext {
20 | Application {
21 | Service MyService {
22 | String anotherMethod(int param);
23 | AnyReturnType yetAnotherMethod(int param1, boolean param2);
24 | }
25 |
26 | Service AnotherService {
27 | methodWithParameterTree(Address address);
28 | }
29 | }
30 |
31 | }
32 |
33 | BoundedContext JustAnotherContext
34 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/no-exposed-aggregates.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext
3 |
4 | CustomerManagementContext -> ContractManagementContext {
5 | }
6 |
7 | }
8 |
9 | BoundedContext ContractManagementContext
10 |
11 | BoundedContext CustomerManagementContext {
12 |
13 | Aggregate Customers {
14 | Entity Customer {
15 | aggregateRoot
16 |
17 | def void updateAddress(Address address);
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/no-operation.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext
3 |
4 | CustomerManagementContext -> ContractManagementContext {
5 | exposedAggregates = Customers
6 | }
7 |
8 | }
9 |
10 | BoundedContext ContractManagementContext
11 |
12 | BoundedContext CustomerManagementContext {
13 |
14 | Aggregate Customers {
15 | Entity Customer {
16 | aggregateRoot
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/no-upstream-downstream-relationship.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext
3 |
4 | }
5 |
6 | BoundedContext ContractManagementContext
7 |
8 | BoundedContext CustomerManagementContext {
9 |
10 | Aggregate Customers {
11 | Entity Customer {
12 | aggregateRoot
13 |
14 | def void updateAddress(Address address);
15 | }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/overwrite-with-preserving-protected-region-test.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext, JustAnotherContext
3 |
4 | CustomerManagementContext -> ContractManagementContext {
5 | exposedAggregates = Customers
6 | implementationTechnology = "RESTful HTTP"
7 | }
8 |
9 | // this relationship must be ignored, because it has no exposedAggregates
10 | CustomerManagementContext -> JustAnotherContext
11 |
12 | // duplicate relationship should not change the result
13 | CustomerManagementContext -> ContractManagementContext {
14 | exposedAggregates = Customers
15 | }
16 |
17 | }
18 |
19 | BoundedContext ContractManagementContext
20 |
21 | BoundedContext CustomerManagementContext {
22 |
23 | Aggregate Customers {
24 | Entity Customer {
25 | aggregateRoot
26 |
27 | def ReturnType updateAddress(Address address);
28 | def void anotherMethod(Parameter1Type param1, Parameter2Type param2);
29 | }
30 | }
31 | }
32 |
33 | BoundedContext JustAnotherContext
34 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/protected-region-null-test.mdsl:
--------------------------------------------------------------------------------
1 | // Generated from DDD Context Map.
2 | API description CustomerManagementContextAPI
3 |
4 | data type Address P
5 | data type Parameter1Type P
6 | data type Parameter2Type P
7 | data type ReturnType P
8 | data type anotherMethodParameter { "param1":Parameter1Type, "param2":Parameter2Type }
9 |
10 | endpoint type Customers
11 | exposes
12 | operation updateAddress
13 | expecting
14 | payload Address
15 | delivering
16 | payload ReturnType
17 | operation anotherMethod
18 | expecting
19 | payload anotherMethodParameter
20 |
21 | API provider CustomerManagementContextProvider
22 | offers Customers
23 | at endpoint location "http://localhost:8000"
24 | via protocol "RESTful HTTP"
25 |
26 | API client ContractManagementContextClient
27 | consumes Customers
28 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/protected-region-reader-test.mdsl:
--------------------------------------------------------------------------------
1 | // Generated from DDD Context Map.
2 | API description CustomerManagementContextAPI
3 |
4 | // ** BEGIN PROTECTED REGION for data types
5 | data type Parameter1Type P
6 | data type YetAnotherDataType P
7 | // ** END PROTECTED REGION for data types
8 |
9 | data type Address P
10 | data type Parameter1Type P
11 | data type Parameter2Type P
12 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/same-data-type-in-multiple-methods.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext
3 |
4 | CustomerManagementContext -> ContractManagementContext {
5 | exposedAggregates = Customers
6 | implementationTechnology = "RESTful HTTP"
7 | }
8 |
9 | }
10 |
11 | BoundedContext ContractManagementContext
12 |
13 | BoundedContext CustomerManagementContext {
14 |
15 | Aggregate Customers {
16 | Entity Customer {
17 | aggregateRoot
18 |
19 | def void aMethod(Address address);
20 | def void anotherMethod(Address address);
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/mdsl/use-references-in-methods.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagementContext, ContractManagementContext, JustAnotherContext
3 |
4 | CustomerManagementContext -> ContractManagementContext {
5 | exposedAggregates = Customers
6 | implementationTechnology = "RESTful HTTP"
7 | }
8 |
9 | // this relationship must be ignored, because it has no exposedAggregates
10 | CustomerManagementContext -> JustAnotherContext
11 |
12 | }
13 |
14 | BoundedContext ContractManagementContext
15 |
16 | BoundedContext CustomerManagementContext {
17 |
18 | Aggregate Customers {
19 | Entity Customer {
20 | aggregateRoot
21 |
22 | def @ReturnType updateAddress(@Address address);
23 | }
24 |
25 | Entity Address
26 | Entity ReturnType
27 | }
28 | }
29 |
30 | BoundedContext JustAnotherContext
31 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/plantuml/application-layer-test-1.cml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BoundedContext TestContext {
4 | Application {
5 | Command StartCommand
6 | Command EndCommand
7 |
8 | Flow TestFlow {
9 | command StartCommand emits event FirstEvent + SecondEvent
10 | event FirstEvent triggers command EndCommand
11 | event SecondEvent triggers command EndCommand
12 | }
13 | }
14 | Aggregate TestAggregate {
15 | DomainEvent FirstEvent
16 | DomainEvent SecondEvent
17 | }
18 | }
19 |
20 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/plantuml/class-diagram-generation-services-test-1.cml:
--------------------------------------------------------------------------------
1 | BoundedContext InsuranceQuotes {
2 |
3 | Aggregate QuoteRequest {
4 | Entity QuoteRequest {
5 | aggregateRoot
6 | }
7 |
8 | enum RequestState {
9 | aggregateLifecycle
10 | REQUEST_SUBMITTED, QUOTE_RECEIVED, REQUEST_REJECTED, QUOTE_ACCEPTED, QUOTE_REJECTED, QUOTE_EXPIRED, POLICY_CREATED
11 | }
12 |
13 |
14 | }
15 |
16 | Aggregate AnotherAggregateThatMustBeIgnored {
17 | enum States {
18 | REQUEST_SUBMITTED, QUOTE_RECEIVED, REQUEST_REJECTED, QUOTE_ACCEPTED, QUOTE_REJECTED, QUOTE_EXPIRED, POLICY_CREATED
19 | }
20 | }
21 |
22 | Service QuoteRequestService {
23 | void testOp() : read-only;
24 |
25 | void submitRequest(@QuoteRequest request) : write;
26 | void rejectRequest(@QuoteRequest request): write;
27 | void receiveQuote(@QuoteRequest request) : write;
28 | void checkQuote(@QuoteRequest request) : write;
29 | void createPolicy(@QuoteRequest request) : write;
30 | }
31 |
32 |
33 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/plantuml/operations-domain-object-types-test.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagementContext {
2 |
3 | Aggregate Customers {
4 | Entity Customer {
5 | aggregateRoot
6 |
7 | def ReturnType updateAddress(@Address address);
8 | }
9 |
10 | Entity Address {
11 | String name
12 | }
13 | }
14 | }
15 |
16 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/plantuml/operations-with-list-types-test.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagementContext {
2 |
3 | Aggregate Customers {
4 | Entity Customer {
5 | aggregateRoot
6 |
7 | def List updateAddress(@Address address);
8 | def void anotherMethod(Set<@Address> addresses);
9 | }
10 |
11 | Entity Address {
12 | String name
13 | }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/plantuml/operations-with-no-return-value.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagementContext {
2 |
3 | Aggregate Customers {
4 | Entity Customer {
5 | aggregateRoot
6 |
7 | def void anotherMethod(String param);
8 | def yetAnotherMethod(String param);
9 | }
10 |
11 | Entity Address {
12 | String name
13 | }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/plantuml/services-test.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagementContext {
2 |
3 | Module MyMod {
4 | Service MyModuleService {
5 | void myModuleServiceMethod();
6 | }
7 | }
8 |
9 | Aggregate Customers {
10 | Entity Customer {
11 | aggregateRoot
12 |
13 | def ReturnType updateAddress(Address address);
14 | }
15 |
16 | Service MyService {
17 | ReturnType serviceMethod(Address address);
18 | }
19 | }
20 |
21 | }
22 |
23 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/quickfixes/create-missing-bounded-context-test-1.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains MissingContext // context does not exist
3 | }
4 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/quickfixes/extract-vo-for-primitive-id-test-1.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestContext {
2 | Aggregate TestAggregate {
3 | Entity Customer {
4 | String customerId
5 | String firstname
6 | String lastname
7 | }
8 | }
9 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/quickfixes/extract-vo-for-primitive-id-test-2.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestContext {
2 | Module TestModule {
3 | Entity Customer {
4 | String customerId
5 | String firstname
6 | String lastname
7 | }
8 | }
9 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/add-ethical-value-assessment-1.cml:
--------------------------------------------------------------------------------
1 | UserStory SameDayDelivery_1 {
2 | As a "Shopper" I want to "instantly receive" an "Order" so that "I am efficient"
3 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/change-partnership-to-upstream-downstream-precondition-checks-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement [P]<->[P] AnotherContext
5 | }
6 |
7 | BoundedContext CustomerManagement
8 | BoundedContext AnotherContext
9 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/change-partnership-to-upstream-downstream-precondition-checks-multiple-rels-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement [P]<->[P] AnotherContext
5 |
6 | CustomerManagement [P]<->[P] AnotherContext
7 | }
8 |
9 | BoundedContext CustomerManagement
10 | BoundedContext AnotherContext
11 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/change-partnership-to-upstream-downstream-precondition-checks-no-rel-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | }
5 |
6 | BoundedContext CustomerManagement
7 | BoundedContext AnotherContext
8 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/change-partnership-to-upstream-downstream-test-1-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement [P]<->[P] AnotherContext
5 | }
6 |
7 | BoundedContext CustomerManagement
8 | BoundedContext AnotherContext
9 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/create-stakeholder-for-roleinstory-1.cml:
--------------------------------------------------------------------------------
1 |
2 | UserStory SampleStory1 {
3 | As a "SampleUserOfFutureSystem"
4 | I want to "manipulate" a "BusinessObject" with its "property1", "property2"
5 | so that "I am more efficient"
6 | }
7 |
8 | UserStory SampleStory2 {
9 | As a "Sample User Of Future System"
10 | I want to "manipulate" a "BusinessObject" with its "property1", "property2"
11 | so that "I am more efficient"
12 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/create-value-for-stakeholder-1.cml:
--------------------------------------------------------------------------------
1 |
2 | Stakeholders {
3 | Stakeholder Tester
4 | }
5 |
6 | ValueRegister ExistingRegister {
7 |
8 | }
9 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/create-value-for-stakeholder-2.cml:
--------------------------------------------------------------------------------
1 |
2 | Stakeholders {
3 | Stakeholder Tester
4 | }
5 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/create-value-register-for-bounded-context-1.cml:
--------------------------------------------------------------------------------
1 |
2 | BoundedContext TestContextWithRegister
3 |
4 | BoundedContext TestContextWithoutRegister {}
5 |
6 | ValueRegister ExistingRegister for TestContextWithRegister {
7 | }
8 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-bc-from-subdomain-duplicate-aggregate-name-test-1-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext JustAnotherContext {
2 | Aggregate CustomerDomainAggregate // generated name already exists
3 | }
4 |
5 | Domain InsuranceDomain {
6 | Subdomain CustomerDomain {
7 | Entity Customer
8 |
9 | Service CustomerService {
10 | createCustomer;
11 | testMethod;
12 | }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-bc-from-subdomain-entity-attributes-test-1-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext NewTestBC {
2 | Aggregate CustomerDomainAggregate {
3 | Entity Customer {
4 | String firstName // already existing attribute
5 | - RefObj reference1
6 | }
7 | Entity RefObj
8 | }
9 | }
10 |
11 | Domain InsuranceDomain {
12 | Subdomain CustomerDomain {
13 | Entity Customer {
14 | String firstName
15 | String lastName
16 | - RefObj reference1
17 | - RefObj reference2
18 | }
19 | Entity RefObj
20 |
21 | Service CustomerService {
22 | createCustomer
23 | }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-bc-from-subdomain-test-1-input.cml:
--------------------------------------------------------------------------------
1 | Domain InsuranceDomain {
2 | Subdomain CustomerDomain {
3 | Entity Customer
4 |
5 | Service CustomerService {
6 | createCustomer;
7 | testMethod;
8 | }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-bc-from-subdomain-test-10-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext NewTestBC implements CustomerDomain, JustAnotherDomain {
2 | Module TestModule {
3 | Aggregate CustomerDomainAggregate {
4 |
5 | }
6 | }
7 | }
8 |
9 | Domain InsuranceDomain {
10 | Subdomain CustomerDomain supports Customer_Creation {
11 | Entity Customer
12 |
13 | Service CustomerService {
14 | createCustomer;
15 | readCustomer;
16 | }
17 | }
18 | }
19 |
20 | Domain JustAnotherDomain
21 |
22 | UserStory Customer_Creation {
23 | As a "Insurance Employee"
24 | I want to "create" a "Customer"
25 | I want to "read" a "Customer"
26 | so that ""
27 | }
28 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-bc-from-subdomain-test-2-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext NewTestBC // BC already existing
2 |
3 | Domain InsuranceDomain {
4 | Subdomain CustomerDomain {
5 | Entity Customer
6 |
7 | Service CustomerService {
8 | createCustomer
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-bc-from-subdomain-test-3-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext NewTestBC {
2 | Aggregate CustomerDomainAggregate // Aggregate already existing
3 | }
4 |
5 | Domain InsuranceDomain {
6 | Subdomain CustomerDomain {
7 | Entity Customer
8 |
9 | Service CustomerService {
10 | createCustomer
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-bc-from-subdomain-test-4-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext NewTestBC {
2 | Aggregate CustomerDomainAggregate {
3 | Entity Customer // Entity already existing
4 | }
5 | }
6 |
7 | Domain InsuranceDomain {
8 | Subdomain CustomerDomain {
9 | Entity Customer
10 |
11 | Service CustomerService {
12 | createCustomer
13 | }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-bc-from-subdomain-test-5-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext NewTestBC {
2 | Aggregate CustomerDomainAggregate {
3 | Entity Customer {
4 | @CustomerId customerId // id attr already existing
5 | }
6 | ValueObject CustomerId {
7 | Long id
8 | }
9 | }
10 | }
11 |
12 | Domain InsuranceDomain {
13 | Subdomain CustomerDomain {
14 | Entity Customer
15 |
16 | Service CustomerService {
17 | createCustomer
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-bc-from-subdomain-test-6-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext NewTestBC {
2 | Aggregate CustomerDomainAggregate {
3 | Service CustomerService // service already existing
4 | }
5 | }
6 |
7 | Domain InsuranceDomain {
8 | Subdomain CustomerDomain {
9 | Entity Customer
10 |
11 | Service CustomerService {
12 | createCustomer;
13 | testOperation;
14 | }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-bc-from-subdomain-test-7-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext NewTestBC {
2 | Aggregate CustomerDomainAggregate {
3 | Service CustomerService {
4 | ReturnValue testMethod(ParamType param);
5 | }
6 | }
7 | }
8 |
9 | Domain InsuranceDomain {
10 | Subdomain CustomerDomain {
11 | Entity Customer
12 |
13 | Service CustomerService {
14 | createCustomer;
15 | testMethod;
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-bc-from-subdomain-test-8-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext ExistingContext {
2 | Aggregate ExistingAggregate {
3 | Entity Customer // a context with a Customer entity already exists here
4 | }
5 | }
6 |
7 | Domain InsuranceDomain {
8 | Subdomain CustomerDomain {
9 | Entity Customer
10 |
11 | Service CustomerService {
12 | createCustomer;
13 | testMethod;
14 | }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-bc-from-subdomain-test-9-input.cml:
--------------------------------------------------------------------------------
1 | Domain InsuranceDomain {
2 | Subdomain CustomerDomain supports Customer_Creation {
3 | Entity Customer
4 |
5 | Service CustomerService {
6 | createCustomer;
7 | readCustomer;
8 | }
9 | }
10 | }
11 |
12 | UserStory Customer_Creation {
13 | As a "Insurance Employee"
14 | I want to "create" a "Customer"
15 | I want to "read" a "Customer"
16 | so that ""
17 | }
18 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-frontend-backend-from-feature-test-1-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestFeature {
2 | type FEATURE
3 | }
4 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-frontend-backend-from-feature-test-2-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestSystem {
2 | type SYSTEM
3 | }
4 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-frontend-backend-from-feature-test-5-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap testMap { // test with existing context map
2 | }
3 |
4 | BoundedContext TestFeature {
5 | type FEATURE
6 |
7 | Module TestModule { // existing module
8 | Aggregate TestAggregateInModule {
9 | Entity TestEntityInModule {
10 | String attr1
11 | - TestEntity ref1
12 | }
13 | }
14 | }
15 |
16 | Aggregate TestAggregate { // existing aggregate
17 | Entity TestEntity {
18 | String attr1
19 | }
20 | }
21 |
22 | }
23 |
24 | BoundedContext JustSomeContext {
25 | Aggregate TestAggregateInModuleBackend // simulate duplicate name problem here
26 | }
27 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-frontend-backend-from-feature-test-6-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestSystem {
2 | type APPLICATION
3 | }
4 |
5 | BoundedContext TestSystemFrontend // default frontend name already exists
6 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-frontend-backend-from-feature-test-6-output.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains TestFrontend
3 | contains TestBackend
4 |
5 | TestBackend [ PL ] -> [ ACL ] TestFrontend
6 | }
7 |
8 | BoundedContext TestSystem {
9 | type APPLICATION
10 | }
11 |
12 | BoundedContext TestSystemFrontend // default frontend name already exists
13 |
14 | BoundedContext TestBackend {
15 | type SYSTEM
16 | }
17 |
18 | BoundedContext TestFrontend {
19 | type SYSTEM
20 | }
21 |
22 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-frontend-backend-from-feature-test-7-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains TestFrontend
3 | contains TestBackend
4 |
5 | TestBackend [ PL ] -> [ ACL ] TestFrontend
6 |
7 | }
8 |
9 | BoundedContext TestSystem {
10 | type APPLICATION
11 | }
12 |
13 | BoundedContext TestBackend {
14 | type SYSTEM
15 | }
16 |
17 | BoundedContext TestFrontend {
18 | type SYSTEM
19 | }
20 |
21 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-frontend-backend-from-feature-test-7-output.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains TestFrontend
3 | contains TestBackend
4 |
5 | TestBackend [ PL ] -> [ ACL ] TestFrontend
6 | }
7 |
8 | BoundedContext TestSystem {
9 | type APPLICATION
10 | }
11 |
12 | BoundedContext TestBackend {
13 | type SYSTEM
14 | }
15 |
16 | BoundedContext TestFrontend {
17 | type SYSTEM
18 | }
19 |
20 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-subdomain-from-user-story-test-1-input.cml:
--------------------------------------------------------------------------------
1 | Domain InsuranceDomain {
2 |
3 | }
4 |
5 | UserStory US1_Create {
6 | As an "Insurance Employee" I want to create a "Customer" so that "I am able to manage the customer data and offer contracts."
7 | }
8 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-subdomain-from-user-story-test-10-input.cml:
--------------------------------------------------------------------------------
1 | Domain InsuranceDomain {
2 | Subdomain Customers {
3 | Entity Customer
4 | }
5 | }
6 |
7 | UserStory US1_Create {
8 | As an "Insurance Employee" I want to create an "Address" with its "city", "postalcode" so that "I am able to manage the customer data and offer contracts."
9 | }
10 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-subdomain-from-user-story-test-11-input.cml:
--------------------------------------------------------------------------------
1 | Domain InsuranceDomain {
2 | Subdomain Customers {
3 | Entity Customer
4 | }
5 | }
6 |
7 | UserStory US1_Create {
8 | As an "Insurance Employee" I want to create an "Address" with its "city", "postalcode" for a "" so that "I am able to manage the customer data and offer contracts."
9 | }
10 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-subdomain-from-user-story-test-12-input.cml:
--------------------------------------------------------------------------------
1 | Domain InsuranceDomain {
2 | Subdomain Customers {
3 | Entity Customer {
4 | - List addressList // reference already exists
5 | }
6 | Entity Address
7 | }
8 | }
9 |
10 | UserStory US1_Create {
11 | As an "Insurance Employee" I want to create an "Address" with its "city", "postalcode" for a "Customer" so that "I am able to manage the customer data and offer contracts."
12 | }
13 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-subdomain-from-user-story-test-2-input.cml:
--------------------------------------------------------------------------------
1 | UserStory US1_Create {
2 | As an "Insurance Employee" I want to create a "Customer" so that "I am able to manage the customer data and offer contracts."
3 | }
4 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-subdomain-from-user-story-test-3-input.cml:
--------------------------------------------------------------------------------
1 | Domain InsuranceDomain {
2 | Subdomain Customers {
3 |
4 | }
5 | }
6 |
7 | UserStory US1_Create {
8 | As an "Insurance Employee" I want to create a "Customer" so that "I am able to manage the customer data and offer contracts."
9 | }
10 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-subdomain-from-user-story-test-4-input.cml:
--------------------------------------------------------------------------------
1 | Domain InsuranceDomain {
2 |
3 | }
4 |
5 | UserStory US1_Create {
6 | As an "Insurance Employee"
7 | I want to create a "Customer"
8 | I want to create a "" // this one will be ignored
9 | so that "I am able to manage the customer data and offer contracts."
10 | }
11 |
12 | UserStory Story_to_be_Ignored {
13 | As an "Insurance Employee" I want to create a "" so that "I am able to manage the customer data and offer contracts."
14 | }
15 |
16 | // use case without feature:
17 | UseCase UseCase_to_be_Ignored {
18 | actor "Insurance Employee"
19 | benefit "..."
20 | }
21 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-subdomain-from-user-story-test-5-input.cml:
--------------------------------------------------------------------------------
1 | Domain InsuranceDomain {
2 | Subdomain Customers {
3 | Entity Customer
4 | Service US1_CreateService
5 | }
6 | }
7 |
8 | UserStory US1_Create {
9 | As an "Insurance Employee" I want to create a "Customer" so that "I am able to manage the customer data and offer contracts."
10 | }
11 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-subdomain-from-user-story-test-6-input.cml:
--------------------------------------------------------------------------------
1 | Domain InsuranceDomain {
2 | Subdomain Customers {
3 | Entity Customer
4 | Service US1_CreateService {
5 | createCustomer;
6 | }
7 | }
8 | }
9 |
10 | UserStory US1_Create {
11 | As an "Insurance Employee" I want to create a "Customer" so that "I am able to manage the customer data and offer contracts."
12 | }
13 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-subdomain-from-user-story-test-7-input.cml:
--------------------------------------------------------------------------------
1 | Domain InsuranceDomain {
2 |
3 | }
4 |
5 | UserStory US1_Create {
6 | As an "Insurance Employee" I want to create a "Customer" with its "firstname", "lastname" so that "I am able to manage the customer data and offer contracts."
7 | }
8 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-subdomain-from-user-story-test-8-input.cml:
--------------------------------------------------------------------------------
1 | Domain InsuranceDomain {
2 | Subdomain Customers {
3 | Entity Customer { // entity customer already exists
4 | String firstname // one of the attributes already exists
5 | }
6 | }
7 | }
8 |
9 | // includes empty attribute name string that must be ignored:
10 | UserStory US1_Create {
11 | As an "Insurance Employee" I want to create a "Customer" with its "Firstname", "Lastname", "" so that "I am able to manage the customer data and offer contracts."
12 | }
13 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-subdomain-from-user-story-test-9-input.cml:
--------------------------------------------------------------------------------
1 | Domain InsuranceDomain {
2 | Subdomain Customers {
3 |
4 | }
5 | }
6 |
7 | UserStory US1_Create {
8 | As an "Insurance Employee" I want to create an "Address" with its "city", "postalcode" for a "Customer" so that "I am able to manage the customer data and offer contracts."
9 | }
10 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/derive-subdomain-from-user-story-test-existing-dvs-1.cml:
--------------------------------------------------------------------------------
1 | Domain InsuranceDomain {
2 | Subdomain Customers {
3 | domainVisionStatement "existing dvs 1; existing dvs 2"
4 |
5 | Entity Customer
6 | Service US1_CreateService
7 | }
8 | }
9 |
10 | UserStory US1_Create {
11 | As an "Insurance Employee" I want to create a "Customer" so that "I am able to manage the customer data and offer contracts."
12 | }
13 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-aggregates-by-nfr-test-1-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement -> AnotherContext
5 | }
6 |
7 | BoundedContext CustomerManagement {
8 | Aggregate Customers {
9 | Entity Customer{
10 | String firstName
11 | String familyName
12 | }
13 | Entity Account {
14 | String iban
15 | String bankName
16 | }
17 | }
18 |
19 | Aggregate Addresses {
20 | Entity Address {
21 | String street
22 | }
23 | }
24 |
25 | Aggregate AnotherAggregate {
26 | Entity JustAnEntity
27 | }
28 | }
29 |
30 | BoundedContext AnotherContext
31 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-aggregates-by-nfr-test-2-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement -> AnotherContext {
5 | exposedAggregates = Customers, Addresses
6 | }
7 |
8 | CustomerManagement [P]<->[P] AnotherContext
9 | }
10 |
11 | BoundedContext CustomerManagement {
12 | Aggregate Customers {
13 | Entity Customer{
14 | String firstName
15 | String familyName
16 | }
17 | Entity Account {
18 | String iban
19 | String bankName
20 | }
21 | }
22 |
23 | Aggregate Addresses {
24 | Entity Address {
25 | String street
26 | }
27 | }
28 |
29 | Aggregate AnotherAggregate {
30 | Entity JustAnEntity
31 | }
32 | }
33 |
34 | BoundedContext AnotherContext
35 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-aggregates-by-nfr-test-3-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | Entity Customer{
4 | String firstName
5 | String familyName
6 | }
7 | Entity Account {
8 | String iban
9 | String bankName
10 | }
11 | }
12 |
13 | Aggregate Addresses {
14 | Entity Address {
15 | String street
16 | }
17 | }
18 |
19 | Aggregate AnotherAggregate {
20 | Entity JustAnEntity
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-aggregates-by-nfr-test-4-input-1.cml:
--------------------------------------------------------------------------------
1 | import "extract-aggregates-by-nfr-test-4-input-2.cml"
2 |
3 | ContextMap {
4 | contains CustomerManagement, AnotherContext
5 |
6 | CustomerManagement -> AnotherContext {
7 | exposedAggregates = Customers, Addresses
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-aggregates-by-nfr-test-4-input-2.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | Entity Customer{
4 | String firstName
5 | String familyName
6 | }
7 | Entity Account {
8 | String iban
9 | String bankName
10 | }
11 | }
12 |
13 | Aggregate Addresses {
14 | Entity Address {
15 | String street
16 | }
17 | }
18 |
19 | Aggregate AnotherAggregate {
20 | Entity JustAnEntity
21 | }
22 | }
23 |
24 | BoundedContext AnotherContext
25 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-aggregates-likely-to-change-test-1-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | likelihoodForChange = OFTEN
4 |
5 | Entity Customer{
6 | String firstName
7 | String familyName
8 | }
9 | Entity Account {
10 | String iban
11 | String bankName
12 | }
13 | }
14 |
15 | Aggregate Addresses {
16 | likelihoodForChange = OFTEN
17 | Entity Address {
18 | String street
19 | }
20 | }
21 |
22 | Aggregate AnotherAggregate {
23 | Entity JustAnEntity
24 | }
25 | }
26 |
27 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-aggregates-likely-to-change-test-2-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | }
3 |
4 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-aggregates-likely-to-change-test-3-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | likelihoodForChange = OFTEN
4 |
5 | Entity Customer{
6 | String firstName
7 | String familyName
8 | }
9 | Entity Account {
10 | String iban
11 | String bankName
12 | }
13 | }
14 | }
15 |
16 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-aggregates-likely-to-change-test-4-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | Entity Customer{
4 | String firstName
5 | String familyName
6 | }
7 | Entity Account {
8 | String iban
9 | String bankName
10 | }
11 | }
12 |
13 | Aggregate Addresses {
14 | Entity Address {
15 | String street
16 | }
17 | }
18 |
19 | Aggregate AnotherAggregate {
20 | Entity JustAnEntity
21 | }
22 | }
23 |
24 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-aggregates-likely-to-change-test-5-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement -> AnotherContext {
5 | exposedAggregates = Customers
6 | }
7 | }
8 |
9 | BoundedContext CustomerManagement {
10 | Aggregate Customers {
11 | likelihoodForChange = OFTEN
12 |
13 | Entity Customer{
14 | String firstName
15 | String familyName
16 | }
17 | Entity Account {
18 | String iban
19 | String bankName
20 | }
21 | }
22 |
23 | Aggregate Addresses {
24 | likelihoodForChange = OFTEN
25 | Entity Address {
26 | String street
27 | }
28 | }
29 |
30 | Aggregate AnotherAggregate {
31 | Entity JustAnEntity
32 | }
33 | }
34 |
35 | BoundedContext AnotherContext
36 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-aggregates-likely-to-change-test-6-input-1.cml:
--------------------------------------------------------------------------------
1 | import "extract-aggregates-likely-to-change-test-6-input-2.cml"
2 |
3 | ContextMap {
4 | contains CustomerManagement, AnotherContext
5 |
6 | CustomerManagement -> AnotherContext {
7 | exposedAggregates = Customers
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-aggregates-likely-to-change-test-6-input-2.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | likelihoodForChange = OFTEN
4 |
5 | Entity Customer{
6 | String firstName
7 | String familyName
8 | }
9 | Entity Account {
10 | String iban
11 | String bankName
12 | }
13 | }
14 |
15 | Aggregate Addresses {
16 | likelihoodForChange = OFTEN
17 | Entity Address {
18 | String street
19 | }
20 | }
21 |
22 | Aggregate AnotherAggregate {
23 | Entity JustAnEntity
24 | }
25 | }
26 |
27 | BoundedContext AnotherContext
28 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-partnership-contextmap-existence-check.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement
2 | BoundedContext AnotherContext
3 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-partnership-precondition-checks-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement [P]<->[P] AnotherContext
5 | }
6 |
7 | BoundedContext CustomerManagement
8 | BoundedContext AnotherContext
9 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-partnership-precondition-checks-multiple-rels-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement [P]<->[P] AnotherContext
5 |
6 | CustomerManagement [P]<->[P] AnotherContext
7 | }
8 |
9 | BoundedContext CustomerManagement
10 | BoundedContext AnotherContext
11 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-partnership-precondition-checks-no-rel-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | }
5 |
6 | BoundedContext CustomerManagement
7 | BoundedContext AnotherContext
8 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-partnership-test-1-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement [P]<->[P] AnotherContext
5 | }
6 |
7 | BoundedContext CustomerManagement
8 | BoundedContext AnotherContext
9 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-partnership-test-2-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement [P]<->[P] AnotherContext
5 | }
6 |
7 | BoundedContext CustomerManagement
8 | BoundedContext AnotherContext
9 |
10 | BoundedContext CustomerManagement_AnotherContext_Partnership
11 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-shared-kernel-precondition-checks-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement [SK]<->[SK] AnotherContext
5 | }
6 |
7 | BoundedContext CustomerManagement
8 | BoundedContext AnotherContext
9 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-shared-kernel-precondition-checks-multiple-rels-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement [SK]<->[SK] AnotherContext
5 |
6 | CustomerManagement [SK]<->[SK] AnotherContext
7 | }
8 |
9 | BoundedContext CustomerManagement
10 | BoundedContext AnotherContext
11 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-shared-kernel-precondition-checks-no-rel-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | }
5 |
6 | BoundedContext CustomerManagement
7 | BoundedContext AnotherContext
8 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-shared-kernel-test-1-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement [SK]<->[SK] AnotherContext
5 | }
6 |
7 | BoundedContext CustomerManagement
8 | BoundedContext AnotherContext
9 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-shared-kernel-test-2-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement [SK]<->[SK] AnotherContext
5 | }
6 |
7 | BoundedContext CustomerManagement
8 | BoundedContext AnotherContext
9 |
10 | BoundedContext CustomerManagement_AnotherContext_SharedKernel
11 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-suggested-service-empty-model-test.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains Service_P
3 |
4 | }
5 |
6 | BoundedContext Service_P {
7 | Aggregate Aggregate_P {
8 | Entity CarrierMovement
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-suggested-service-unsupported-type-test-1.cml:
--------------------------------------------------------------------------------
1 | BoundedContext Monolith {
2 | Aggregate SingleAggregate {
3 | Entity Customer {
4 | String firstname
5 | String lastname
6 |
7 | }
8 | BasicType CustomerDTO {
9 | String firstname
10 | String lastname
11 | }
12 | }
13 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-suggested-service-unsupported-type-test-1_Markov_Clustering_Cut_1.cml:
--------------------------------------------------------------------------------
1 | BoundedContext Service_A {
2 | Aggregate SingleAggregate_A {
3 | BasicType CustomerDTO {
4 | String firstname
5 | String lastname
6 | }
7 | }
8 | }
9 |
10 | BoundedContext Service_B {
11 | Aggregate SingleAggregate_B {
12 | Entity Customer {
13 | String firstname
14 | String lastname
15 |
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-suggested-service-unsupported-type-test-2.cml:
--------------------------------------------------------------------------------
1 | BoundedContext Monolith {
2 | Aggregate SingleAggregate {
3 | Entity Customer {
4 | String firstname
5 | String lastname
6 |
7 | }
8 | BasicType CustomerDTO {
9 | - RefVal attr1
10 | }
11 | ValueObject RefVal
12 | }
13 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-suggested-service-unsupported-type-test-2_Markov_Clustering_Cut_1.cml:
--------------------------------------------------------------------------------
1 | BoundedContext Service_A {
2 | Aggregate SingleAggregate_A {
3 | BasicType CustomerDTO {
4 | - RefVal attr1
5 | }
6 | ValueObject RefVal
7 | }
8 | }
9 |
10 | BoundedContext Service_B {
11 | Aggregate SingleAggregate_B {
12 | Entity Customer {
13 | String firstname
14 | String lastname
15 |
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-suggested-service-with-modules-test.cml:
--------------------------------------------------------------------------------
1 | BoundedContext Monolith {
2 | Module Module1 {
3 | Entity Customer {
4 | String firstname
5 | String lastname
6 | }
7 | }
8 | Module Module2 {
9 | Entity CustomerDTO {
10 | String firstname
11 | String lastname
12 | }
13 | }
14 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/extract-suggested-service-with-modules-test_Markov_Clustering_Cut_1.cml:
--------------------------------------------------------------------------------
1 | BoundedContext Service_A {
2 | Aggregate Aggregate1 {
3 | Entity Customer {
4 | String firstname
5 | String lastname
6 | }
7 | }
8 |
9 | }
10 | BoundedContext Service_B {
11 | Aggregate Aggregate2 {
12 | Entity CustomerDTO {
13 | String firstname
14 | String lastname
15 | }
16 | }
17 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/just-an-empty-model.cml:
--------------------------------------------------------------------------------
1 | ContextMap EmptyMap {
2 | }
3 |
4 | BoundedContext TestContext
5 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-aggregates-test-1-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | Entity Customer{
4 | String firstName
5 | String familyName
6 | }
7 | Entity Account {
8 | String iban
9 | String bankName
10 | }
11 | }
12 |
13 | Aggregate Addresses {
14 | Entity Address {
15 | String street
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-aggregates-test-2-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Module module {
3 | Aggregate Customers {
4 | Entity Customer{
5 | String firstName
6 | String familyName
7 | }
8 | Entity Account {
9 | String iban
10 | String bankName
11 | }
12 | }
13 |
14 | Aggregate Addresses {
15 | Entity Address {
16 | String street
17 | }
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-aggregates-test-3-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement -> AnotherContext {
5 | exposedAggregates = Customers, Addresses
6 | }
7 |
8 | CustomerManagement [P]<->[P] AnotherContext
9 |
10 | }
11 |
12 | BoundedContext CustomerManagement {
13 | Aggregate Customers {
14 | Entity Customer{
15 | String firstName
16 | String familyName
17 | }
18 | Entity Account {
19 | String iban
20 | String bankName
21 | }
22 | }
23 | Aggregate Addresses {
24 | Entity Address {
25 | String street
26 | }
27 | }
28 | }
29 |
30 | BoundedContext AnotherContext
31 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-aggregates-test-4-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement -> AnotherContext {
5 | exposedAggregates = Customers, Addresses
6 | }
7 |
8 | CustomerManagement [P]<->[P] AnotherContext
9 |
10 | }
11 |
12 | BoundedContext CustomerManagement {
13 | Aggregate Customers {
14 | Entity Customer{
15 | String firstName
16 | String familyName
17 | }
18 | Entity Account {
19 | String iban
20 | String bankName
21 | }
22 | Entity Address {
23 | String street
24 | }
25 | }
26 | Aggregate Addresses {
27 | Entity Address {
28 | String street
29 | }
30 | }
31 | }
32 |
33 | BoundedContext AnotherContext
34 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-aggregates-test-5-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext AnotherContext {
2 | Aggregate agg1 {
3 | knowledgeLevel = CONCRETE
4 | likelihoodForChange = NORMAL
5 | owner = TeamA
6 | }
7 |
8 | Aggregate agg2 {
9 | knowledgeLevel = META
10 | likelihoodForChange = OFTEN
11 | owner = TeamB
12 | }
13 | }
14 |
15 |
16 | BoundedContext TeamA {
17 | type = TEAM
18 | }
19 |
20 | BoundedContext TeamB {
21 | type = TEAM
22 | }
23 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-aggregates-test-6-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext AnotherContext {
2 | Aggregate agg1 {
3 | Entity MyEntity {
4 | aggregateRoot
5 | }
6 | }
7 |
8 | Aggregate agg2 {
9 | Entity MyOtherEntity {
10 | aggregateRoot
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-aggregates-test-7-input-1.cml:
--------------------------------------------------------------------------------
1 | import "merge-aggregates-test-7-input-2.cml"
2 |
3 | ContextMap {
4 | contains CustomerManagement, AnotherContext
5 |
6 | CustomerManagement -> AnotherContext {
7 | exposedAggregates = Customers, Addresses
8 | }
9 |
10 | }
11 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-aggregates-test-7-input-2.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | Entity Customer{
4 | String firstName
5 | String familyName
6 | }
7 | Entity Account {
8 | String iban
9 | String bankName
10 | }
11 | }
12 | Aggregate Addresses {
13 | Entity Address {
14 | String street
15 | }
16 | }
17 | }
18 |
19 | BoundedContext AnotherContext
20 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-bounded-contexts-fix-import-test-1.cml:
--------------------------------------------------------------------------------
1 | import "merge-bounded-contexts-fix-import-test-2.cml"
2 | import "merge-bounded-contexts-fix-import-test-3.cml"
3 |
4 | ContextMap testMap {
5 | contains CustomerManagement, AnotherContext
6 |
7 | CustomerManagement -> AnotherContext
8 | }
9 |
10 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-bounded-contexts-fix-import-test-2.cml:
--------------------------------------------------------------------------------
1 | BoundedContext AnotherContext {
2 | Aggregate AnotherAggregate {
3 | Entity JustAnEntity
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-bounded-contexts-fix-import-test-3.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | Entity Customer{
4 | String firstName
5 | String familyName
6 | }
7 | Entity Account {
8 | String iban
9 | String bankName
10 | }
11 | }
12 |
13 | Aggregate Addresses {
14 | Entity Address {
15 | String street
16 | }
17 | }
18 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-bounded-contexts-fix-import-test-4.cml:
--------------------------------------------------------------------------------
1 | import "merge-bounded-contexts-fix-import-test-2.cml"
2 |
3 | BoundedContext ContextWithRef2MovedAggregate {
4 | Aggregate JustAnAggregate {
5 | Entity JustAnEntity {
6 | - JustAnEntity ref
7 | }
8 | }
9 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-bounded-contexts-multiple-files-test-1.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | Entity Customer{
4 | String firstName
5 | String familyName
6 | }
7 | Entity Account {
8 | String iban
9 | String bankName
10 | }
11 | }
12 |
13 | Aggregate Addresses {
14 | Entity Address {
15 | String street
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-bounded-contexts-multiple-files-test-2.cml:
--------------------------------------------------------------------------------
1 | BoundedContext AnotherContext {
2 | Aggregate AnotherAggregate {
3 | Entity JustAnEntity
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-bounded-contexts-multiple-files-test-3.cml:
--------------------------------------------------------------------------------
1 | import "merge-bounded-contexts-multiple-files-test-1.cml"
2 | import "merge-bounded-contexts-multiple-files-test-2.cml"
3 |
4 | ContextMap testMap {
5 | contains CustomerManagement, AnotherContext
6 |
7 | CustomerManagement -> AnotherContext
8 | }
9 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-bounded-contexts-test-1-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | Entity Customer{
4 | String firstName
5 | String familyName
6 | }
7 | Entity Account {
8 | String iban
9 | String bankName
10 | }
11 | }
12 |
13 | Aggregate Addresses {
14 | Entity Address {
15 | String street
16 | }
17 | }
18 | }
19 |
20 | BoundedContext AnotherContext {
21 | Aggregate AnotherAggregate {
22 | Entity JustAnEntity
23 | }
24 | }
25 |
26 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-bounded-contexts-test-10-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | Entity Customer{
4 | String firstName
5 | String familyName
6 | }
7 | Entity Account {
8 | String iban
9 | String bankName
10 | }
11 | }
12 |
13 | Aggregate Addresses {
14 | Entity Address {
15 | String street
16 | }
17 | }
18 | }
19 |
20 | BoundedContext AnotherContext {
21 | Aggregate AnotherAggregate {
22 | Entity JustAnEntity
23 | }
24 | }
25 |
26 | BoundedContext TeamA realizes CustomerManagement {
27 | type = TEAM
28 | }
29 |
30 | BoundedContext TeamB realizes AnotherContext {
31 | type = TEAM
32 | }
33 |
34 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-bounded-contexts-test-11-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | domainVisionStatement = "CustomerDomainVisionStatement"
3 | knowledgeLevel = META
4 | type = SYSTEM
5 |
6 | Aggregate Customers {
7 | Entity Customer{
8 | String firstName
9 | String familyName
10 | }
11 | Entity Account {
12 | String iban
13 | String bankName
14 | }
15 | }
16 |
17 | Aggregate Addresses {
18 | Entity Address {
19 | String street
20 | }
21 | }
22 | }
23 |
24 | BoundedContext AnotherContext {
25 | domainVisionStatement = "AnotherDomainVisionStatement"
26 | knowledgeLevel = CONCRETE
27 | type = FEATURE
28 |
29 | Aggregate AnotherAggregate {
30 | Entity JustAnEntity
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-bounded-contexts-test-2-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Module mod1 {
3 | Aggregate Customers {
4 | Entity Customer{
5 | String firstName
6 | String familyName
7 | }
8 | Entity Account {
9 | String iban
10 | String bankName
11 | }
12 | }
13 |
14 | Aggregate Addresses {
15 | Entity Address {
16 | String street
17 | }
18 | }
19 | }
20 | }
21 |
22 | BoundedContext AnotherContext {
23 | Module mod2 {
24 | Aggregate AnotherAggregate {
25 | Entity JustAnEntity
26 | }
27 | }
28 | }
29 |
30 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-bounded-contexts-test-3-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement
3 | contains AnotherContext
4 | }
5 |
6 | BoundedContext CustomerManagement {
7 | Module mod1 {
8 | Aggregate Customers {
9 | Entity Customer{
10 | String firstName
11 | String familyName
12 | }
13 | Entity Account {
14 | String iban
15 | String bankName
16 | }
17 | }
18 |
19 | Aggregate Addresses {
20 | Entity Address {
21 | String street
22 | }
23 | }
24 | }
25 | }
26 |
27 | BoundedContext AnotherContext {
28 | Module mod2 {
29 | Aggregate AnotherAggregate {
30 | Entity JustAnEntity
31 | }
32 | }
33 | }
34 |
35 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-bounded-contexts-test-4-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement
3 | contains AnotherContext
4 |
5 | CustomerManagement <-> AnotherContext
6 |
7 | AnotherContext <-> CustomerManagement
8 |
9 | CustomerManagement -> AnotherContext
10 |
11 | CustomerManagement <- AnotherContext
12 | }
13 |
14 | BoundedContext CustomerManagement {
15 | Module mod1 {
16 | Aggregate Customers {
17 | Entity Customer{
18 | String firstName
19 | String familyName
20 | }
21 | Entity Account {
22 | String iban
23 | String bankName
24 | }
25 | }
26 |
27 | Aggregate Addresses {
28 | Entity Address {
29 | String street
30 | }
31 | }
32 | }
33 | }
34 |
35 | BoundedContext AnotherContext {
36 | Module mod2 {
37 | Aggregate AnotherAggregate {
38 | Entity JustAnEntity
39 | }
40 | }
41 | }
42 |
43 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-bounded-contexts-test-5-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains AnotherContext
3 | contains DeptColletion
4 |
5 | DeptColletion -> AnotherContext
6 | DeptColletion <- AnotherContext
7 | }
8 |
9 | BoundedContext CustomerManagement {
10 | Aggregate Customers {
11 | Entity Customer{
12 | String firstName
13 | String familyName
14 | }
15 | Entity Account {
16 | String iban
17 | String bankName
18 | }
19 | }
20 |
21 | Aggregate Addresses {
22 | Entity Address {
23 | String street
24 | }
25 | }
26 | }
27 |
28 | BoundedContext DeptColletion {
29 | Aggregate Depts {
30 | Entity Dept
31 | }
32 | }
33 |
34 | BoundedContext AnotherContext {
35 | Aggregate AnotherAggregate {
36 | Entity JustAnEntity
37 | }
38 | }
39 |
40 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-bounded-contexts-test-6-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains AnotherContext
3 | contains DeptColletion
4 |
5 | DeptColletion <-> AnotherContext
6 | AnotherContext <-> DeptColletion
7 | }
8 |
9 | BoundedContext CustomerManagement {
10 | Aggregate Customers {
11 | Entity Customer{
12 | String firstName
13 | String familyName
14 | }
15 | Entity Account {
16 | String iban
17 | String bankName
18 | }
19 | }
20 |
21 | Aggregate Addresses {
22 | Entity Address {
23 | String street
24 | }
25 | }
26 | }
27 |
28 | BoundedContext DeptColletion {
29 | Aggregate Depts {
30 | Entity Dept
31 | }
32 | }
33 |
34 | BoundedContext AnotherContext {
35 | Aggregate AnotherAggregate {
36 | Entity JustAnEntity
37 | }
38 | }
39 |
40 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-bounded-contexts-test-7-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | implementationTechnology = "Java"
3 |
4 | Aggregate Customers {
5 | Entity Customer{
6 | String firstName
7 | String familyName
8 | }
9 | Entity Account {
10 | String iban
11 | String bankName
12 | }
13 | }
14 |
15 | Aggregate Addresses {
16 | Entity Address {
17 | String street
18 | }
19 | }
20 | }
21 |
22 | BoundedContext AnotherContext {
23 | implementationTechnology = "Scala"
24 |
25 | Aggregate AnotherAggregate {
26 | Entity JustAnEntity
27 | }
28 | }
29 |
30 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-bounded-contexts-test-8-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | implementationTechnology = ""
3 |
4 | Aggregate Customers {
5 | Entity Customer{
6 | String firstName
7 | String familyName
8 | }
9 | Entity Account {
10 | String iban
11 | String bankName
12 | }
13 | }
14 |
15 | Aggregate Addresses {
16 | Entity Address {
17 | String street
18 | }
19 | }
20 | }
21 |
22 | BoundedContext AnotherContext {
23 | implementationTechnology = ""
24 |
25 | Aggregate AnotherAggregate {
26 | Entity JustAnEntity
27 | }
28 | }
29 |
30 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/merge-bounded-contexts-test-9-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | Entity Customer{
4 | String firstName
5 | String familyName
6 | }
7 | Entity Account {
8 | String iban
9 | String bankName
10 | }
11 | }
12 |
13 | Aggregate Addresses {
14 | Entity Address {
15 | String street
16 | }
17 | }
18 | }
19 |
20 | BoundedContext AnotherContext {
21 | Aggregate AnotherAggregate {
22 | Entity JustAnEntity
23 | }
24 | }
25 |
26 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/move-stakeholder-to-group-1.cml:
--------------------------------------------------------------------------------
1 |
2 | Stakeholders {
3 | Stakeholder Tester
4 | }
5 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/move-stakeholder-to-group-2.cml:
--------------------------------------------------------------------------------
1 |
2 | Stakeholders {
3 | StakeholderGroup Testers {
4 | Stakeholder Tester
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-agg-by-entities-test-1-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | Entity Customer{
4 | String firstName
5 | String familyName
6 | }
7 | Entity Account {
8 | String iban
9 | String bankName
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-agg-by-entities-test-2-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Module test {
3 | Aggregate Customers {
4 | Entity Customer{
5 | String firstName
6 | String familyName
7 | }
8 | Entity Account {
9 | String iban
10 | String bankName
11 | }
12 | }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-agg-by-entities-test-3-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap testMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement -> AnotherContext {
5 | exposedAggregates = Customers
6 | }
7 |
8 | CustomerManagement [P]<->[P] AnotherContext
9 |
10 | CustomerManagement -> AnotherContext
11 |
12 | }
13 |
14 | BoundedContext CustomerManagement {
15 | Aggregate Customers {
16 | Entity Customer{
17 | String firstName
18 | String familyName
19 | }
20 | Entity Account {
21 | String iban
22 | String bankName
23 | }
24 | }
25 | }
26 |
27 | BoundedContext AnotherContext
28 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-agg-by-entities-test-4-input-1.cml:
--------------------------------------------------------------------------------
1 | import "split-agg-by-entities-test-4-input-2.cml"
2 |
3 | ContextMap testMap {
4 | contains CustomerManagement, AnotherContext
5 |
6 | CustomerManagement -> AnotherContext {
7 | exposedAggregates = Customers
8 | }
9 |
10 | }
11 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-agg-by-entities-test-4-input-2.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | Entity Customer{
4 | String firstName
5 | String familyName
6 | }
7 | Entity Account {
8 | String iban
9 | String bankName
10 | }
11 | }
12 | }
13 |
14 | BoundedContext AnotherContext
15 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-bc-by-owner-test-1-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | owner = Team1
4 | Entity Customer{
5 | String firstName
6 | String familyName
7 | }
8 | Entity Account {
9 | String iban
10 | String bankName
11 | }
12 | }
13 | Aggregate Addresses {
14 | owner = Team2
15 | Entity Address {
16 | String street
17 | }
18 | }
19 | }
20 |
21 | BoundedContext Team1 {
22 | type = TEAM
23 | }
24 |
25 | BoundedContext Team2 {
26 | type = TEAM
27 | }
28 |
29 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-bc-by-owner-test-2-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | owner = Team1
4 | Entity Customer{
5 | String firstName
6 | String familyName
7 | }
8 | Entity Account {
9 | String iban
10 | String bankName
11 | }
12 | }
13 | Aggregate Addresses {
14 | owner = Team2
15 | Entity Address {
16 | String street
17 | }
18 | }
19 | Aggregate AnotherAgg {
20 | owner = Team1
21 | }
22 | }
23 |
24 | BoundedContext Team1 {
25 | type = TEAM
26 | }
27 |
28 | BoundedContext Team2 {
29 | type = TEAM
30 | }
31 |
32 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-bc-by-owner-test-3-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | Entity Customer{
4 | String firstName
5 | String familyName
6 | }
7 | Entity Account {
8 | String iban
9 | String bankName
10 | }
11 | }
12 |
13 | Aggregate Addresses {
14 | Entity Address {
15 | String street
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-bc-by-owner-test-4-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, ContractManagement
3 |
4 | CustomerManagement -> ContractManagement {
5 | exposedAggregates = Customers, Addresses
6 | }
7 | }
8 |
9 | BoundedContext CustomerManagement {
10 | Aggregate Customers {
11 | owner = Team1
12 | Entity Customer{
13 | String firstName
14 | String familyName
15 | }
16 | Entity Account {
17 | String iban
18 | String bankName
19 | }
20 | }
21 | Aggregate Addresses {
22 | owner = Team2
23 | Entity Address {
24 | String street
25 | }
26 | }
27 | }
28 |
29 | BoundedContext ContractManagement
30 |
31 | BoundedContext Team1 {
32 | type = TEAM
33 | }
34 |
35 | BoundedContext Team2 {
36 | type = TEAM
37 | }
38 |
39 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-bc-by-owner-test-5-input-1.cml:
--------------------------------------------------------------------------------
1 | import "split-bc-by-owner-test-5-input-2.cml"
2 |
3 | ContextMap {
4 | contains CustomerManagement, ContractManagement
5 |
6 | CustomerManagement -> ContractManagement {
7 | exposedAggregates = Customers, Addresses
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-bc-by-owner-test-5-input-2.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | owner = Team1
4 | Entity Customer{
5 | String firstName
6 | String familyName
7 | }
8 | Entity Account {
9 | String iban
10 | String bankName
11 | }
12 | }
13 | Aggregate Addresses {
14 | owner = Team2
15 | Entity Address {
16 | String street
17 | }
18 | }
19 | }
20 |
21 | BoundedContext ContractManagement
22 |
23 | BoundedContext Team1 {
24 | type = TEAM
25 | }
26 |
27 | BoundedContext Team2 {
28 | type = TEAM
29 | }
30 |
31 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-bc-by-use-cases-test-1-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | useCases = testUseCase1
4 | Entity Customer{
5 | String firstName
6 | String familyName
7 | }
8 | Entity Account {
9 | String iban
10 | String bankName
11 | }
12 | }
13 |
14 | Aggregate Addresses {
15 | useCases = testUseCase2
16 | Entity Address {
17 | String street
18 | }
19 | }
20 | }
21 |
22 | UseCase testUseCase1
23 | UseCase testUseCase2
24 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-bc-by-use-cases-test-2-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | useCases = testUseCase1
4 | Entity Customer{
5 | String firstName
6 | String familyName
7 | }
8 | Entity Account {
9 | String iban
10 | String bankName
11 | }
12 | }
13 |
14 | Aggregate Addresses {
15 | useCases = testUseCase2
16 | Entity Address {
17 | String street
18 | }
19 | }
20 |
21 | Aggregate JustAnotherAggregate {
22 | useCases = testUseCase1
23 | }
24 | }
25 |
26 | UseCase testUseCase1
27 | UseCase testUseCase2
28 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-bc-by-use-cases-test-3-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | Entity Customer{
4 | String firstName
5 | String familyName
6 | }
7 | Entity Account {
8 | String iban
9 | String bankName
10 | }
11 | }
12 |
13 | Aggregate Addresses {
14 | Entity Address {
15 | String street
16 | }
17 | }
18 | }
19 |
20 | UseCase testUseCase1
21 | UseCase testUseCase2
22 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-bc-by-use-cases-test-4-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, ContractManagement
3 |
4 | CustomerManagement -> ContractManagement {
5 | exposedAggregates = Customers, Addresses
6 | }
7 | }
8 |
9 | BoundedContext CustomerManagement {
10 | Aggregate Customers {
11 | useCases = testUseCase1
12 | Entity Customer{
13 | String firstName
14 | String familyName
15 | }
16 | Entity Account {
17 | String iban
18 | String bankName
19 | }
20 | }
21 |
22 | Aggregate Addresses {
23 | useCases = testUseCase2
24 | Entity Address {
25 | String street
26 | }
27 | }
28 | }
29 |
30 | BoundedContext ContractManagement
31 |
32 | UseCase testUseCase1
33 | UseCase testUseCase2
34 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-bc-by-use-cases-test-5-input-1.cml:
--------------------------------------------------------------------------------
1 | import "split-bc-by-use-cases-test-5-input-2.cml"
2 |
3 | ContextMap {
4 | contains CustomerManagement, ContractManagement
5 |
6 | CustomerManagement -> ContractManagement {
7 | exposedAggregates = Customers, Addresses
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-bc-by-use-cases-test-5-input-2.cml:
--------------------------------------------------------------------------------
1 | BoundedContext CustomerManagement {
2 | Aggregate Customers {
3 | useCases = testUseCase1
4 | Entity Customer{
5 | String firstName
6 | String familyName
7 | }
8 | Entity Account {
9 | String iban
10 | String bankName
11 | }
12 | }
13 |
14 | Aggregate Addresses {
15 | useCases = testUseCase2
16 | Entity Address {
17 | String street
18 | }
19 | }
20 | }
21 |
22 | BoundedContext ContractManagement
23 |
24 | UseCase testUseCase1
25 | UseCase testUseCase2
26 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-by-duplicate-entity-test-1-input.cml:
--------------------------------------------------------------------------------
1 | /* Insurance Example Context Map */
2 | ContextMap {
3 | contains CustomerManagement
4 | contains PolicyManagement
5 |
6 | PolicyManagement [D,ACL]<-[U,OHS,PL] CustomerManagement
7 |
8 | }
9 |
10 | /* Bounded Context Definitions */
11 | BoundedContext CustomerManagement {
12 | Aggregate Customers {
13 | Entity Customer{
14 | String firstName
15 | String familyName
16 | Account customerBankAccount
17 | }
18 | Entity Account {
19 | String iban
20 | String bankName
21 | }
22 | }
23 | Aggregate CustomerSelfService {
24 | Entity Account {
25 | String username
26 | String password
27 | Customer accountOwner
28 | }
29 | }
30 | }
31 |
32 | BoundedContext PolicyManagement {
33 | Aggregate Contracts {
34 | Entity Contract {
35 | }
36 | }
37 | }
38 |
39 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-by-duplicate-entity-test-1-output.cml:
--------------------------------------------------------------------------------
1 | /* Insurance Example Context Map */
2 | ContextMap {
3 | contains CustomerManagement
4 | contains PolicyManagement
5 |
6 | PolicyManagement [D, ACL]<-[U, OHS, PL] CustomerManagement
7 |
8 | }
9 |
10 | /* Bounded Context Definitions */
11 | BoundedContext CustomerManagement {
12 | Aggregate CustomerSelfService {
13 | Entity Account {
14 | String username
15 | String password
16 | Customer accountOwner
17 | }
18 | }
19 | }
20 |
21 | BoundedContext PolicyManagement {
22 | Aggregate Contracts {
23 | Entity Contract {
24 | }
25 | }
26 | }
27 |
28 | BoundedContext SplitBoundedContext {
29 | Aggregate Customers {
30 | Entity Customer{
31 | String firstName
32 | String familyName
33 | Account customerBankAccount
34 | }
35 | Entity Account {
36 | String iban
37 | String bankName
38 | }
39 | }
40 | }
41 |
42 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-by-duplicate-entity-test-2-no-duplicates.cml:
--------------------------------------------------------------------------------
1 | /* Insurance Example Context Map */
2 | ContextMap {
3 | contains CustomerManagement
4 | contains PolicyManagement
5 |
6 | PolicyManagement [D,ACL]<-[U,OHS,PL] CustomerManagement
7 | }
8 |
9 | /* Bounded Context Definitions */
10 | BoundedContext CustomerManagement {
11 |
12 | Aggregate Customers {
13 | Entity Customer{
14 | String firstName
15 | String familyName
16 | Account customerBankAccount
17 | }
18 | }
19 |
20 | Aggregate CustomerSelfService {
21 | Entity Account {
22 | String username
23 | String password
24 | Customer accountOwner
25 | }
26 | }
27 |
28 | }
29 |
30 | BoundedContext PolicyManagement {
31 | Aggregate Contracts {
32 | Entity Contract {}
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-system-tier-test-1-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestBackend {
2 | type SYSTEM
3 | }
4 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-system-tier-test-2-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestBackend {
2 | type FEATURE // not a system
3 | }
4 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-system-tier-test-3-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestBackend {
2 | type SYSTEM
3 |
4 | Aggregate TestAggregate {
5 | Entity TestEntity
6 | }
7 | }
8 |
9 | BoundedContext TestBackendLogic
10 | BoundedContext TestBackendDatabase
11 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-system-tier-test-3-output.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains TestBackendDatabase
3 | contains TestBackendLogic
4 |
5 | TestBackendLogic [ PL ] -> [ CF ] TestBackendDatabase {
6 | implementationTechnology ""
7 | exposedAggregates TestAggregate
8 | }
9 | }
10 |
11 | BoundedContext TestBackendLogic {
12 | type SYSTEM
13 | Aggregate TestAggregate {
14 | Entity TestEntity
15 | }
16 | }
17 |
18 | BoundedContext TestBackendDatabase {
19 | type SYSTEM
20 | implementationTechnology ""
21 | }
22 |
23 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-system-tier-test-4-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains TestBackendDatabase
3 | contains TestBackendLogic
4 |
5 | TestBackendLogic [ PL ] -> [ CF ] TestBackendDatabase {
6 | implementationTechnology ""
7 | exposedAggregates TestAggregate
8 | }
9 |
10 | TestBackendLogic [ P ] <-> [ P ] TestBackendDatabase // will be removed ...
11 |
12 | }
13 |
14 | BoundedContext TestBackendLogic {
15 | type SYSTEM
16 | Aggregate TestAggregate {
17 | Entity TestEntity
18 | }
19 | }
20 |
21 | BoundedContext TestBackendDatabase {
22 | type SYSTEM
23 | implementationTechnology ""
24 | }
25 |
26 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-system-tier-test-4-output.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains TestBackendLogic
3 | contains TestBackendDatabase
4 |
5 | TestBackendLogic [ PL ] -> [ CF ] TestBackendDatabase {
6 | implementationTechnology ""
7 | exposedAggregates TestAggregate
8 | }
9 | }
10 |
11 | BoundedContext TestBackendLogic {
12 | type SYSTEM
13 | Aggregate TestAggregate {
14 | Entity TestEntity
15 | }
16 | }
17 |
18 | BoundedContext TestBackendDatabase {
19 | type SYSTEM
20 | implementationTechnology ""
21 | }
22 |
23 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-system-tier-test-5-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | // already existing context map; but no contexts
3 | }
4 |
5 | BoundedContext TestBackend {
6 | type SYSTEM
7 | }
8 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-system-tier-test-6-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestBackend {
2 | type SYSTEM
3 |
4 | Module TestModule {
5 | Aggregate TestAggregateInModule {
6 | Entity TestEntityInModule
7 | }
8 | }
9 |
10 | Aggregate TestAggregate {
11 | Entity TestEntity
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-system-tier-test-7-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains TestBackend
3 | contains AnotherContext
4 |
5 | TestBackend -> AnotherContext : upDownTestRel1
6 | TestBackend <- AnotherContext : upDownTestRel2
7 |
8 | TestBackend [P]<->[P] AnotherContext : symTestRel1
9 | AnotherContext [P]<->[P] TestBackend : symTestRel2
10 | }
11 |
12 | BoundedContext TestBackend {
13 | type SYSTEM
14 | }
15 |
16 | BoundedContext AnotherContext
17 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/split-system-tier-test-8-input.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestBackend {
2 | type SYSTEM
3 |
4 | Aggregate TestAggregate
5 | }
6 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/switch-from-partnership-to-sharedkernel-precondition-checks-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement [P]<->[P] AnotherContext
5 | }
6 |
7 | BoundedContext CustomerManagement
8 | BoundedContext AnotherContext
9 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/switch-from-partnership-to-sharedkernel-precondition-checks-multiple-rels-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement [P]<->[P] AnotherContext
5 |
6 | CustomerManagement [P]<->[P] AnotherContext
7 | }
8 |
9 | BoundedContext CustomerManagement
10 | BoundedContext AnotherContext
11 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/switch-from-partnership-to-sharedkernel-precondition-checks-no-rel-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | }
5 |
6 | BoundedContext CustomerManagement
7 | BoundedContext AnotherContext
8 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/switch-from-partnership-to-sharedkernel-test-1-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement [P]<->[P] AnotherContext
5 | }
6 |
7 | BoundedContext CustomerManagement
8 | BoundedContext AnotherContext
9 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/switch-from-sharedkernel-to-partnership-precondition-checks-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement [SK]<->[SK] AnotherContext
5 | }
6 |
7 | BoundedContext CustomerManagement
8 | BoundedContext AnotherContext
9 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/switch-from-sharedkernel-to-partnership-precondition-checks-multiple-rels-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement [SK]<->[SK] AnotherContext
5 |
6 | CustomerManagement [SK]<->[SK] AnotherContext
7 | }
8 |
9 | BoundedContext CustomerManagement
10 | BoundedContext AnotherContext
11 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/switch-from-sharedkernel-to-partnership-precondition-checks-no-rel-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | }
5 |
6 | BoundedContext CustomerManagement
7 | BoundedContext AnotherContext
8 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/switch-from-sharedkernel-to-partnership-test-1-input.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains CustomerManagement, AnotherContext
3 |
4 | CustomerManagement [SK]<->[SK] AnotherContext
5 | }
6 |
7 | BoundedContext CustomerManagement
8 | BoundedContext AnotherContext
9 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/refactorings/wrap-value-in-cluster-1.cml:
--------------------------------------------------------------------------------
1 |
2 | ValueRegister TestRegister {
3 | Value TestValue
4 | }
5 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/servicecutter/.wrong-servicecutter.yml:
--------------------------------------------------------------------------------
1 | algorithm: MARKOV_CLUSTERING
2 | algorithmParams:
3 | numberOfClusters: 3.0
4 | leungDelta: 0.55
5 | mclExpansionOperations: 2.0
6 | mclPowerCoefficient: 2.0
7 | prune: 0.0
8 | extraClusters: 0.0
9 | leungM: 0.1
10 | cwNodeWeighting: 0.0
11 | power: 1.0
12 | inflation: 2.0
13 | priorities:
14 | Identity & Lifecycle Commonality: M
15 | Security Constraint: M
16 | Storage Similarity: XS
17 | Security Criticality: XS
18 | Latency: M
19 | Structural Volatility: XS
20 | Consistency Criticality: XS
21 | Predefined Service Constraint: Y
22 | Availability Criticality: XS
23 | Semantic Proximity: M
24 | Consistency Constraint: M
25 | Shared Owner: M
26 | Content Volatility: XS
27 | Security Contextuality: M
28 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/servicecutter/CML_Model_without_ContextMap.cml:
--------------------------------------------------------------------------------
1 | BoundedContext context1
2 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/servicecutter/CML_Model_without_attributes.cml:
--------------------------------------------------------------------------------
1 | ContextMap myMap {
2 | contains context1
3 | }
4 |
5 | BoundedContext context1
6 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/servicecutter/solver-configuration.json:
--------------------------------------------------------------------------------
1 | {
2 | "algorithmParams": {
3 | "inflation": 2,
4 | "power": 1,
5 | "prune": 0,
6 | "extraClusters": 0,
7 | "numberOfClusters": 3,
8 | "leungM": 0.1,
9 | "leungDelta": 0.55
10 | },
11 | "priorities": {
12 | "Identity & Lifecycle Commonality": "M",
13 | "Semantic Proximity": "M",
14 | "Shared Owner": "M",
15 | "Structural Volatility": "XS",
16 | "Latency": "M",
17 | "Consistency Criticality": "XS",
18 | "Availability Criticality": "XS",
19 | "Content Volatility": "XS",
20 | "Consistency Constraint": "M",
21 | "Storage Similarity": "XS",
22 | "Predefined Service Constraint": "M",
23 | "Security Contextuality": "M",
24 | "Security Criticality": "XS",
25 | "Security Constraint": "M"
26 | },
27 | "algorithm": "MARKOV_CLUSTERING"
28 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/servicecutter/user-representations-builder-test-10.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestContext {
2 |
3 | Aggregate TestAggregate {
4 | securityZone "ZoneA"
5 |
6 | Entity Customer {
7 | String firstName
8 | }
9 |
10 | Entity Contract {
11 | String contractId
12 | }
13 | }
14 |
15 | Aggregate OwnedAggregate {
16 | securityZone "ZoneB"
17 |
18 | Entity TestEntity {
19 | String attribute1
20 | }
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/servicecutter/user-representations-builder-test-11.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestContext {
2 |
3 | Aggregate TestAggregate1 {
4 | securityAccessGroup "Admin"
5 |
6 | Entity Customer {
7 | String firstName
8 | }
9 | }
10 |
11 | Aggregate TestAggregate2 {
12 | securityAccessGroup "Admin"
13 |
14 | Entity Contract {
15 | String contractId
16 | }
17 | }
18 |
19 | Aggregate TestAggregate3 {
20 | securityAccessGroup "Public"
21 |
22 | Entity TestEntity {
23 | String attribute1
24 | }
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/servicecutter/user-representations-builder-test-2.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestContext {
2 |
3 | Aggregate TestAggregate {
4 | Entity Customer {
5 | String firstName
6 | }
7 |
8 | Entity Contract {
9 | String contractId
10 | }
11 | }
12 |
13 | }
14 |
15 | BoundedContext TestTeam { type TEAM } // ensure that teams are ignored
16 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/servicecutter/user-representations-builder-test-3.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestContext {
2 |
3 | Aggregate TestAggregate {
4 | Entity Customer {
5 | String firstName
6 | }
7 |
8 | Entity Contract {
9 | String contractId
10 | }
11 | }
12 |
13 | Aggregate OwnedAggregate {
14 | owner TeamA
15 |
16 | Entity TestEntity {
17 | String attribute1
18 | }
19 | }
20 |
21 | }
22 |
23 | BoundedContext TeamA {
24 | type TEAM
25 | }
26 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/servicecutter/user-representations-builder-test-3.scl:
--------------------------------------------------------------------------------
1 | Compatibilities {
2 | ContentVolatility {
3 | characteristic Often
4 | "HandlingEvent.handlingType", "HandlingEvent.completionTime", "HandlingEvent.registrationTime", "Location.name", "Delivery.transportStatus"
5 | }
6 | ContentVolatility {
7 | characteristic Rarely
8 | "UnLocode.unLocode", "Location.name"
9 | }
10 | StructuralVolatility {
11 | characteristic Rarely
12 | "UnLocode.unLocode", "Location.name"
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/servicecutter/user-representations-builder-test-4.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestContext {
2 | Aggregate NormalAggregate {
3 | likelihoodForChange NORMAL
4 |
5 | Entity Customer {
6 | String testAttr1
7 | }
8 | }
9 | Aggregate OftenAggregate {
10 | likelihoodForChange OFTEN
11 |
12 | Entity Customer {
13 | String testAttr2
14 | }
15 | }
16 | Aggregate RarelyAggregate {
17 | likelihoodForChange RARELY
18 |
19 | Entity Customer {
20 | String testAttr3
21 | }
22 | }
23 | }
24 |
25 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/servicecutter/user-representations-builder-test-5.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestContext {
2 | Aggregate NormalAggregate {
3 | contentVolatility NORMAL
4 |
5 | Entity Customer {
6 | String testAttr1
7 | }
8 | }
9 | Aggregate OftenAggregate {
10 | contentVolatility OFTEN
11 |
12 | Entity Customer {
13 | String testAttr2
14 | }
15 | }
16 | Aggregate RarelyAggregate {
17 | contentVolatility RARELY
18 |
19 | Entity Customer {
20 | String testAttr3
21 | }
22 | }
23 | }
24 |
25 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/servicecutter/user-representations-builder-test-6.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestContext {
2 | Aggregate NormalAggregate {
3 | availabilityCriticality NORMAL
4 |
5 | Entity Customer {
6 | String testAttr1
7 | }
8 | }
9 | Aggregate OftenAggregate {
10 | availabilityCriticality HIGH
11 |
12 | Entity Customer {
13 | String testAttr2
14 | }
15 | }
16 | Aggregate RarelyAggregate {
17 | availabilityCriticality LOW
18 |
19 | Entity Customer {
20 | String testAttr3
21 | }
22 | }
23 | }
24 |
25 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/servicecutter/user-representations-builder-test-7.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestContext {
2 | Aggregate NormalAggregate {
3 | consistencyCriticality NORMAL
4 |
5 | Entity Customer {
6 | String testAttr1
7 | }
8 | }
9 | Aggregate OftenAggregate {
10 | consistencyCriticality HIGH
11 |
12 | Entity Customer {
13 | String testAttr2
14 | }
15 | }
16 | Aggregate RarelyAggregate {
17 | consistencyCriticality LOW
18 |
19 | Entity Customer {
20 | String testAttr3
21 | }
22 | }
23 | }
24 |
25 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/servicecutter/user-representations-builder-test-8.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestContext {
2 | Aggregate NormalAggregate {
3 | storageSimilarity NORMAL
4 |
5 | Entity Customer {
6 | String testAttr1
7 | }
8 | }
9 | Aggregate OftenAggregate {
10 | storageSimilarity HUGE
11 |
12 | Entity Customer {
13 | String testAttr2
14 | }
15 | }
16 | Aggregate RarelyAggregate {
17 | storageSimilarity TINY
18 |
19 | Entity Customer {
20 | String testAttr3
21 | }
22 | }
23 | }
24 |
25 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/servicecutter/user-representations-builder-test-9.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestContext {
2 | Aggregate NormalAggregate {
3 | securityCriticality NORMAL
4 |
5 | Entity Customer {
6 | String testAttr1
7 | }
8 | }
9 | Aggregate OftenAggregate {
10 | securityCriticality HIGH
11 |
12 | Entity Customer {
13 | String testAttr2
14 | }
15 | }
16 | Aggregate RarelyAggregate {
17 | securityCriticality LOW
18 |
19 | Entity Customer {
20 | String testAttr3
21 | }
22 | }
23 | }
24 |
25 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/actor-test-1.cml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BoundedContext TestContext {
4 | Application {
5 | Service AppService {
6 | void Command1();
7 | }
8 | Flow TestFlow {
9 | event StartEvent triggers operation Command1
10 | operation Command1 [ initiated by "Test User" ] delegates to TestAggregate[STATE1, STATE2 -> STATE3 X STATE4] emits event EndEvent
11 | }
12 | }
13 | Aggregate TestAggregate {
14 | DomainEvent StartEvent
15 | DomainEvent EndEvent
16 |
17 | enum States {
18 | aggregateLifecycle
19 | STATE1, STATE2, STATE3, STATE4
20 | }
21 | }
22 | }
23 |
24 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/aggregate-without-state-transition-test-1.cml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BoundedContext TestContext {
4 | Application {
5 | Service AppService {
6 | void Command1();
7 | }
8 | Flow TestFlow {
9 | event StartEvent triggers operation Command1
10 | operation Command1 delegates to TestAggregate emits event EndEvent
11 | }
12 | }
13 | Aggregate TestAggregate {
14 | DomainEvent StartEvent
15 | DomainEvent EndEvent
16 |
17 | enum States {
18 | aggregateLifecycle
19 | STATE1, STATE2
20 | }
21 | }
22 | }
23 |
24 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/app-layer-name-test-1.cml:
--------------------------------------------------------------------------------
1 |
2 | BoundedContext EmptyContext // ignored
3 |
4 | BoundedContext TestContext {
5 | Application MyAppLayer {
6 | Command StartCommand
7 | Command EndCommand
8 |
9 | Flow TestFlow {
10 | command StartCommand emits event FirstEvent
11 | event FirstEvent triggers command EndCommand
12 | }
13 | }
14 | Aggregate TestAggregate {
15 | DomainEvent FirstEvent
16 | }
17 | }
18 |
19 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/exclusive-gate-command-test-1.cml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BoundedContext TestContext {
4 | Application {
5 | Service AppService {
6 | void StartCommand();
7 | void MiddleCommand1();
8 | void MiddleCommand2();
9 | }
10 | Flow TestFlow {
11 | operation StartCommand emits event FirstEvent
12 | event FirstEvent triggers operation MiddleCommand1 X MiddleCommand2
13 | operation MiddleCommand1 emits event EndEvent
14 | operation MiddleCommand2 emits event EndEvent
15 | }
16 | }
17 | Aggregate TestAggregate {
18 | DomainEvent FirstEvent
19 | DomainEvent EndEvent
20 | }
21 | }
22 |
23 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/exclusive-gate-command-test-2.cml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BoundedContext TestContext {
4 | Application {
5 | Service AppService {
6 | void StartCommand();
7 | void MiddleCommand1();
8 | void MiddleCommand2();
9 | }
10 | Flow TestFlow {
11 | operation StartCommand emits event FirstEvent
12 | event FirstEvent triggers operation MiddleCommand1 O MiddleCommand2
13 | operation MiddleCommand1 emits event EndEvent
14 | operation MiddleCommand2 emits event EndEvent
15 | }
16 | }
17 | Aggregate TestAggregate {
18 | DomainEvent FirstEvent
19 | DomainEvent EndEvent
20 | }
21 | }
22 |
23 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/exclusive-gate-command-test-3.cml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BoundedContext TestContext {
4 | Application {
5 | Command StartCommand
6 | Command MiddleCommand1
7 | Command MiddleCommand2
8 | Flow TestFlow {
9 | command StartCommand emits event FirstEvent
10 | event FirstEvent triggers command MiddleCommand1 O MiddleCommand2
11 | command MiddleCommand1 emits event EndEvent
12 | command MiddleCommand2 emits event EndEvent
13 | }
14 | }
15 | Aggregate TestAggregate {
16 | DomainEvent FirstEvent
17 | DomainEvent EndEvent
18 | }
19 | }
20 |
21 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/exclusive-gate-event-test-1.cml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BoundedContext TestContext {
4 | Application {
5 | Command StartCommand
6 | Command EndCommand
7 |
8 | Flow TestFlow {
9 | command StartCommand emits event FirstEvent X SecondEvent
10 | event FirstEvent triggers command EndCommand
11 | event SecondEvent triggers command EndCommand
12 | }
13 | }
14 | Aggregate TestAggregate {
15 | DomainEvent FirstEvent
16 | DomainEvent SecondEvent
17 | }
18 | }
19 |
20 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/exclusive-gate-event-test-2.cml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BoundedContext TestContext {
4 | Application {
5 | Command StartCommand
6 | Command EndCommand
7 |
8 | Flow TestFlow {
9 | command StartCommand emits event FirstEvent O SecondEvent
10 | event FirstEvent triggers command EndCommand
11 | event SecondEvent triggers command EndCommand
12 | }
13 | }
14 | Aggregate TestAggregate {
15 | DomainEvent FirstEvent
16 | DomainEvent SecondEvent
17 | }
18 | }
19 |
20 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/exclusive-gate-event-test-3.cml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BoundedContext TestContext {
4 | Application {
5 | Service AppService {
6 | void StartCommand();
7 | void EndCommand();
8 | }
9 |
10 | Flow TestFlow {
11 | operation StartCommand emits event FirstEvent X SecondEvent
12 | event FirstEvent triggers operation EndCommand
13 | event SecondEvent triggers operation EndCommand
14 | }
15 | }
16 | Aggregate TestAggregate {
17 | DomainEvent FirstEvent
18 | DomainEvent SecondEvent
19 | }
20 | }
21 |
22 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/loop-test-1.cml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BoundedContext TestContext {
4 | Application {
5 | Service AppService {
6 | void StartCommand();
7 | void MiddleCommand();
8 | }
9 | Flow TestFlow {
10 | operation StartCommand emits event FirstEvent
11 | event FirstEvent triggers operation MiddleCommand
12 | operation MiddleCommand emits event EndEvent
13 | event EndEvent triggers operation StartCommand
14 | }
15 | }
16 | Aggregate TestAggregate {
17 | DomainEvent FirstEvent
18 | DomainEvent EndEvent
19 | }
20 | }
21 |
22 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/loop-test-2.cml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BoundedContext TestContext {
4 | Application {
5 | Service AppService {
6 | void InitialEvent();
7 | void MiddleCommand();
8 | }
9 | Flow TestFlow {
10 | operation InitialEvent emits event FirstEvent
11 | event FirstEvent triggers operation MiddleCommand
12 | operation MiddleCommand emits event EndEvent
13 | event EndEvent triggers operation InitialEvent
14 | }
15 | }
16 | Aggregate TestAggregate {
17 | DomainEvent FirstEvent
18 | DomainEvent EndEvent
19 | }
20 | }
21 |
22 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/loop-test-3.cml:
--------------------------------------------------------------------------------
1 | BoundedContext TestContext {
2 |
3 | Application A1 {
4 | Event DE1
5 | Event DE2
6 | Command C1
7 |
8 | Flow F1 {
9 | event DE1 triggers command C1
10 | command C1 emits event DE2 + DE1
11 | }
12 | }
13 |
14 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/loop-test-4.cml:
--------------------------------------------------------------------------------
1 | BoundedContext InsuranceQuotes {
2 |
3 | Application A1 {
4 | Event DE1
5 | Event DE2
6 | Command C1
7 |
8 | Flow F1 {
9 | event DE1 + DE2 triggers command C1
10 | command C1 emits event DE1
11 | }
12 | }
13 |
14 | }
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/multiple-input-events-test-1.cml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BoundedContext TestContext {
4 | Application {
5 | Service AppService {
6 | void StartCommand1();
7 | void StartCommand2();
8 | void EndCommand();
9 | }
10 | Flow TestFlow {
11 | operation StartCommand1 emits event Event1
12 | operation StartCommand2 emits event Event2
13 | event Event1 + Event2 triggers operation EndCommand
14 | }
15 | }
16 | Aggregate TestAggregate {
17 | DomainEvent Event1
18 | DomainEvent Event2
19 | }
20 | }
21 |
22 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/no-coordination-existing-test-1.cml:
--------------------------------------------------------------------------------
1 |
2 | BoundedContext EmptyContext // ignored
3 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/no-flow-existing-test-1.cml:
--------------------------------------------------------------------------------
1 |
2 | BoundedContext EmptyContext // ignored
3 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/order-of-separate-sequences-test-1.cml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BoundedContext TestContext {
4 | Application {
5 | Service AppService {
6 | void appop1();
7 | void appop2();
8 | }
9 | Flow TestFlow {
10 | operation appop1 emits event DE1
11 | operation appop2 emits event DE2
12 | }
13 | }
14 | Aggregate TestAggregate {
15 | DomainEvent DE1
16 | DomainEvent DE2
17 |
18 | enum States {
19 | aggregateLifecycle
20 | STATE1, STATE2, STATE3, STATE4
21 | }
22 | }
23 | }
24 |
25 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/parallel-fragments-test-1.cml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BoundedContext TestContext {
4 | Application {
5 | Service AppService {
6 | void Before();
7 | void After();
8 | }
9 | Flow TestFlow {
10 | operation Before emits event Parallel1 + Parallel2
11 | event Parallel1 + Parallel2 triggers operation After
12 | }
13 | }
14 | Aggregate TestAggregate {
15 | DomainEvent Parallel1
16 | DomainEvent Parallel2
17 |
18 | enum States {
19 | aggregateLifecycle
20 | STATE1, STATE2, STATE3, STATE4
21 | }
22 | }
23 | }
24 |
25 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/simple-coordination-test-1.cml:
--------------------------------------------------------------------------------
1 |
2 | ContextMap TestMap {
3 | contains ContextA
4 | contains ContextB
5 |
6 | ContextA <- ContextB
7 | }
8 |
9 | BoundedContext ContextA {
10 | Application {
11 | Coordination TestCoordination {
12 | ContextA::ServiceA::operationA;
13 | ContextB::ServiceB::operationB;
14 | }
15 | Service ServiceA {
16 | operationA;
17 | }
18 | }
19 | }
20 |
21 | BoundedContext ContextB {
22 | Application {
23 | Service ServiceB {
24 | operationB;
25 | }
26 | }
27 | }
28 |
29 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/simple-coordination-test-2.cml:
--------------------------------------------------------------------------------
1 |
2 | ContextMap TestMap {
3 | contains ContextA
4 | contains ContextB
5 | contains ContextC
6 |
7 | ContextA <- ContextB
8 | ContextA <- ContextC
9 | }
10 |
11 | BoundedContext ContextA {
12 | Application {
13 | Coordination TestCoordination {
14 | ContextA::ServiceA::operationA1;
15 | ContextB::ServiceB::operationB;
16 | ContextA::ServiceA::operationA2;
17 | ContextC::ServiceC::operationC;
18 | }
19 | Service ServiceA {
20 | operationA1;
21 | operationA2;
22 | }
23 | }
24 | }
25 |
26 | BoundedContext ContextB {
27 | Application {
28 | Service ServiceB {
29 | operationB;
30 | }
31 | }
32 | }
33 |
34 | BoundedContext ContextC {
35 | Application {
36 | Service ServiceC {
37 | operationC;
38 | }
39 | }
40 | }
41 |
42 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/simple-sequence-test-1.cml:
--------------------------------------------------------------------------------
1 |
2 | BoundedContext EmptyContext // ignored
3 |
4 | BoundedContext TestContext {
5 | Application {
6 | Command StartCommand
7 | Command EndCommand
8 |
9 | Flow TestFlow {
10 | command StartCommand emits event FirstEvent
11 | event FirstEvent triggers command EndCommand
12 | }
13 | }
14 | Aggregate TestAggregate {
15 | DomainEvent FirstEvent
16 | }
17 | }
18 |
19 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/simple-sequence-test-2.cml:
--------------------------------------------------------------------------------
1 |
2 | BoundedContext EmptyContext // ignored
3 |
4 | BoundedContext TestContext {
5 | Application {
6 | Command StartCommand
7 | Command EndCommand
8 |
9 | Flow TestFlow {
10 | event FirstEvent triggers command EndCommand
11 | command StartCommand emits event FirstEvent
12 | }
13 | }
14 | Aggregate TestAggregate {
15 | DomainEvent FirstEvent
16 | }
17 | }
18 |
19 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/simple-sequence-with-parallel-step-test-1.cml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BoundedContext TestContext {
4 | Application {
5 | Command StartCommand
6 | Command EndCommand
7 |
8 | Flow TestFlow {
9 | command StartCommand emits event FirstEvent + SecondEvent
10 | event FirstEvent triggers command EndCommand
11 | event SecondEvent triggers command EndCommand
12 | }
13 | }
14 | Aggregate TestAggregate {
15 | DomainEvent FirstEvent
16 | DomainEvent SecondEvent
17 | }
18 | }
19 |
20 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/simple-sequence-with-parallel-step-test-2.cml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BoundedContext TestContext {
4 | Application {
5 | Command FirstCommand
6 | Command SecondCommand
7 |
8 | Flow TestFlow {
9 | event StartEvent triggers command FirstCommand + SecondCommand
10 | command FirstCommand emits event EndEvent
11 | command SecondCommand emits event EndEvent
12 | }
13 | }
14 | Aggregate TestAggregate {
15 | DomainEvent StartEvent
16 | DomainEvent EndEvent
17 | }
18 | }
19 |
20 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/simple-sequence-with-parallel-step-test-3.cml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BoundedContext TestContext {
4 | Application {
5 | Service AppService {
6 | void FirstCommand();
7 | void SecondCommand();
8 | }
9 |
10 | Flow TestFlow {
11 | event StartEvent triggers operation FirstCommand + SecondCommand
12 | operation FirstCommand emits event EndEvent
13 | operation SecondCommand emits event EndEvent
14 | }
15 | }
16 | Aggregate TestAggregate {
17 | DomainEvent StartEvent
18 | DomainEvent EndEvent
19 | }
20 | }
21 |
22 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/state-transition-comment-test-1.cml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BoundedContext TestContext {
4 | Application {
5 | Service AppService {
6 | void Command1();
7 | }
8 | Flow TestFlow {
9 | event StartEvent triggers operation Command1
10 | operation Command1 delegates to TestAggregate[STATE1 -> STATE2] emits event EndEvent
11 | }
12 | }
13 | Aggregate TestAggregate {
14 | DomainEvent StartEvent
15 | DomainEvent EndEvent
16 |
17 | enum States {
18 | aggregateLifecycle
19 | STATE1, STATE2
20 | }
21 | }
22 | }
23 |
24 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/state-transition-comment-test-2.cml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BoundedContext TestContext {
4 | Application {
5 | Service AppService {
6 | void Command1();
7 | }
8 | Flow TestFlow {
9 | event StartEvent triggers operation Command1
10 | operation Command1 delegates to TestAggregate[STATE1, STATE2 -> STATE3 X STATE4] emits event EndEvent
11 | }
12 | }
13 | Aggregate TestAggregate {
14 | DomainEvent StartEvent
15 | DomainEvent EndEvent
16 |
17 | enum States {
18 | aggregateLifecycle
19 | STATE1, STATE2, STATE3, STATE4
20 | }
21 | }
22 | }
23 |
24 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/sketchminer/underlines-test-1.cml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BoundedContext TestContext {
4 | Application {
5 | Service AppService {
6 | void Command_1();
7 | }
8 | Flow TestFlow {
9 | event Start_Event triggers operation Command_1
10 | operation Command_1 delegates to TestAggregate[STATE1 -> STATE2] emits event End_Event
11 | }
12 | }
13 | Aggregate TestAggregate {
14 | DomainEvent Start_Event
15 | DomainEvent End_Event
16 |
17 | enum States {
18 | aggregateLifecycle
19 | STATE1, STATE2
20 | }
21 | }
22 | }
23 |
24 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/standalone/hello-world.cml:
--------------------------------------------------------------------------------
1 | BoundedContext HelloWorldContext
2 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/standalone/simple-context-map.cml:
--------------------------------------------------------------------------------
1 | ContextMap {
2 | contains TestContext1, TestContext2
3 |
4 | TestContext1 -> TestContext2
5 | }
6 |
7 | BoundedContext TestContext1
8 |
9 | BoundedContext TestContext2
10 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/subdomain-resolving/imported-file-test-1.cml:
--------------------------------------------------------------------------------
1 | Domain OtherDomain {
2 |
3 | Subdomain OtherSubdomain {
4 |
5 | Entity OtherEntity
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/subdomain-resolving/imported-file-test-2.cml:
--------------------------------------------------------------------------------
1 | Domain OtherDomain {
2 |
3 | Subdomain OtherSubdomain1 {
4 | Entity OtherEntity1
5 | }
6 |
7 | Subdomain OtherSubdomain2 {
8 | Entity OtherEntity1
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/subdomain-resolving/root-file-with-imports-test-1.cml:
--------------------------------------------------------------------------------
1 | import "./imported-file-test-1.cml"
2 |
3 | Domain DirectDomain {
4 |
5 | Subdomain DirectSubdomain {
6 |
7 | Entity DirectEntity
8 | }
9 | }
10 |
11 | ContextMap testMap {
12 |
13 | }
14 |
15 | BoundedContext context1 implements DirectSubdomain
16 | BoundedContext context2 implements OtherSubdomain {
17 | Aggregate MyAggregate {
18 | Entity MyEntity {
19 | aggregateRoot
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/subdomain-resolving/root-file-with-imports-test-2.cml:
--------------------------------------------------------------------------------
1 | import "./imported-file-test-2.cml"
2 |
3 | Domain DirectDomain {
4 |
5 | Subdomain DirectSubdomain {
6 |
7 | Entity DirectEntity
8 | }
9 | }
10 |
11 | ContextMap testMap {
12 |
13 | }
14 |
15 | BoundedContext context1 implements DirectSubdomain
16 | BoundedContext context2 implements OtherDomain {
17 | Aggregate MyAggregate {
18 | Entity MyEntity {
19 | aggregateRoot
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/integ-test-files/subdomain-resolving/simple-single-file-test.cml:
--------------------------------------------------------------------------------
1 |
2 | Domain TestDomain {
3 |
4 | Subdomain TestSubDomain1 {
5 |
6 | }
7 |
8 | Subdomain TestSubDomain2 {
9 |
10 | }
11 |
12 | }
13 |
14 | Domain OtherDomain {
15 |
16 | Subdomain TestSubDomain3 {
17 |
18 | }
19 |
20 | }
21 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/pom.xml:
--------------------------------------------------------------------------------
1 |
2 | 4.0.0
3 |
4 | org.contextmapper.dsl
5 | org.contextmapper.dsl.parent
6 | 6.12.1-SNAPSHOT
7 |
8 | org.contextmapper.dsl.tests
9 | eclipse-test-plugin
10 |
11 |
12 |
13 |
14 | org.eclipse.xtend
15 | xtend-maven-plugin
16 |
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/src/org/contextmapper/dsl/generators/freemarker/hello.ftl:
--------------------------------------------------------------------------------
1 | Hello ${name}!
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/src/org/contextmapper/dsl/generators/freemarker/hello_error.ftl:
--------------------------------------------------------------------------------
1 | Hello ${this_variable_does_not_exist}!
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/src/org/contextmapper/dsl/generators/plantuml/value_impact_mapping/model/StakeholderTest.java:
--------------------------------------------------------------------------------
1 | package org.contextmapper.dsl.generators.plantuml.value_impact_mapping.model;
2 |
3 | import static org.junit.jupiter.api.Assertions.assertTrue;
4 | import static org.junit.jupiter.api.Assertions.assertFalse;
5 |
6 | import org.junit.jupiter.api.Test;
7 | import org.contextmapper.dsl.generator.plantuml.value_impact_mapping.model.Stakeholder;
8 | import org.contextmapper.dsl.generator.plantuml.value_impact_mapping.model.Value;
9 |
10 | class StakeholderTest {
11 |
12 | @Test
13 | void ensureStakeholdersWithSameNameAreEqual() {
14 | Stakeholder stakeholder1 = new Stakeholder("User", "desc1");
15 | Stakeholder stakeholder2 = new Stakeholder("User", "desc2");
16 |
17 | assertTrue(stakeholder1.equals(stakeholder2));
18 | assertTrue(stakeholder1.equals(stakeholder1));
19 | assertFalse(stakeholder1.equals(null));
20 | assertFalse(stakeholder1.equals(new Value("just a test")));
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.tests/src/org/contextmapper/dsl/quickfixes/AbstractQuickFixTest.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2020 The Context Mapper Project Team
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 | package org.contextmapper.dsl.quickfixes;
17 |
18 | import org.contextmapper.dsl.AbstractCMLInputFileTest;
19 |
20 | public class AbstractQuickFixTest extends AbstractCMLInputFileTest {
21 |
22 | @Override
23 | protected String getTestFileDirectory() {
24 | return "/integ-test-files/quickfixes/";
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ui.tests/.classpath:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ui.tests/META-INF/MANIFEST.MF:
--------------------------------------------------------------------------------
1 | Manifest-Version: 1.0
2 | Automatic-Module-Name: org.contextmapper.dsl.ui.tests
3 | Bundle-ManifestVersion: 2
4 | Bundle-Name: org.contextmapper.dsl.ui.tests
5 | Bundle-Vendor: Context Mapper
6 | Bundle-Version: 6.12.1.qualifier
7 | Bundle-SymbolicName: org.contextmapper.dsl.ui.tests; singleton:=true
8 | Bundle-ActivationPolicy: lazy
9 | Require-Bundle: org.contextmapper.dsl.ui,
10 | org.eclipse.xtext.testing,
11 | org.eclipse.xtext.ui.testing,
12 | org.eclipse.xtext.xbase.testing,
13 | org.eclipse.xtext.xbase.ui.testing,
14 | org.eclipse.core.runtime,
15 | org.eclipse.ui.workbench;resolution:=optional
16 | Import-Package: org.junit.jupiter.api;version="[5.1.0,6.0.0)",
17 | org.junit.jupiter.api.extension;version="[5.1.0,6.0.0)"
18 | Bundle-RequiredExecutionEnvironment: JavaSE-11
19 | Export-Package: org.contextmapper.dsl.ui.tests;x-internal=true,
20 | org.contextmapper.tactic.dsl.ui.tests;x-internal=true,
21 | org.contextmapper.servicecutter.dsl.ui.tests;x-internal=true
22 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ui.tests/build.properties:
--------------------------------------------------------------------------------
1 | source.. = src/,\
2 | src-gen/,\
3 | xtend-gen/
4 | bin.includes = .,\
5 | META-INF/
6 | bin.excludes = **/*.xtend
7 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ui.tests/pom.xml:
--------------------------------------------------------------------------------
1 |
2 | 4.0.0
3 |
4 | org.contextmapper.dsl
5 | org.contextmapper.dsl.parent
6 | 6.12.1-SNAPSHOT
7 |
8 | org.contextmapper.dsl.ui.tests
9 | eclipse-test-plugin
10 |
11 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ui/.classpath:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ui/about.ini:
--------------------------------------------------------------------------------
1 | aboutText=Context Mapper DSL Editor\n\
2 | \n\
3 | (c) Copyright 2020 Context Mapper Project Team, including the original author or authors.\n\
4 | \n\
5 | Visit https://contextmapper.org/
6 |
7 | featureImage=icons/cml-32x32.png
8 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ui/build.properties:
--------------------------------------------------------------------------------
1 | source.. = src/,\
2 | src-gen/,\
3 | xtend-gen/
4 | bin.includes = .,\
5 | META-INF/,\
6 | icons/,\
7 | samples/,\
8 | plugin.xml,\
9 | about.ini
10 | bin.excludes = **/*.xtend
11 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ui/icons/cml-32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ContextMapper/context-mapper-dsl/981d5beaea768787e5677a0e4091458264302d0b/org.contextmapper.dsl.ui/icons/cml-32x32.png
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ui/icons/cml-dialog-image.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ContextMapper/context-mapper-dsl/981d5beaea768787e5677a0e4091458264302d0b/org.contextmapper.dsl.ui/icons/cml-dialog-image.png
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ui/icons/cml.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ContextMapper/context-mapper-dsl/981d5beaea768787e5677a0e4091458264302d0b/org.contextmapper.dsl.ui/icons/cml.png
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ui/pom.xml:
--------------------------------------------------------------------------------
1 |
2 | 4.0.0
3 |
4 | org.contextmapper.dsl
5 | org.contextmapper.dsl.parent
6 | 6.12.1-SNAPSHOT
7 |
8 | org.contextmapper.dsl.ui
9 | eclipse-plugin
10 |
11 |
12 |
13 |
14 | org.eclipse.xtend
15 | xtend-maven-plugin
16 |
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ui/samples/freemarker/csv-files/stakeholders.csv.ftl:
--------------------------------------------------------------------------------
1 | Context,Stakeholder Group,Stakeholder,description,influence,interest
2 | <#list stakeholders as stakeholderContainer>
3 | <#assign stakeholderGroups = stakeholderContainer.stakeholders?filter(s -> instanceOf(s, StakeholderGroup))>
4 | <#assign singleStakeholders = stakeholderContainer.stakeholders?filter(s -> instanceOf(s, Stakeholder))>
5 | <#if stakeholderContainer.contexts?has_content><#assign contextDescription = stakeholderContainer.contexts?map(c -> c.name)?join("; ")><#else><#assign contextDescription = "none">#if>
6 | <#list stakeholderGroups as sg>
7 | <#list sg.stakeholders as stakeholder>
8 | ${contextDescription},${sg.name},${stakeholder.name},${stakeholder.description!""},${stakeholder.influence!""},${stakeholder.interest!""}
9 | #list>
10 | #list>
11 | <#list singleStakeholders as stakeholder>
12 | ${contextDescription},none,${stakeholder.name},${stakeholder.description!""},${stakeholder.influence!""},${stakeholder.interest!""}
13 | #list>
14 | #list>
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ui/samples/freemarker/markdown-templates/bounded-contexts/bounded-context-list-simple.ftl:
--------------------------------------------------------------------------------
1 | The following [bounded context](https://martinfowler.com/bliki/BoundedContext.html)s are defined:<#lt>
2 |
3 | <#list filterStructuralBoundedContexts(boundedContexts) as bc>
4 | * *${bc.name}*: ${bc.domainVisionStatement!"[domain vision of the context not defined]"}<#lt>
5 | #list>
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ui/samples/freemarker/markdown-templates/common/header.md.ftl:
--------------------------------------------------------------------------------
1 | ---
2 | title: Report generated from '${fileName}'
3 | project: ${projectName!"undefined"}
4 | author: ${userName!"undefined"}
5 | date: ${timeStamp!"undefined"}, Context Mapper version ${contextMapperVersion!"undefined"}
6 | copyright: The authors, 2020-2023. All rights reserved.
7 | ---
8 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ui/samples/freemarker/markdown-templates/states/state_transition.ftl:
--------------------------------------------------------------------------------
1 | <#--
2 | Makro that prints out a state transition.
3 | -->
4 | <#macro renderStateTransition transition>
5 | <#if instanceOf(transition.target, ExclusiveAlternativeStateTransitionTarget)>
6 | <#assign sym = " X ">
7 | <#else>
8 | <#assign sym = "">
9 | #if>
10 | ${transition.from?map(f -> f.name)?join(", ")} -> ${transition.target.to?map(t -> t.value.name)?join(sym)}#macro>
11 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl.ui/src/org/contextmapper/dsl/ui/handler/wizard/pages/ContextMapperWizardPage.java:
--------------------------------------------------------------------------------
1 | package org.contextmapper.dsl.ui.handler.wizard.pages;
2 |
3 | import org.contextmapper.dsl.ui.internal.DslActivator;
4 | import org.eclipse.jface.wizard.WizardPage;
5 | import org.eclipse.swt.graphics.Image;
6 | import org.eclipse.swt.program.Program;
7 |
8 | public abstract class ContextMapperWizardPage extends WizardPage {
9 |
10 | public ContextMapperWizardPage(String title) {
11 | super(title);
12 | }
13 |
14 | @Override
15 | public Image getImage() {
16 | return DslActivator.imageDescriptorFromPlugin(DslActivator.PLUGIN_ID, "icons/cml-dialog-image.png").createImage();
17 | }
18 |
19 | @Override
20 | public void performHelp() {
21 | Program.launch("https://contextmapper.org/docs/architectural-refactorings/");
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl/.classpath:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl/build.properties:
--------------------------------------------------------------------------------
1 | source.. = src/,\
2 | src-gen/,\
3 | xtend-gen/
4 | bin.includes = model/generated/,\
5 | .,\
6 | META-INF/,\
7 | plugin.xml
8 | bin.excludes = **/*.mwe2,\
9 | **/*.xtend
10 | additional.bundles = org.eclipse.xtext.xbase,\
11 | org.eclipse.xtext.common.types,\
12 | org.eclipse.xtext.xtext.generator,\
13 | org.eclipse.emf.codegen.ecore,\
14 | org.eclipse.emf.mwe.utils,\
15 | org.eclipse.emf.mwe2.launch,\
16 | org.eclipse.emf.mwe2.lib,\
17 | org.objectweb.asm,\
18 | org.apache.commons.logging,\
19 | org.apache.log4j,\
20 | com.ibm.icu
21 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl/src/org/contextmapper/dsl/generator/exception/NoContextMapDefinedException.java:
--------------------------------------------------------------------------------
1 | package org.contextmapper.dsl.generator.exception;
2 |
3 | public class NoContextMapDefinedException extends GeneratorInputException {
4 |
5 | public NoContextMapDefinedException() {
6 | super("No Context Map defined in this model. Please select a file which contains a context map.");
7 | }
8 |
9 | }
10 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl/src/org/contextmapper/dsl/generator/exception/NoContextMappingModelDefinedException.java:
--------------------------------------------------------------------------------
1 | package org.contextmapper.dsl.generator.exception;
2 |
3 | public class NoContextMappingModelDefinedException extends GeneratorInputException {
4 |
5 | public NoContextMappingModelDefinedException() {
6 | super("No CML model defined in this resource. Please select a file which contains a CML model.");
7 | }
8 |
9 | }
10 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl/src/org/contextmapper/dsl/generator/plantuml/Multiplicity.java:
--------------------------------------------------------------------------------
1 | package org.contextmapper.dsl.generator.plantuml;
2 |
3 | public class Multiplicity {
4 | private int min;
5 | private int max;
6 |
7 | public static int STAR = Integer.MAX_VALUE;
8 |
9 | public Multiplicity(int min, int max) {
10 | this.min = min;
11 | this.max = max;
12 | }
13 |
14 | public int getMin() {
15 | return min;
16 | }
17 |
18 | public int getMax() {
19 | return max;
20 | }
21 |
22 | public Multiplicity withMin(int min)
23 | {
24 | return new Multiplicity(min, this.max);
25 | }
26 |
27 | public Multiplicity withMax(int max)
28 | {
29 | return new Multiplicity(this.min, max);
30 | }
31 |
32 | public Multiplicity clone() {
33 | return new Multiplicity(this.min, this.max);
34 | }
35 |
36 | public boolean isConstant(int i) {
37 | return min == i && max == i;
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl/src/org/contextmapper/dsl/generator/plantuml/PlantUMLDiagramCreator.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2018 The Context Mapper Project Team
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 | package org.contextmapper.dsl.generator.plantuml;
17 |
18 | import org.eclipse.emf.ecore.EObject;
19 |
20 | public interface PlantUMLDiagramCreator {
21 |
22 | public String createDiagram(T modelObject);
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl/src/org/contextmapper/dsl/generator/sketchminer/model/TaskType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2020 The Context Mapper Project Team
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 | package org.contextmapper.dsl.generator.sketchminer.model;
17 |
18 | public enum TaskType {
19 |
20 | COMMAND, EVENT
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl/src/org/contextmapper/dsl/refactoring/SuspendPartnershipMode.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2019-2020 The Context Mapper Project Team
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 | package org.contextmapper.dsl.refactoring;
17 |
18 | public enum SuspendPartnershipMode {
19 |
20 | MERGE_BOUNDED_CONTEXTS, EXTRACT_NEW_BOUNDED_CONTEXT, REPLACE_RELATIONSHIP_WITH_UPSTREAM_DOWNSTREAM
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl/src/org/contextmapper/dsl/refactoring/exception/RefactoringInputException.java:
--------------------------------------------------------------------------------
1 | package org.contextmapper.dsl.refactoring.exception;
2 |
3 | import org.contextmapper.dsl.exception.ContextMapperApplicationException;
4 |
5 | public class RefactoringInputException extends ContextMapperApplicationException {
6 |
7 | public RefactoringInputException(String message) {
8 | super(message);
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/org.contextmapper.dsl/src/org/contextmapper/servicecutter/dsl/ServiceCutterConfigurationDSLRuntimeModule.xtend:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2018 The Context Mapper Project Team
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 | package org.contextmapper.servicecutter.dsl
17 |
18 |
19 | /**
20 | * Use this class to register components to be used at runtime / without the Equinox extension registry.
21 | */
22 | class ServiceCutterConfigurationDSLRuntimeModule extends AbstractServiceCutterConfigurationDSLRuntimeModule {
23 | }
24 |
--------------------------------------------------------------------------------
/settings.gradle:
--------------------------------------------------------------------------------
1 | include 'context-mapper-dsl'
2 | include 'context-mapper-dsl-tests'
3 | include 'context-mapper-lsp'
4 | include 'context-mapper-lsp-tests'
5 |
6 | project(":context-mapper-dsl").projectDir = file("org.contextmapper.dsl")
7 | project(":context-mapper-dsl-tests").projectDir = file("org.contextmapper.dsl.tests")
8 | project(":context-mapper-lsp").projectDir = file("org.contextmapper.dsl.ide")
9 | project(":context-mapper-lsp-tests").projectDir = file("org.contextmapper.dsl.ide.tests")
10 |
--------------------------------------------------------------------------------