org.eclipse.emf.emfstore.internal.server.model.versioning.operations.impl
Class CompositeOperationImpl

java.lang.Object
  extended by org.eclipse.emf.common.notify.impl.BasicNotifierImpl
      extended by org.eclipse.emf.ecore.impl.BasicEObjectImpl
          extended by org.eclipse.emf.ecore.impl.EObjectImpl
              extended by org.eclipse.emf.emfstore.internal.common.model.impl.IdentifiableElementImpl
                  extended by org.eclipse.emf.emfstore.internal.server.model.versioning.operations.impl.AbstractOperationImpl
                      extended by org.eclipse.emf.emfstore.internal.server.model.versioning.operations.impl.CompositeOperationImpl
All Implemented Interfaces:
org.eclipse.emf.common.notify.Notifier, org.eclipse.emf.ecore.EObject, org.eclipse.emf.ecore.InternalEObject, APIDelegate<ESOperation>, IdentifiableElement, AbstractOperation, CompositeOperation
Direct Known Subclasses:
SemanticCompositeOperationImpl

public class CompositeOperationImpl
extends AbstractOperationImpl
implements CompositeOperation

An implementation of the model object ' Composite Operation'.

The following features are implemented:


Nested Class Summary
 
Nested classes/interfaces inherited from class org.eclipse.emf.common.notify.impl.BasicNotifierImpl
org.eclipse.emf.common.notify.impl.BasicNotifierImpl.EAdapterList<E extends Object & org.eclipse.emf.common.notify.Adapter>, org.eclipse.emf.common.notify.impl.BasicNotifierImpl.EObservableAdapterList
 
Nested classes/interfaces inherited from interface org.eclipse.emf.ecore.InternalEObject
org.eclipse.emf.ecore.InternalEObject.EStore
 
Field Summary
 
Fields inherited from class org.eclipse.emf.ecore.impl.EObjectImpl
ELAST_EOBJECT_FLAG
 
Fields inherited from interface org.eclipse.emf.ecore.InternalEObject
EOPPOSITE_FEATURE_BASE
 
Method Summary
 void apply(IdEObjectCollection project)
          Apply an operation to the given project if it can be applied.
 AbstractOperation basicGetMainOperation()
           
 void cannonize()
          Remove all operations from the composite that are masked by later operations in the same composite.
 Object eGet(int featureID, boolean resolve, boolean coreType)
           
 org.eclipse.emf.common.notify.NotificationChain eInverseRemove(org.eclipse.emf.ecore.InternalEObject otherEnd, int featureID, org.eclipse.emf.common.notify.NotificationChain msgs)
           
 boolean eIsSet(int featureID)
           
 void eSet(int featureID, Object newValue)
           
 void eUnset(int featureID)
           
 String getCompositeDescription()
           
 String getCompositeName()
           
 List<AbstractOperation> getLeafOperations()
          Get all operations that are a leaf operation.
 AbstractOperation getMainOperation()
           
 Set<ModelElementId> getOtherInvolvedModelElements()
          Get all model elements that are involved in the operation other than the element the operation is directly operating on.
 org.eclipse.emf.common.util.EList<AbstractOperation> getSubOperations()
          Returns all sub operations.
 boolean isReversed()
           
 AbstractOperation reverse()
          Reverse the operation.
 void setCompositeDescription(String newCompositeDescription)
           
 void setCompositeName(String newCompositeName)
           
 void setMainOperation(AbstractOperation newMainOperation)
           
 void setReversed(boolean newReversed)
           
 String toString()
           
 
Methods inherited from class org.eclipse.emf.emfstore.internal.server.model.versioning.operations.impl.AbstractOperationImpl
basicGetModelElementId, basicSetModelElementId, createAPI, getAllInvolvedModelElements, getClientDate, getModelElementId, getOperationId, isAccepted, setAccepted, setClientDate, setModelElementId, toAPI
 
