KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > enhydra > dods > editor > Doml > impl > IndexTypeImpl


1 /**
2  * <copyright>
3  * </copyright>
4  *
5  * $Id$
6  */

7 package org.enhydra.dods.editor.Doml.impl;
8
9 import java.util.Collection JavaDoc;
10
11 import org.eclipse.emf.common.notify.Notification;
12 import org.eclipse.emf.common.notify.NotificationChain;
13
14 import org.eclipse.emf.common.util.EList;
15
16 import org.eclipse.emf.ecore.EClass;
17 import org.eclipse.emf.ecore.EStructuralFeature;
18 import org.eclipse.emf.ecore.InternalEObject;
19
20 import org.eclipse.emf.ecore.impl.ENotificationImpl;
21 import org.eclipse.emf.ecore.impl.EObjectImpl;
22
23 import org.eclipse.emf.ecore.util.EObjectContainmentEList;
24 import org.eclipse.emf.ecore.util.InternalEList;
25
26 import org.enhydra.dods.editor.Doml.DomlPackage;
27 import org.enhydra.dods.editor.Doml.IndexColumnType;
28 import org.enhydra.dods.editor.Doml.IndexType;
29 import org.enhydra.dods.editor.Doml.TrueFalse;
30
31 /**
32  * <!-- begin-user-doc -->
33  * An implementation of the model object '<em><b>Index Type</b></em>'.
34  * <!-- end-user-doc -->
35  * <p>
36  * The following features are implemented:
37  * <ul>
38  * <li>{@link org.enhydra.dods.editor.Doml.impl.IndexTypeImpl#getIndexColumn <em>Index Column</em>}</li>
39  * <li>{@link org.enhydra.dods.editor.Doml.impl.IndexTypeImpl#getClustered <em>Clustered</em>}</li>
40  * <li>{@link org.enhydra.dods.editor.Doml.impl.IndexTypeImpl#getId <em>Id</em>}</li>
41  * <li>{@link org.enhydra.dods.editor.Doml.impl.IndexTypeImpl#getUnique <em>Unique</em>}</li>
42  * </ul>
43  * </p>
44  *
45  * @generated
46  */

