diff options
Diffstat (limited to 'extraplugins/eastadl/org.eclipse.papyrus.eastadl/src/org/eclipse/papyrus/eastadl/timing/impl/TimingImpl.java')
-rw-r--r-- | extraplugins/eastadl/org.eclipse.papyrus.eastadl/src/org/eclipse/papyrus/eastadl/timing/impl/TimingImpl.java | 206 |
1 files changed, 89 insertions, 117 deletions
diff --git a/extraplugins/eastadl/org.eclipse.papyrus.eastadl/src/org/eclipse/papyrus/eastadl/timing/impl/TimingImpl.java b/extraplugins/eastadl/org.eclipse.papyrus.eastadl/src/org/eclipse/papyrus/eastadl/timing/impl/TimingImpl.java index e580fc61bbe..4911e0ad746 100644 --- a/extraplugins/eastadl/org.eclipse.papyrus.eastadl/src/org/eclipse/papyrus/eastadl/timing/impl/TimingImpl.java +++ b/extraplugins/eastadl/org.eclipse.papyrus.eastadl/src/org/eclipse/papyrus/eastadl/timing/impl/TimingImpl.java @@ -15,19 +15,22 @@ *****************************************************************************/ package org.eclipse.papyrus.eastadl.timing.impl; -import java.util.Collection; +import java.util.Iterator; import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.util.BasicEList; import org.eclipse.emf.common.util.EList; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.InternalEObject; import org.eclipse.emf.ecore.impl.ENotificationImpl; -import org.eclipse.emf.ecore.util.EObjectResolvingEList; +import org.eclipse.emf.ecore.util.BasicInternalEList; import org.eclipse.papyrus.eastadl.infrastructure.elements.impl.ContextImpl; import org.eclipse.papyrus.eastadl.timing.Timing; import org.eclipse.papyrus.eastadl.timing.TimingConstraint; import org.eclipse.papyrus.eastadl.timing.TimingDescription; import org.eclipse.papyrus.eastadl.timing.TimingPackage; +import org.eclipse.uml2.uml.Element; +import org.eclipse.uml2.uml.util.UMLUtil; /** @@ -36,42 +39,21 @@ import org.eclipse.papyrus.eastadl.timing.TimingPackage; * <p> * The following features are implemented: * <ul> - * <li>{@link org.eclipse.papyrus.eastadl.timing.impl.TimingImpl#getTimingConstraint <em>Timing Constraint</em>}</li> - * <li>{@link org.eclipse.papyrus.eastadl.timing.impl.TimingImpl#getTimingDescription <em>Timing Description</em>}</li> - * <li>{@link org.eclipse.papyrus.eastadl.timing.impl.TimingImpl#getBase_Class <em>Base Class</em>}</li> - * <li>{@link org.eclipse.papyrus.eastadl.timing.impl.TimingImpl#getBase_Package <em>Base Package</em>}</li> + * <li>{@link org.eclipse.papyrus.eastadl.timing.impl.TimingImpl#getConstraint <em>Constraint</em>}</li> + * <li>{@link org.eclipse.papyrus.eastadl.timing.impl.TimingImpl#getDescription <em>Description</em>}</li> + * <li>{@link org.eclipse.papyrus.eastadl.timing.impl.TimingImpl#getBase_Class <em>Base Class</em>}</li> + * <li>{@link org.eclipse.papyrus.eastadl.timing.impl.TimingImpl#getBase_Package <em>Base Package</em>}</li> * </ul> * </p> - * + * * @generated */ public class TimingImpl extends ContextImpl implements Timing { /** - * The cached value of the '{@link #getTimingConstraint() <em>Timing Constraint</em>}' reference list. - * <!-- begin-user-doc --> <!-- end-user-doc --> - * - * @see #getTimingConstraint() - * @generated - * @ordered - */ - protected EList<TimingConstraint> timingConstraint; - - /** - * The cached value of the '{@link #getTimingDescription() <em>Timing Description</em>}' reference list. - * <!-- begin-user-doc --> <!-- end-user-doc --> - * - * @see #getTimingDescription() - * @generated - * @ordered - */ - protected EList<TimingDescription> timingDescription; - - /** * The cached value of the '{@link #getBase_Class() <em>Base Class</em>}' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * * @see #getBase_Class() * @generated * @ordered @@ -82,7 +64,6 @@ public class TimingImpl extends ContextImpl implements Timing { * The cached value of the '{@link #getBase_Package() <em>Base Package</em>}' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * * @see #getBase_Package() * @generated * @ordered @@ -91,7 +72,6 @@ public class TimingImpl extends ContextImpl implements Timing { /** * <!-- begin-user-doc --> <!-- end-user-doc --> - * * @generated */ protected TimingImpl() { @@ -100,78 +80,63 @@ public class TimingImpl extends ContextImpl implements Timing { /** * <!-- begin-user-doc --> <!-- end-user-doc --> - * * @generated */ @Override public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch(featureID) { - case TimingPackage.TIMING__TIMING_CONSTRAINT: - return getTimingConstraint(); - case TimingPackage.TIMING__TIMING_DESCRIPTION: - return getTimingDescription(); - case TimingPackage.TIMING__BASE_CLASS: - if(resolve) - return getBase_Class(); - return basicGetBase_Class(); - case TimingPackage.TIMING__BASE_PACKAGE: - if(resolve) - return getBase_Package(); - return basicGetBase_Package(); + switch (featureID) { + case TimingPackage.TIMING__CONSTRAINT: + return getConstraint(); + case TimingPackage.TIMING__DESCRIPTION: + return getDescription(); + case TimingPackage.TIMING__BASE_CLASS: + if (resolve) return getBase_Class(); + return basicGetBase_Class(); + case TimingPackage.TIMING__BASE_PACKAGE: + if (resolve) return getBase_Package(); + return basicGetBase_Package(); } return super.eGet(featureID, resolve, coreType); } /** * <!-- begin-user-doc --> <!-- end-user-doc --> - * * @generated */ @Override public boolean eIsSet(int featureID) { - switch(featureID) { - case TimingPackage.TIMING__TIMING_CONSTRAINT: - return timingConstraint != null && !timingConstraint.isEmpty(); - case TimingPackage.TIMING__TIMING_DESCRIPTION: - return timingDescription != null && !timingDescription.isEmpty(); - case TimingPackage.TIMING__BASE_CLASS: - return base_Class != null; - case TimingPackage.TIMING__BASE_PACKAGE: - return base_Package != null; + switch (featureID) { + case TimingPackage.TIMING__CONSTRAINT: + return !getConstraint().isEmpty(); + case TimingPackage.TIMING__DESCRIPTION: + return !getDescription().isEmpty(); + case TimingPackage.TIMING__BASE_CLASS: + return base_Class != null; + case TimingPackage.TIMING__BASE_PACKAGE: + return base_Package != null; } return super.eIsSet(featureID); } /** * <!-- begin-user-doc --> <!-- end-user-doc --> - * * @generated */ - @SuppressWarnings("unchecked") @Override public void eSet(int featureID, Object newValue) { - switch(featureID) { - case TimingPackage.TIMING__TIMING_CONSTRAINT: - getTimingConstraint().clear(); - getTimingConstraint().addAll((Collection<? extends TimingConstraint>)newValue); - return; - case TimingPackage.TIMING__TIMING_DESCRIPTION: - getTimingDescription().clear(); - getTimingDescription().addAll((Collection<? extends TimingDescription>)newValue); - return; - case TimingPackage.TIMING__BASE_CLASS: - setBase_Class((org.eclipse.uml2.uml.Class)newValue); - return; - case TimingPackage.TIMING__BASE_PACKAGE: - setBase_Package((org.eclipse.uml2.uml.Package)newValue); - return; + switch (featureID) { + case TimingPackage.TIMING__BASE_CLASS: + setBase_Class((org.eclipse.uml2.uml.Class)newValue); + return; + case TimingPackage.TIMING__BASE_PACKAGE: + setBase_Package((org.eclipse.uml2.uml.Package)newValue); + return; } super.eSet(featureID, newValue); } /** * <!-- begin-user-doc --> <!-- end-user-doc --> - * * @generated */ @Override @@ -180,65 +145,77 @@ public class TimingImpl extends ContextImpl implements Timing { } /** - * <!-- begin-user-doc --> <!-- end-user-doc --> - * - * @generated + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated NOT */ - @Override - public void eUnset(int featureID) { - switch(featureID) { - case TimingPackage.TIMING__TIMING_CONSTRAINT: - getTimingConstraint().clear(); - return; - case TimingPackage.TIMING__TIMING_DESCRIPTION: - getTimingDescription().clear(); - return; - case TimingPackage.TIMING__BASE_CLASS: - setBase_Class((org.eclipse.uml2.uml.Class)null); - return; - case TimingPackage.TIMING__BASE_PACKAGE: - setBase_Package((org.eclipse.uml2.uml.Package)null); - return; + public EList<TimingConstraint> getConstraint() { + EList<TimingConstraint> results = new BasicEList<TimingConstraint>(); + TimingConstraint adlBehavior = null; + if (getBase_NamedElement() != null) { + Iterator<Element> it = getBase_NamedElement().getOwnedElements().iterator(); + + while (it.hasNext()) { + Element element = it.next(); + adlBehavior = (TimingConstraint )UMLUtil.getStereotypeApplication(element, TimingConstraint.class); + if (adlBehavior != null) + results.add(adlBehavior); + } } - super.eUnset(featureID); + + return new BasicInternalEList<TimingConstraint>(TimingConstraint.class, results.size(), results.toArray()); } /** - * <!-- begin-user-doc --> <!-- end-user-doc --> - * - * @generated + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated NOT */ - public EList<TimingConstraint> getTimingConstraint() { - if(timingConstraint == null) { - timingConstraint = new EObjectResolvingEList<TimingConstraint>(TimingConstraint.class, this, TimingPackage.TIMING__TIMING_CONSTRAINT); + public EList<TimingDescription> getDescription() { + EList<TimingDescription> results = new BasicEList<TimingDescription>(); + TimingDescription adlBehavior = null; + if (getBase_NamedElement() != null) { + Iterator<Element> it = getBase_NamedElement().getOwnedElements().iterator(); + + while (it.hasNext()) { + Element element = it.next(); + adlBehavior = (TimingDescription )UMLUtil.getStereotypeApplication(element, TimingDescription.class); + if (adlBehavior != null) + results.add(adlBehavior); + } } - return timingConstraint; + + return new BasicInternalEList<TimingDescription>(TimingDescription.class, results.size(), results.toArray()); } /** * <!-- begin-user-doc --> <!-- end-user-doc --> - * * @generated */ - public EList<TimingDescription> getTimingDescription() { - if(timingDescription == null) { - timingDescription = new EObjectResolvingEList<TimingDescription>(TimingDescription.class, this, TimingPackage.TIMING__TIMING_DESCRIPTION); + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TimingPackage.TIMING__BASE_CLASS: + setBase_Class((org.eclipse.uml2.uml.Class)null); + return; + case TimingPackage.TIMING__BASE_PACKAGE: + setBase_Package((org.eclipse.uml2.uml.Package)null); + return; } - return timingDescription; + super.eUnset(featureID); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> - * * @generated */ public org.eclipse.uml2.uml.Class getBase_Class() { - if(base_Class != null && base_Class.eIsProxy()) { + if (base_Class != null && base_Class.eIsProxy()) { InternalEObject oldBase_Class = (InternalEObject)base_Class; base_Class = (org.eclipse.uml2.uml.Class)eResolveProxy(oldBase_Class); - if(base_Class != oldBase_Class) { - if(eNotificationRequired()) + if (base_Class != oldBase_Class) { + if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.RESOLVE, TimingPackage.TIMING__BASE_CLASS, oldBase_Class, base_Class)); } } @@ -248,7 +225,6 @@ public class TimingImpl extends ContextImpl implements Timing { /** * <!-- begin-user-doc --> * <!-- end-user-doc --> - * * @generated */ public org.eclipse.uml2.uml.Class basicGetBase_Class() { @@ -258,28 +234,26 @@ public class TimingImpl extends ContextImpl implements Timing { /** * <!-- begin-user-doc --> * <!-- end-user-doc --> - * * @generated */ public void setBase_Class(org.eclipse.uml2.uml.Class newBase_Class) { org.eclipse.uml2.uml.Class oldBase_Class = base_Class; base_Class = newBase_Class; - if(eNotificationRequired()) + if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, TimingPackage.TIMING__BASE_CLASS, oldBase_Class, base_Class)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> - * * @generated */ public org.eclipse.uml2.uml.Package getBase_Package() { - if(base_Package != null && base_Package.eIsProxy()) { + if (base_Package != null && base_Package.eIsProxy()) { InternalEObject oldBase_Package = (InternalEObject)base_Package; base_Package = (org.eclipse.uml2.uml.Package)eResolveProxy(oldBase_Package); - if(base_Package != oldBase_Package) { - if(eNotificationRequired()) + if (base_Package != oldBase_Package) { + if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.RESOLVE, TimingPackage.TIMING__BASE_PACKAGE, oldBase_Package, base_Package)); } } @@ -289,7 +263,6 @@ public class TimingImpl extends ContextImpl implements Timing { /** * <!-- begin-user-doc --> * <!-- end-user-doc --> - * * @generated */ public org.eclipse.uml2.uml.Package basicGetBase_Package() { @@ -299,13 +272,12 @@ public class TimingImpl extends ContextImpl implements Timing { /** * <!-- begin-user-doc --> * <!-- end-user-doc --> - * * @generated */ public void setBase_Package(org.eclipse.uml2.uml.Package newBase_Package) { org.eclipse.uml2.uml.Package oldBase_Package = base_Package; base_Package = newBase_Package; - if(eNotificationRequired()) + if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, TimingPackage.TIMING__BASE_PACKAGE, oldBase_Package, base_Package)); } |