diff options
Diffstat (limited to 'extraplugins/eastadl/org.eclipse.papyrus.eastadl/src/org/eclipse/papyrus/eastadl/dependability/impl/FeatureFlawImpl.java')
-rw-r--r-- | extraplugins/eastadl/org.eclipse.papyrus.eastadl/src/org/eclipse/papyrus/eastadl/dependability/impl/FeatureFlawImpl.java | 241 |
1 files changed, 241 insertions, 0 deletions
diff --git a/extraplugins/eastadl/org.eclipse.papyrus.eastadl/src/org/eclipse/papyrus/eastadl/dependability/impl/FeatureFlawImpl.java b/extraplugins/eastadl/org.eclipse.papyrus.eastadl/src/org/eclipse/papyrus/eastadl/dependability/impl/FeatureFlawImpl.java new file mode 100644 index 00000000000..dfa897c7ca0 --- /dev/null +++ b/extraplugins/eastadl/org.eclipse.papyrus.eastadl/src/org/eclipse/papyrus/eastadl/dependability/impl/FeatureFlawImpl.java @@ -0,0 +1,241 @@ +/***************************************************************************** + * Copyright (c) 2010 CEA LIST. + * + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Sara TUCCI (CEA LIST) sara.tucci@cea.fr - Initial API and implementation + * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation + * David SERVAT (CEA LIST) david.servat@cea.fr - Initial API and implementation + * + *****************************************************************************/ +package org.eclipse.papyrus.eastadl.dependability.impl; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +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.papyrus.eastadl.dependability.DependabilityPackage; +import org.eclipse.papyrus.eastadl.dependability.FeatureFlaw; +import org.eclipse.papyrus.eastadl.dependability.Item; +import org.eclipse.papyrus.eastadl.infrastructure.elements.impl.TraceableSpecificationImpl; +import org.eclipse.papyrus.eastadl.requirements.Requirement; + + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Feature Flaw</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.papyrus.eastadl.dependability.impl.FeatureFlawImpl#getBase_Class <em>Base Class</em>}</li> + * <li>{@link org.eclipse.papyrus.eastadl.dependability.impl.FeatureFlawImpl#getItem <em>Item</em>}</li> + * <li>{@link org.eclipse.papyrus.eastadl.dependability.impl.FeatureFlawImpl#getNonFulfilledRequirement <em>Non Fulfilled Requirement</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class FeatureFlawImpl extends TraceableSpecificationImpl implements FeatureFlaw { + /** + * The cached value of the '{@link #getBase_Class() <em>Base Class</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getBase_Class() + * @generated + * @ordered + */ + protected org.eclipse.uml2.uml.Class base_Class; + + /** + * The cached value of the '{@link #getItem() <em>Item</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getItem() + * @generated + * @ordered + */ + protected EList<Item> item; + /** + * The cached value of the '{@link #getNonFulfilledRequirement() <em>Non Fulfilled Requirement</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getNonFulfilledRequirement() + * @generated + * @ordered + */ + protected EList<Requirement> nonFulfilledRequirement; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected FeatureFlawImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case DependabilityPackage.FEATURE_FLAW__BASE_CLASS: + if (resolve) return getBase_Class(); + return basicGetBase_Class(); + case DependabilityPackage.FEATURE_FLAW__ITEM: + return getItem(); + case DependabilityPackage.FEATURE_FLAW__NON_FULFILLED_REQUIREMENT: + return getNonFulfilledRequirement(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case DependabilityPackage.FEATURE_FLAW__BASE_CLASS: + return base_Class != null; + case DependabilityPackage.FEATURE_FLAW__ITEM: + return item != null && !item.isEmpty(); + case DependabilityPackage.FEATURE_FLAW__NON_FULFILLED_REQUIREMENT: + return nonFulfilledRequirement != null && !nonFulfilledRequirement.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case DependabilityPackage.FEATURE_FLAW__BASE_CLASS: + setBase_Class((org.eclipse.uml2.uml.Class)newValue); + return; + case DependabilityPackage.FEATURE_FLAW__ITEM: + getItem().clear(); + getItem().addAll((Collection<? extends Item>)newValue); + return; + case DependabilityPackage.FEATURE_FLAW__NON_FULFILLED_REQUIREMENT: + getNonFulfilledRequirement().clear(); + getNonFulfilledRequirement().addAll((Collection<? extends Requirement>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return DependabilityPackage.Literals.FEATURE_FLAW; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public org.eclipse.uml2.uml.Class getBase_Class() { + 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()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, DependabilityPackage.FEATURE_FLAW__BASE_CLASS, oldBase_Class, base_Class)); + } + } + return base_Class; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public org.eclipse.uml2.uml.Class basicGetBase_Class() { + return base_Class; + } + + /** + * <!-- 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()) + eNotify(new ENotificationImpl(this, Notification.SET, DependabilityPackage.FEATURE_FLAW__BASE_CLASS, oldBase_Class, base_Class)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case DependabilityPackage.FEATURE_FLAW__BASE_CLASS: + setBase_Class((org.eclipse.uml2.uml.Class)null); + return; + case DependabilityPackage.FEATURE_FLAW__ITEM: + getItem().clear(); + return; + case DependabilityPackage.FEATURE_FLAW__NON_FULFILLED_REQUIREMENT: + getNonFulfilledRequirement().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<Item> getItem() { + if (item == null) { + item = new EObjectResolvingEList<Item>(Item.class, this, DependabilityPackage.FEATURE_FLAW__ITEM); + } + return item; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<Requirement> getNonFulfilledRequirement() { + if (nonFulfilledRequirement == null) { + nonFulfilledRequirement = new EObjectResolvingEList<Requirement>(Requirement.class, this, DependabilityPackage.FEATURE_FLAW__NON_FULFILLED_REQUIREMENT); + } + return nonFulfilledRequirement; + } + +} //FeatureFlawImpl |