Class AbstractRefactoring
java.lang.Object
org.contextmapper.dsl.refactoring.AbstractRefactoring
- All Implemented Interfaces:
SemanticCMLRefactoring
- Direct Known Subclasses:
AbstractExtractSymmetricRelationshipRefactoring
,AbstractToggleSymmetricRelationshipRefactoring
,ChangePartnershipToUpstreamDownstreamRefactoring
,DeriveBoundedContextFromSubdomains
,DeriveFrontendAndBackendSystemsFromFeature
,DeriveSubdomainFromUserRequirements
,ExtractAggregatesByCohesion
,ExtractAggregatesByVolatility
,MergeAggregatesRefactoring
,MergeBoundedContextsRefactoring
,SplitAggregateByEntitiesRefactoring
,SplitBoundedContextByAggregateAttribute
,SplitSystemIntoSubsystems
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Set<CMLResource>
protected org.eclipse.emf.ecore.resource.ResourceSet
protected Set<CMLResource>
protected ContextMappingModel
protected CMLResource
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected <T> void
addElementsToEList
(org.eclipse.emf.common.util.EList<T> list, List<T> elementsToAdd) protected <T> void
addElementToEList
(org.eclipse.emf.common.util.EList<T> list, T elementToAdd) protected abstract void
protected Set<BoundedContext>
protected Set<ContextMap>
protected Set<UserRequirement>
protected CMLResource
void
persistChanges
(org.eclipse.xtext.serializer.ISerializer serializer) Can be called after the 'refactor' method, in case one wants to save/persist the changes to the CML files.void
refactor
(CMLResource resource) Applies the refactoring to the CML model in the given resource.void
refactor
(CMLResource resource, org.eclipse.emf.ecore.resource.ResourceSet consistencyCheckResources) Applies the refactoring to the CML model in the given resource.protected <T> void
removeElementFromEList
(org.eclipse.emf.common.util.EList<T> list, T object)
-
Field Details
-
model
-
rootResource
-
importedResources
-
consistencyCheckResources
protected org.eclipse.emf.ecore.resource.ResourceSet consistencyCheckResources -
additionalResourcesToCheck
-
-
Constructor Details
-
AbstractRefactoring
public AbstractRefactoring()
-
-
Method Details
-
refactor
Description copied from interface:SemanticCMLRefactoring
Applies the refactoring to the CML model in the given resource.- Specified by:
refactor
in interfaceSemanticCMLRefactoring
- Parameters:
resource
- the resource with the CML model that shall be refactored
-
refactor
public void refactor(CMLResource resource, org.eclipse.emf.ecore.resource.ResourceSet consistencyCheckResources) Description copied from interface:SemanticCMLRefactoring
Applies the refactoring to the CML model in the given resource. Additionally ensures consistency in Context Maps in all resources of the additional ResourceSet.- Specified by:
refactor
in interfaceSemanticCMLRefactoring
- Parameters:
resource
- the resource with the CML model that shall be refactored.consistencyCheckResources
- the resources that contain Context Maps which potentially have to be corrected after refactoring. For example: if you have other models in your workspace that have referenes to the refactored one. If you provide them here as s ResourceSet, the refactoring can correct the references.
-
persistChanges
public void persistChanges(org.eclipse.xtext.serializer.ISerializer serializer) Description copied from interface:SemanticCMLRefactoring
Can be called after the 'refactor' method, in case one wants to save/persist the changes to the CML files.- Specified by:
persistChanges
in interfaceSemanticCMLRefactoring
- Parameters:
serializer
- the serializer that will be used to check whether the model can be persisted.
-
doRefactor
protected abstract void doRefactor() -
getAllBoundedContexts
-
getAllContextMaps
-
getAllDomains
-
getAllUserRequirements
-
getResource
-
addElementsToEList
protected <T> void addElementsToEList(org.eclipse.emf.common.util.EList<T> list, List<T> elementsToAdd) -
addElementToEList
protected <T> void addElementToEList(org.eclipse.emf.common.util.EList<T> list, T elementToAdd) -
removeElementFromEList
protected <T> void removeElementFromEList(org.eclipse.emf.common.util.EList<T> list, T object)
-