Methods inherited from class org.eclipse.emf.emfstore.internal.common.model.impl.IdentifiableElementImpl
getIdentifier, setIdentifier
 
Methods inherited from class org.eclipse.emf.ecore.impl.EObjectImpl
eAdapters, eClass, eContainerFeatureID, eDeliver, eInternalContainer, eInvoke, eIsProxy, eSetClass, eSetDeliver, eSetProxyURI
 
Methods inherited from class org.eclipse.emf.ecore.impl.BasicEObjectImpl
eAllContents, eBaseStructuralFeatureID, eBasicRemoveFromContainer, eBasicRemoveFromContainerFeature, eBasicSetContainer, eContainer, eContainingFeature, eContainmentFeature, eContains, eContents, eCrossReferences, eDerivedOperationID, eDerivedOperationID, eDerivedStructuralFeatureID, eDerivedStructuralFeatureID, eDirectResource, eDynamicBasicRemoveFromContainer, eDynamicGet, eDynamicGet, eDynamicInverseAdd, eDynamicInverseRemove, eDynamicInvoke, eDynamicIsSet, eDynamicIsSet, eDynamicSet, eDynamicSet, eDynamicUnset, eDynamicUnset, eGet, eGet, eGet, eInternalResource, eInverseAdd, eInverseAdd, eInverseRemove, eInvoke, eIsSet, eObjectForURIFragmentSegment, eOpenGet, eOpenIsSet, eOpenSet, eOpenUnset, eProxyURI, eResolveProxy, eResource, eSet, eSetResource, eSetStore, eSetting, eStore, eUnset, eURIFragmentSegment, eVirtualGet, eVirtualGet, eVirtualIsSet, eVirtualSet, eVirtualUnset
 
Methods inherited from class org.eclipse.emf.common.notify.impl.BasicNotifierImpl
eNotificationRequired, eNotify
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.eclipse.emf.emfstore.internal.server.model.versioning.operations.AbstractOperation
getAllInvolvedModelElements, getClientDate, getModelElementId, getOperationId, isAccepted, setAccepted, setClientDate, setModelElementId
 
Methods inherited from interface org.eclipse.emf.emfstore.internal.common.model.IdentifiableElement
getIdentifier, setIdentifier
 
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset
 
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
 
Methods inherited from interface org.eclipse.emf.emfstore.internal.common.api.APIDelegate
createAPI, toAPI
 
Methods inherited from interface org.eclipse.emf.ecore.InternalEObject
eNotificationRequired
 

Method Detail

getOtherInvolvedModelElements

public Set<ModelElementId> getOtherInvolvedModelElements()
Get all model elements that are involved in the operation other than the element the operation is directly operating on.

Specified by:
getOtherInvolvedModelElements in interface AbstractOperation
Overrides:
getOtherInvolvedModelElements in class AbstractOperationImpl
Returns:
a set of model element ids
See Also:
AbstractOperationImpl.getOtherInvolvedModelElements()

getSubOperations

public org.eclipse.emf.common.util.EList<AbstractOperation> getSubOperations()
Returns all sub operations. Will not enforce uniqueness. Will not enforce uniqueness, do NOT add the same element twice!

Specified by:
getSubOperations in interface CompositeOperation
Returns:
a list of sub operation
See Also:
OperationsPackage.getCompositeOperation_SubOperations()

getMainOperation

public AbstractOperation getMainOperation()

Specified by:
getMainOperation in interface CompositeOperation
Returns:
the value of the 'Main Operation' reference.
See Also:
CompositeOperation.setMainOperation(AbstractOperation), OperationsPackage.getCompositeOperation_MainOperation()

basicGetMainOperation

public AbstractOperation basicGetMainOperation()


setMainOperation

public void setMainOperation(AbstractOperation newMainOperation)

Specified by:
setMainOperation in interface CompositeOperation
Parameters:
newMainOperation - the new value of the 'Main Operation' reference.
See Also:
CompositeOperation.getMainOperation()

getCompositeName

public String getCompositeName()