47 public class IndexTypeImpl extends EObjectImpl implements IndexType {
48     /**
49      * The cached value of the '{@link #getIndexColumn() <em>Index Column</em>}' containment reference list.
50      * <!-- begin-user-doc -->
51      * <!-- end-user-doc -->
52      * @see #getIndexColumn()
53      * @generated
54      * @ordered
55      */

56     protected EList indexColumn = null;
57
58     /**
59      * The default value of the '{@link #getClustered() <em>Clustered</em>}' attribute.
60      * <!-- begin-user-doc -->
61      * <!-- end-user-doc -->
62      * @see #getClustered()
63      * @generated
64      * @ordered
65      */

66     protected static final TrueFalse CLUSTERED_EDEFAULT = TrueFalse.FALSE_LITERAL;
67
68     /**
69      * The cached value of the '{@link #getClustered() <em>Clustered</em>}' attribute.
70      * <!-- begin-user-doc -->
71      * <!-- end-user-doc -->
72      * @see #getClustered()
73      * @generated
74      * @ordered
75      */

76     protected TrueFalse clustered = CLUSTERED_EDEFAULT;
77
78     /**
79      * This is true if the Clustered attribute has been set.
80      * <!-- begin-user-doc -->
81      * <!-- end-user-doc -->
82      * @generated
83      * @ordered
84      */

85     protected boolean clusteredESet = false;
86
87     /**
88      * The default value of the '{@link #getId() <em>Id</em>}' attribute.
89      * <!-- begin-user-doc -->
90      * <!-- end-user-doc -->
91      * @see #getId()
92      * @generated
93      * @ordered
94      */

95     protected static final String JavaDoc ID_EDEFAULT = null;
96
97     /**
98      * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
99      * <!-- begin-user-doc -->
100      * <!-- end-user-doc -->
101      * @see #getId()
102      * @generated
103      * @ordered
104      */

105     protected String JavaDoc id = ID_EDEFAULT;
106
107     /**
108      * The default value of the '{@link #getUnique() <em>Unique</em>}' attribute.
109      * <!-- begin-user-doc -->
110      * <!-- end-user-doc -->
111      * @see #getUnique()
112      * @generated
113      * @ordered
114      */

115     protected static final TrueFalse UNIQUE_EDEFAULT = TrueFalse.FALSE_LITERAL;
116
117     /**
118      * The cached value of the '{@link #getUnique() <em>Unique</em>}' attribute.
119      * <!-- begin-user-doc -->
120      * <!-- end-user-doc -->
121      * @see #getUnique()
122      * @generated
123      * @ordered
124      */

125     protected TrueFalse unique = UNIQUE_EDEFAULT;
126
127     /**
128      * This is true if the Unique attribute has been set.
129      * <!-- begin-user-doc -->
130      * <!-- end-user-doc -->
131      * @generated
132      * @ordered
133      */

134     protected boolean uniqueESet = false;
135
136     /**
137      * <!-- begin-user-doc -->
138      * <!-- end-user-doc -->
139      * @generated
140      */

141     protected IndexTypeImpl() {
142         super();
143     }
144
145     /**
146      * <!-- begin-user-doc -->
147      * <!-- end-user-doc -->
148      * @generated
149      */

150     protected EClass eStaticClass() {
151         return DomlPackage.eINSTANCE.getIndexType();
152     }
153
154     /**
155      * <!-- begin-user-doc -->
156      * <!-- end-user-doc -->
157      * @generated
158      */

159     public EList getIndexColumn() {
160         if (indexColumn == null) {
161             indexColumn = new EObjectContainmentEList(IndexColumnType.class, this, DomlPackage.INDEX_TYPE__INDEX_COLUMN);
162         }
163         return indexColumn;
164     }
165
166     /**
167      * <!-- begin-user-doc -->
168      * <!-- end-user-doc -->
169      * @generated
170      */

171     public TrueFalse getClustered() {
172         return clustered;
173     }
174
175     /**
176      * <!-- begin-user-doc -->
177      * <!-- end-user-doc -->
178      * @generated
179      */

180     public void setClustered(TrueFalse newClustered) {
181         TrueFalse oldClustered = clustered;
182         clustered = newClustered == null ? CLUSTERED_EDEFAULT : newClustered;
183         boolean oldClusteredESet = clusteredESet;
184         clusteredESet = true;
185         if (eNotificationRequired())
186             eNotify(new ENotificationImpl(this, Notification.SET, DomlPackage.INDEX_TYPE__CLUSTERED, oldClustered, clustered, !oldClusteredESet));
187     }
188
189     /**
190      * <!-- begin-user-doc -->
191      * <!-- end-user-doc -->
192      * @generated
193      */

194     public void unsetClustered() {
195         TrueFalse oldClustered = clustered;
196         boolean oldClusteredESet = clusteredESet;
197         clustered = CLUSTERED_EDEFAULT;
198         clusteredESet = false;
199         if (eNotificationRequired())
200             eNotify(new ENotificationImpl(this, Notification.UNSET, DomlPackage.INDEX_TYPE__CLUSTERED, oldClustered, CLUSTERED_EDEFAULT, oldClusteredESet));
201     }
202
203     /**
204      * <!-- begin-user-doc -->
205      * <!-- end-user-doc -->
206      * @generated
207      */

208     public boolean isSetClustered() {
209         return clusteredESet;
210     }
211
212     /**
213      * <!-- begin-user-doc -->
214      * <!-- end-user-doc -->
215      * @generated
216      */

217     public String JavaDoc getId() {
218         return id;
219     }
220
221     /**
222      * <!-- begin-user-doc -->
223      * <!-- end-user-doc -->
224      * @generated
225      */

226     public void setId(String JavaDoc newId) {
227         String JavaDoc oldId = id;
228         id = newId;
229         if (eNotificationRequired())
230             eNotify(new ENotificationImpl(this, Notification.SET, DomlPackage.INDEX_TYPE__ID, oldId, id));
231     }
232
233     /**
234      * <!-- begin-user-doc -->
235      * <!-- end-user-doc -->
236      * @generated
237      */

238     public TrueFalse getUnique() {
239         return unique;
240     }
241
242     /**
243      * <!-- begin-user-doc -->
244      * <!-- end-user-doc -->
245      * @generated
246      */

247     public void setUnique(TrueFalse newUnique) {
248         TrueFalse oldUnique = unique;
249         unique = newUnique == null ? UNIQUE_EDEFAULT : newUnique;
250         boolean oldUniqueESet = uniqueESet;
251         uniqueESet = true;
252         if (eNotificationRequired())
253             eNotify(new ENotificationImpl(this, Notification.SET, DomlPackage.INDEX_TYPE__UNIQUE, oldUnique, unique, !oldUniqueESet));
254     }
255
256     /**
257      * <!-- begin-user-doc -->
258      * <!-- end-user-doc -->
259      * @generated
260      */

261     public void unsetUnique() {
262         TrueFalse oldUnique = unique;
263         boolean oldUniqueESet = uniqueESet;
264         unique = UNIQUE_EDEFAULT;
265         uniqueESet = false;
266         if (eNotificationRequired())
267             eNotify(new ENotificationImpl(this, Notification.UNSET, DomlPackage.INDEX_TYPE__UNIQUE, oldUnique, UNIQUE_EDEFAULT, oldUniqueESet));
268     }
269
270     /**
271      * <!-- begin-user-doc -->
272      * <!-- end-user-doc -->
273      * @generated
274      */

275     public boolean isSetUnique() {
276         return uniqueESet;
277     }
278
279     /**
280      * <!-- begin-user-doc -->
281      * <!-- end-user-doc -->
282      * @generated
283      */

284     public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class JavaDoc baseClass, NotificationChain msgs) {
285         if (featureID >= 0) {
286             switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
287                 case DomlPackage.INDEX_TYPE__INDEX_COLUMN:
288                     return ((InternalEList)getIndexColumn()).basicRemove(otherEnd, msgs);
289                 default:
290                     return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
291             }
292         }
293         return eBasicSetContainer(null, featureID, msgs);
294     }
295
296     /**
297      * <!-- begin-user-doc -->
298      * <!-- end-user-doc -->
299      * @generated
300      */

