001: /**
002: * <copyright>
003: * </copyright>
004: *
005: * $Id$
006: */package com.bostechcorp.cbesb.ui.componentflow.componentFlowEditor.impl;
007:
008: import com.bostechcorp.cbesb.ui.componentflow.componentFlowEditor.ARSchedule;
009: import org.eclipse.emf.common.notify.Notification;
010: import org.eclipse.emf.ecore.EClass;
011: import org.eclipse.emf.ecore.InternalEObject;
012:
013: import org.eclipse.emf.ecore.impl.ENotificationImpl;
014: import org.eclipse.emf.ecore.impl.EObjectImpl;
015:
016: import org.eclipse.emf.ecore.util.EObjectContainmentEList;
017: import org.eclipse.emf.ecore.util.InternalEList;
018:
019: import org.eclipse.emf.ecore.util.EObjectResolvingEList;
020:
021: import com.bostechcorp.cbesb.ui.componentflow.componentFlowEditor.Scheduler;
022: import com.bostechcorp.cbesb.ui.componentflow.componentFlowEditor.StandardSchedule;
023: import com.bostechcorp.cbesb.ui.componentflow.componentFlowEditor.componentflowPackage;
024:
025: import java.util.Collection;
026:
027: import org.eclipse.emf.common.notify.NotificationChain;
028:
029: import org.eclipse.emf.common.util.EList;
030:
031: /**
032: * <!-- begin-user-doc -->
033: * An implementation of the model object '<em><b>Scheduler</b></em>'.
034: * <!-- end-user-doc -->
035: * <p>
036: * The following features are implemented:
037: * <ul>
038: * <li>{@link com.bostechcorp.cbesb.ui.componentflow.componentFlowEditor.impl.SchedulerImpl#getStandard <em>Standard</em>}</li>
039: * <li>{@link com.bostechcorp.cbesb.ui.componentflow.componentFlowEditor.impl.SchedulerImpl#getAutoRetry <em>Auto Retry</em>}</li>
040: * </ul>
041: * </p>
042: *
043: * @generated
044: */
045: public class SchedulerImpl extends EObjectImpl implements Scheduler {
046: /**
047: * <!-- begin-user-doc -->
048: * <!-- end-user-doc -->
049: * @generated
050: */
051: public static final String copyright = "Copyright, Bostech Corp.";
052:
053: /**
054: * The cached value of the '{@link #getStandard() <em>Standard</em>}' containment reference list.
055: * <!-- begin-user-doc -->
056: * <!-- end-user-doc -->
057: * @see #getStandard()
058: * @generated
059: * @ordered
060: */
061: protected EList standard = null;
062:
063: /**
064: * The cached value of the '{@link #getAutoRetry() <em>Auto Retry</em>}' containment reference list.
065: * <!-- begin-user-doc -->
066: * <!-- end-user-doc -->
067: * @see #getAutoRetry()
068: * @generated
069: * @ordered
070: */
071: protected EList autoRetry = null;
072:
073: /**
074: * <!-- begin-user-doc -->
075: * <!-- end-user-doc -->
076: * @generated NOT
077: */
078: protected SchedulerImpl() {
079: super ();
080:
081: }
082:
083: /**
084: * <!-- begin-user-doc -->
085: * <!-- end-user-doc -->
086: * @generated
087: */
088: protected EClass eStaticClass() {
089: return componentflowPackage.Literals.SCHEDULER;
090: }
091:
092: /**
093: * <!-- begin-user-doc -->
094: * <!-- end-user-doc -->
095: * @generated
096: */
097: public EList getStandard() {
098: if (standard == null) {
099: standard = new EObjectContainmentEList(
100: StandardSchedule.class, this ,
101: componentflowPackage.SCHEDULER__STANDARD);
102: }
103: return standard;
104: }
105:
106: /**
107: * <!-- begin-user-doc -->
108: * <!-- end-user-doc -->
109: * @generated
110: */
111: public EList getAutoRetry() {
112: if (autoRetry == null) {
113: autoRetry = new EObjectContainmentEList(ARSchedule.class,
114: this , componentflowPackage.SCHEDULER__AUTO_RETRY);
115: }
116: return autoRetry;
117: }
118:
119: /**
120: * <!-- begin-user-doc -->
121: * <!-- end-user-doc -->
122: * @generated
123: */
124: public NotificationChain eInverseRemove(InternalEObject otherEnd,
125: int featureID, NotificationChain msgs) {
126: switch (featureID) {
127: case componentflowPackage.SCHEDULER__STANDARD:
128: return ((InternalEList) getStandard()).basicRemove(
129: otherEnd, msgs);
130: case componentflowPackage.SCHEDULER__AUTO_RETRY:
131: return ((InternalEList) getAutoRetry()).basicRemove(
132: otherEnd, msgs);
133: }
134: return super .eInverseRemove(otherEnd, featureID, msgs);
135: }
136:
137: /**
138: * <!-- begin-user-doc -->
139: * <!-- end-user-doc -->
140: * @generated
141: */
142: public Object eGet(int featureID, boolean resolve, boolean coreType) {
143: switch (featureID) {
144: case componentflowPackage.SCHEDULER__STANDARD:
145: return getStandard();
146: case componentflowPackage.SCHEDULER__AUTO_RETRY:
147: return getAutoRetry();
148: }
149: return super .eGet(featureID, resolve, coreType);
150: }
151:
152: /**
153: * <!-- begin-user-doc -->
154: * <!-- end-user-doc -->
155: * @generated
156: */
157: public void eSet(int featureID, Object newValue) {
158: switch (featureID) {
159: case componentflowPackage.SCHEDULER__STANDARD:
160: getStandard().clear();
161: getStandard().addAll((Collection) newValue);
162: return;
163: case componentflowPackage.SCHEDULER__AUTO_RETRY:
164: getAutoRetry().clear();
165: getAutoRetry().addAll((Collection) newValue);
166: return;
167: }
168: super .eSet(featureID, newValue);
169: }
170:
171: /**
172: * <!-- begin-user-doc -->
173: * <!-- end-user-doc -->
174: * @generated
175: */
176: public void eUnset(int featureID) {
177: switch (featureID) {
178: case componentflowPackage.SCHEDULER__STANDARD:
179: getStandard().clear();
180: return;
181: case componentflowPackage.SCHEDULER__AUTO_RETRY:
182: getAutoRetry().clear();
183: return;
184: }
185: super .eUnset(featureID);
186: }
187:
188: /**
189: * <!-- begin-user-doc -->
190: * <!-- end-user-doc -->
191: * @generated
192: */
193: public boolean eIsSet(int featureID) {
194: switch (featureID) {
195: case componentflowPackage.SCHEDULER__STANDARD:
196: return standard != null && !standard.isEmpty();
197: case componentflowPackage.SCHEDULER__AUTO_RETRY:
198: return autoRetry != null && !autoRetry.isEmpty();
199: }
200: return super .eIsSet(featureID);
201: }
202:
203: } //SchedulerImpl
|