source: default/v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/ebnf/impl/ExtRuleImpl.java @ 61

Last change on this file since 61 was 61, checked in by hkaulbersch, 10 years ago

initial commit

  • Property svn:mime-type set to text/plain
File size: 10.4 KB
Line 
1/**
2 */
3package de.ugoe.cs.swe.bnftools.ebnf.impl;
4
5import de.ugoe.cs.swe.bnftools.ebnf.Atom;
6import de.ugoe.cs.swe.bnftools.ebnf.EbnfPackage;
7import de.ugoe.cs.swe.bnftools.ebnf.ExtRule;
8
9import java.util.Collection;
10
11import org.eclipse.emf.common.notify.Notification;
12import org.eclipse.emf.common.notify.NotificationChain;
13
14import org.eclipse.emf.common.util.EList;
15
16import org.eclipse.emf.ecore.EClass;
17import org.eclipse.emf.ecore.InternalEObject;
18
19import org.eclipse.emf.ecore.impl.ENotificationImpl;
20import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
21
22import org.eclipse.emf.ecore.util.EObjectContainmentEList;
23import org.eclipse.emf.ecore.util.InternalEList;
24
25/**
26 * <!-- begin-user-doc -->
27 * An implementation of the model object '<em><b>Ext Rule</b></em>'.
28 * <!-- end-user-doc -->
29 * <p>
30 * The following features are implemented:
31 * <ul>
32 *   <li>{@link de.ugoe.cs.swe.bnftools.ebnf.impl.ExtRuleImpl#getRulenumber <em>Rulenumber</em>}</li>
33 *   <li>{@link de.ugoe.cs.swe.bnftools.ebnf.impl.ExtRuleImpl#getRulevariant <em>Rulevariant</em>}</li>
34 *   <li>{@link de.ugoe.cs.swe.bnftools.ebnf.impl.ExtRuleImpl#getName <em>Name</em>}</li>
35 *   <li>{@link de.ugoe.cs.swe.bnftools.ebnf.impl.ExtRuleImpl#getRuleext <em>Ruleext</em>}</li>
36 *   <li>{@link de.ugoe.cs.swe.bnftools.ebnf.impl.ExtRuleImpl#getElements <em>Elements</em>}</li>
37 * </ul>
38 * </p>
39 *
40 * @generated
41 */
42public class ExtRuleImpl extends MinimalEObjectImpl.Container implements ExtRule
43{
44  /**
45   * The default value of the '{@link #getRulenumber() <em>Rulenumber</em>}' attribute.
46   * <!-- begin-user-doc -->
47   * <!-- end-user-doc -->
48   * @see #getRulenumber()
49   * @generated
50   * @ordered
51   */
52  protected static final int RULENUMBER_EDEFAULT = 0;
53
54  /**
55   * The cached value of the '{@link #getRulenumber() <em>Rulenumber</em>}' attribute.
56   * <!-- begin-user-doc -->
57   * <!-- end-user-doc -->
58   * @see #getRulenumber()
59   * @generated
60   * @ordered
61   */
62  protected int rulenumber = RULENUMBER_EDEFAULT;
63
64  /**
65   * The default value of the '{@link #getRulevariant() <em>Rulevariant</em>}' attribute.
66   * <!-- begin-user-doc -->
67   * <!-- end-user-doc -->
68   * @see #getRulevariant()
69   * @generated
70   * @ordered
71   */
72  protected static final String RULEVARIANT_EDEFAULT = null;
73
74  /**
75   * The cached value of the '{@link #getRulevariant() <em>Rulevariant</em>}' attribute.
76   * <!-- begin-user-doc -->
77   * <!-- end-user-doc -->
78   * @see #getRulevariant()
79   * @generated
80   * @ordered
81   */
82  protected String rulevariant = RULEVARIANT_EDEFAULT;
83
84  /**
85   * The default value of the '{@link #getName() <em>Name</em>}' attribute.
86   * <!-- begin-user-doc -->
87   * <!-- end-user-doc -->
88   * @see #getName()
89   * @generated
90   * @ordered
91   */
92  protected static final String NAME_EDEFAULT = null;
93
94  /**
95   * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
96   * <!-- begin-user-doc -->
97   * <!-- end-user-doc -->
98   * @see #getName()
99   * @generated
100   * @ordered
101   */
102  protected String name = NAME_EDEFAULT;
103
104  /**
105   * The default value of the '{@link #getRuleext() <em>Ruleext</em>}' attribute.
106   * <!-- begin-user-doc -->
107   * <!-- end-user-doc -->
108   * @see #getRuleext()
109   * @generated
110   * @ordered
111   */
112  protected static final int RULEEXT_EDEFAULT = 0;
113
114  /**
115   * The cached value of the '{@link #getRuleext() <em>Ruleext</em>}' attribute.
116   * <!-- begin-user-doc -->
117   * <!-- end-user-doc -->
118   * @see #getRuleext()
119   * @generated
120   * @ordered
121   */
122  protected int ruleext = RULEEXT_EDEFAULT;
123
124  /**
125   * The cached value of the '{@link #getElements() <em>Elements</em>}' containment reference list.
126   * <!-- begin-user-doc -->
127   * <!-- end-user-doc -->
128   * @see #getElements()
129   * @generated
130   * @ordered
131   */
132  protected EList<Atom> elements;
133
134  /**
135   * <!-- begin-user-doc -->
136   * <!-- end-user-doc -->
137   * @generated
138   */
139  protected ExtRuleImpl()
140  {
141    super();
142  }
143
144  /**
145   * <!-- begin-user-doc -->
146   * <!-- end-user-doc -->
147   * @generated
148   */
149  @Override
150  protected EClass eStaticClass()
151  {
152    return EbnfPackage.Literals.EXT_RULE;
153  }
154
155  /**
156   * <!-- begin-user-doc -->
157   * <!-- end-user-doc -->
158   * @generated
159   */
160  public int getRulenumber()
161  {
162    return rulenumber;
163  }
164
165  /**
166   * <!-- begin-user-doc -->
167   * <!-- end-user-doc -->
168   * @generated
169   */
170  public void setRulenumber(int newRulenumber)
171  {
172    int oldRulenumber = rulenumber;
173    rulenumber = newRulenumber;
174    if (eNotificationRequired())
175      eNotify(new ENotificationImpl(this, Notification.SET, EbnfPackage.EXT_RULE__RULENUMBER, oldRulenumber, rulenumber));
176  }
177
178  /**
179   * <!-- begin-user-doc -->
180   * <!-- end-user-doc -->
181   * @generated
182   */
183  public String getRulevariant()
184  {
185    return rulevariant;
186  }
187
188  /**
189   * <!-- begin-user-doc -->
190   * <!-- end-user-doc -->
191   * @generated
192   */
193  public void setRulevariant(String newRulevariant)
194  {
195    String oldRulevariant = rulevariant;
196    rulevariant = newRulevariant;
197    if (eNotificationRequired())
198      eNotify(new ENotificationImpl(this, Notification.SET, EbnfPackage.EXT_RULE__RULEVARIANT, oldRulevariant, rulevariant));
199  }
200
201  /**
202   * <!-- begin-user-doc -->
203   * <!-- end-user-doc -->
204   * @generated
205   */
206  public String getName()
207  {
208    return name;
209  }
210
211  /**
212   * <!-- begin-user-doc -->
213   * <!-- end-user-doc -->
214   * @generated
215   */
216  public void setName(String newName)
217  {
218    String oldName = name;
219    name = newName;
220    if (eNotificationRequired())
221      eNotify(new ENotificationImpl(this, Notification.SET, EbnfPackage.EXT_RULE__NAME, oldName, name));
222  }
223
224  /**
225   * <!-- begin-user-doc -->
226   * <!-- end-user-doc -->
227   * @generated
228   */
229  public int getRuleext()
230  {
231    return ruleext;
232  }
233
234  /**
235   * <!-- begin-user-doc -->
236   * <!-- end-user-doc -->
237   * @generated
238   */
239  public void setRuleext(int newRuleext)
240  {
241    int oldRuleext = ruleext;
242    ruleext = newRuleext;
243    if (eNotificationRequired())
244      eNotify(new ENotificationImpl(this, Notification.SET, EbnfPackage.EXT_RULE__RULEEXT, oldRuleext, ruleext));
245  }
246
247  /**
248   * <!-- begin-user-doc -->
249   * <!-- end-user-doc -->
250   * @generated
251   */
252  public EList<Atom> getElements()
253  {
254    if (elements == null)
255    {
256      elements = new EObjectContainmentEList<Atom>(Atom.class, this, EbnfPackage.EXT_RULE__ELEMENTS);
257    }
258    return elements;
259  }
260
261  /**
262   * <!-- begin-user-doc -->
263   * <!-- end-user-doc -->
264   * @generated
265   */
266  @Override
267  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
268  {
269    switch (featureID)
270    {
271      case EbnfPackage.EXT_RULE__ELEMENTS:
272        return ((InternalEList<?>)getElements()).basicRemove(otherEnd, msgs);
273    }
274    return super.eInverseRemove(otherEnd, featureID, msgs);
275  }
276
277  /**
278   * <!-- begin-user-doc -->
279   * <!-- end-user-doc -->
280   * @generated
281   */
282  @Override
283  public Object eGet(int featureID, boolean resolve, boolean coreType)
284  {
285    switch (featureID)
286    {
287      case EbnfPackage.EXT_RULE__RULENUMBER:
288        return getRulenumber();
289      case EbnfPackage.EXT_RULE__RULEVARIANT:
290        return getRulevariant();
291      case EbnfPackage.EXT_RULE__NAME:
292        return getName();
293      case EbnfPackage.EXT_RULE__RULEEXT:
294        return getRuleext();
295      case EbnfPackage.EXT_RULE__ELEMENTS:
296        return getElements();
297    }
298    return super.eGet(featureID, resolve, coreType);
299  }
300
301  /**
302   * <!-- begin-user-doc -->
303   * <!-- end-user-doc -->
304   * @generated
305   */
306  @SuppressWarnings("unchecked")
307  @Override
308  public void eSet(int featureID, Object newValue)
309  {
310    switch (featureID)
311    {
312      case EbnfPackage.EXT_RULE__RULENUMBER:
313        setRulenumber((Integer)newValue);
314        return;
315      case EbnfPackage.EXT_RULE__RULEVARIANT:
316        setRulevariant((String)newValue);
317        return;
318      case EbnfPackage.EXT_RULE__NAME:
319        setName((String)newValue);
320        return;
321      case EbnfPackage.EXT_RULE__RULEEXT:
322        setRuleext((Integer)newValue);
323        return;
324      case EbnfPackage.EXT_RULE__ELEMENTS:
325        getElements().clear();
326        getElements().addAll((Collection<? extends Atom>)newValue);
327        return;
328    }
329    super.eSet(featureID, newValue);
330  }
331
332  /**
333   * <!-- begin-user-doc -->
334   * <!-- end-user-doc -->
335   * @generated
336   */
337  @Override
338  public void eUnset(int featureID)
339  {
340    switch (featureID)
341    {
342      case EbnfPackage.EXT_RULE__RULENUMBER:
343        setRulenumber(RULENUMBER_EDEFAULT);
344        return;
345      case EbnfPackage.EXT_RULE__RULEVARIANT:
346        setRulevariant(RULEVARIANT_EDEFAULT);
347        return;
348      case EbnfPackage.EXT_RULE__NAME:
349        setName(NAME_EDEFAULT);
350        return;
351      case EbnfPackage.EXT_RULE__RULEEXT:
352        setRuleext(RULEEXT_EDEFAULT);
353        return;
354      case EbnfPackage.EXT_RULE__ELEMENTS:
355        getElements().clear();
356        return;
357    }
358    super.eUnset(featureID);
359  }
360
361  /**
362   * <!-- begin-user-doc -->
363   * <!-- end-user-doc -->
364   * @generated
365   */
366  @Override
367  public boolean eIsSet(int featureID)
368  {
369    switch (featureID)
370    {
371      case EbnfPackage.EXT_RULE__RULENUMBER:
372        return rulenumber != RULENUMBER_EDEFAULT;
373      case EbnfPackage.EXT_RULE__RULEVARIANT:
374        return RULEVARIANT_EDEFAULT == null ? rulevariant != null : !RULEVARIANT_EDEFAULT.equals(rulevariant);
375      case EbnfPackage.EXT_RULE__NAME:
376        return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
377      case EbnfPackage.EXT_RULE__RULEEXT:
378        return ruleext != RULEEXT_EDEFAULT;
379      case EbnfPackage.EXT_RULE__ELEMENTS:
380        return elements != null && !elements.isEmpty();
381    }
382    return super.eIsSet(featureID);
383  }
384
385  /**
386   * <!-- begin-user-doc -->
387   * <!-- end-user-doc -->
388   * @generated
389   */
390  @Override
391  public String toString()
392  {
393    if (eIsProxy()) return super.toString();
394
395    StringBuffer result = new StringBuffer(super.toString());
396    result.append(" (rulenumber: ");
397    result.append(rulenumber);
398    result.append(", rulevariant: ");
399    result.append(rulevariant);
400    result.append(", name: ");
401    result.append(name);
402    result.append(", ruleext: ");
403    result.append(ruleext);
404    result.append(')');
405    return result.toString();
406  }
407
408} //ExtRuleImpl
Note: See TracBrowser for help on using the repository browser.