301     public Object JavaDoc eGet(EStructuralFeature eFeature, boolean resolve) {
302         switch (eDerivedStructuralFeatureID(eFeature)) {
303             case DomlPackage.INDEX_TYPE__INDEX_COLUMN:
304                 return getIndexColumn();
305             case DomlPackage.INDEX_TYPE__CLUSTERED:
306                 return getClustered();
307             case DomlPackage.INDEX_TYPE__ID:
308                 return getId();
309             case DomlPackage.INDEX_TYPE__UNIQUE:
310                 return getUnique();
311         }
312         return eDynamicGet(eFeature, resolve);
313     }
314
315     /**
316      * <!-- begin-user-doc -->
317      * <!-- end-user-doc -->
318      * @generated
319      */

320     public void eSet(EStructuralFeature eFeature, Object JavaDoc newValue) {
321         switch (eDerivedStructuralFeatureID(eFeature)) {
322             case DomlPackage.INDEX_TYPE__INDEX_COLUMN:
323                 getIndexColumn().clear();
324                 getIndexColumn().addAll((Collection JavaDoc)newValue);
325                 return;
326             case DomlPackage.INDEX_TYPE__CLUSTERED:
327                 setClustered((TrueFalse)newValue);
328                 return;
329             case DomlPackage.INDEX_TYPE__ID:
330                 setId((String JavaDoc)newValue);
331                 return;
332             case DomlPackage.INDEX_TYPE__UNIQUE:
333                 setUnique((TrueFalse)newValue);
334                 return;
335         }
336         eDynamicSet(eFeature, newValue);
337     }
338
339     /**
340      * <!-- begin-user-doc -->
341      * <!-- end-user-doc -->
342      * @generated
343      */

344     public void eUnset(EStructuralFeature eFeature) {
345         switch (eDerivedStructuralFeatureID(eFeature)) {
346             case DomlPackage.INDEX_TYPE__INDEX_COLUMN:
347                 getIndexColumn().clear();
348                 return;
349             case DomlPackage.INDEX_TYPE__CLUSTERED:
350                 unsetClustered();
351                 return;
352             case DomlPackage.INDEX_TYPE__ID:
353                 setId(ID_EDEFAULT);
354                 return;
355             case DomlPackage.INDEX_TYPE__UNIQUE:
356                 unsetUnique();
357                 return;
358         }
359         eDynamicUnset(eFeature);
360     }
361
362     /**
363      * <!-- begin-user-doc -->
364      * <!-- end-user-doc -->
365      * @generated
366      */

367     public boolean eIsSet(EStructuralFeature eFeature) {
368         switch (eDerivedStructuralFeatureID(eFeature)) {
369             case DomlPackage.INDEX_TYPE__INDEX_COLUMN:
370                 return indexColumn != null && !indexColumn.isEmpty();
371             case DomlPackage.INDEX_TYPE__CLUSTERED:
372                 return isSetClustered();
373             case DomlPackage.INDEX_TYPE__ID:
374                 return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
375             case DomlPackage.INDEX_TYPE__UNIQUE:
376                 return isSetUnique();
377         }
378         return eDynamicIsSet(eFeature);
379     }
380
381     /**
382      * <!-- begin-user-doc -->
383      * <!-- end-user-doc -->
384      * @generated
385      */

386     public String JavaDoc toString() {
387         if (eIsProxy()) return super.toString();
388
389         StringBuffer JavaDoc result = new StringBuffer JavaDoc(super.toString());
390         result.append(" (clustered: ");
391         if (clusteredESet) result.append(clustered); else result.append("<unset>");
392         result.append(", id: ");
393         result.append(id);
394         result.append(", unique: ");
395         if (uniqueESet) result.append(unique); else result.append("<unset>");
396         result.append(')');
397         return result.toString();
398     }
399
400 } //IndexTypeImpl
401
Popular Tags