Specified by:
getCompositeName in interface CompositeOperation
Returns:
the value of the 'Composite Name' attribute.
See Also:
CompositeOperation.setCompositeName(String), OperationsPackage.getCompositeOperation_CompositeName()

setCompositeName

public void setCompositeName(String newCompositeName)

Specified by:
setCompositeName in interface CompositeOperation
Parameters:
newCompositeName - the new value of the 'Composite Name' attribute.
See Also:
CompositeOperation.getCompositeName()

getCompositeDescription

public String getCompositeDescription()

Specified by:
getCompositeDescription in interface CompositeOperation
Returns:
the value of the 'Composite Description' attribute.
See Also:
CompositeOperation.setCompositeDescription(String), OperationsPackage.getCompositeOperation_CompositeDescription()

setCompositeDescription

public void setCompositeDescription(String newCompositeDescription)

Specified by:
setCompositeDescription in interface CompositeOperation
Parameters:
newCompositeDescription - the new value of the 'Composite Description' attribute.
See Also:
CompositeOperation.getCompositeDescription()

isReversed

public boolean isReversed()

Specified by:
isReversed in interface CompositeOperation
Returns:
the value of the 'Reversed' attribute.
See Also:
CompositeOperation.setReversed(boolean), OperationsPackage.getCompositeOperation_Reversed()

setReversed

public void setReversed(boolean newReversed)

Specified by:
setReversed in interface CompositeOperation
Parameters:
newReversed - the new value of the 'Reversed' attribute.
See Also:
CompositeOperation.isReversed()

cannonize

public void cannonize()
Remove all operations from the composite that are masked by later operations in the same composite.

Specified by:
cannonize in interface CompositeOperation

eInverseRemove

public org.eclipse.emf.common.notify.NotificationChain eInverseRemove(org.eclipse.emf.ecore.InternalEObject otherEnd,
                                                                      int featureID,
                                                                      org.eclipse.emf.common.notify.NotificationChain msgs)

Overrides:
eInverseRemove in class AbstractOperationImpl

eGet

public Object eGet(int featureID,
                   boolean resolve,
                   boolean coreType)

Specified by:
eGet in interface org.eclipse.emf.ecore.InternalEObject
Overrides:
eGet in class AbstractOperationImpl

eSet

public void eSet(int featureID,
                 Object newValue)

Specified by:
eSet in interface org.eclipse.emf.ecore.InternalEObject
Overrides:
eSet in class AbstractOperationImpl

eUnset

public void eUnset(int featureID)

Specified by:
eUnset in interface org.eclipse.emf.ecore.InternalEObject
Overrides:
eUnset in class AbstractOperationImpl

eIsSet

public boolean eIsSet(int featureID)

Specified by:
eIsSet in interface org.eclipse.emf.ecore.InternalEObject
Overrides:
eIsSet in class AbstractOperationImpl

toString

public String toString()

Overrides:
toString in class AbstractOperationImpl

apply

public void apply(IdEObjectCollection project)
Description copied from interface: AbstractOperation
Apply an operation to the given project if it can be applied. Apply will silently fail if the operation can not be applied because the given project can not support the operation (e.g. element is missing). To make sure an operation can be applied you can use canApply().

Specified by:
apply in interface AbstractOperation
Parameters:
project - the project

reverse

public AbstractOperation reverse()
Description copied from class: AbstractOperationImpl
Reverse the operation. The reversed operation is build such that applying this operation and then the reversed operation to a project does not change the project in total effect.

Specified by:
reverse in interface AbstractOperation
Specified by:
reverse in class AbstractOperationImpl
Returns:
the reversed operation

getLeafOperations

public List<AbstractOperation> getLeafOperations()
Get all operations that are a leaf operation. In case this operation is not containing any other operations it will return itself.

Specified by:
getLeafOperations in interface AbstractOperation
Returns:
a list of leaf operations
See Also:
AbstractOperation.getLeafOperations()


Copyright © 2015. All Rights Reserved.