001: /**
002: * <copyright>
003: * </copyright>
004: *
005: * $Id: ExceptionReportTypeImpl.java 7522 2007-09-12 22:00:10Z saul.farber $
006: */package net.opengis.ows.impl;
007:
008: import java.util.Collection;
009:
010: import net.opengis.ows.ExceptionReportType;
011: import net.opengis.ows.ExceptionType;
012: import net.opengis.ows.OwsPackage;
013:
014: import org.eclipse.emf.common.notify.Notification;
015: import org.eclipse.emf.common.notify.NotificationChain;
016:
017: import org.eclipse.emf.common.util.EList;
018:
019: import org.eclipse.emf.ecore.EClass;
020: import org.eclipse.emf.ecore.InternalEObject;
021:
022: import org.eclipse.emf.ecore.impl.ENotificationImpl;
023: import org.eclipse.emf.ecore.impl.EObjectImpl;
024:
025: import org.eclipse.emf.ecore.util.EObjectContainmentEList;
026: import org.eclipse.emf.ecore.util.InternalEList;
027:
028: /**
029: * <!-- begin-user-doc -->
030: * An implementation of the model object '<em><b>Exception Report Type</b></em>'.
031: * <!-- end-user-doc -->
032: * <p>
033: * The following features are implemented:
034: * <ul>
035: * <li>{@link net.opengis.ows.impl.ExceptionReportTypeImpl#getException <em>Exception</em>}</li>
036: * <li>{@link net.opengis.ows.impl.ExceptionReportTypeImpl#getLanguage <em>Language</em>}</li>
037: * <li>{@link net.opengis.ows.impl.ExceptionReportTypeImpl#getVersion <em>Version</em>}</li>
038: * </ul>
039: * </p>
040: *
041: * @generated
042: */
043: public class ExceptionReportTypeImpl extends EObjectImpl implements
044: ExceptionReportType {
045: /**
046: * The cached value of the '{@link #getException() <em>Exception</em>}' containment reference list.
047: * <!-- begin-user-doc -->
048: * <!-- end-user-doc -->
049: * @see #getException()
050: * @generated
051: * @ordered
052: */
053: protected EList exception;
054:
055: /**
056: * The default value of the '{@link #getLanguage() <em>Language</em>}' attribute.
057: * <!-- begin-user-doc -->
058: * <!-- end-user-doc -->
059: * @see #getLanguage()
060: * @generated
061: * @ordered
062: */
063: protected static final String LANGUAGE_EDEFAULT = null;
064:
065: /**
066: * The cached value of the '{@link #getLanguage() <em>Language</em>}' attribute.
067: * <!-- begin-user-doc -->
068: * <!-- end-user-doc -->
069: * @see #getLanguage()
070: * @generated
071: * @ordered
072: */
073: protected String language = LANGUAGE_EDEFAULT;
074:
075: /**
076: * The default value of the '{@link #getVersion() <em>Version</em>}' attribute.
077: * <!-- begin-user-doc -->
078: * <!-- end-user-doc -->
079: * @see #getVersion()
080: * @generated
081: * @ordered
082: */
083: protected static final String VERSION_EDEFAULT = null;
084:
085: /**
086: * The cached value of the '{@link #getVersion() <em>Version</em>}' attribute.
087: * <!-- begin-user-doc -->
088: * <!-- end-user-doc -->
089: * @see #getVersion()
090: * @generated
091: * @ordered
092: */
093: protected String version = VERSION_EDEFAULT;
094:
095: /**
096: * <!-- begin-user-doc -->
097: * <!-- end-user-doc -->
098: * @generated
099: */
100: protected ExceptionReportTypeImpl() {
101: super ();
102: }
103:
104: /**
105: * <!-- begin-user-doc -->
106: * <!-- end-user-doc -->
107: * @generated
108: */
109: protected EClass eStaticClass() {
110: return OwsPackage.Literals.EXCEPTION_REPORT_TYPE;
111: }
112:
113: /**
114: * <!-- begin-user-doc -->
115: * <!-- end-user-doc -->
116: * @generated
117: */
118: public EList getException() {
119: if (exception == null) {
120: exception = new EObjectContainmentEList(
121: ExceptionType.class, this ,
122: OwsPackage.EXCEPTION_REPORT_TYPE__EXCEPTION);
123: }
124: return exception;
125: }
126:
127: /**
128: * <!-- begin-user-doc -->
129: * <!-- end-user-doc -->
130: * @generated
131: */
132: public String getLanguage() {
133: return language;
134: }
135:
136: /**
137: * <!-- begin-user-doc -->
138: * <!-- end-user-doc -->
139: * @generated
140: */
141: public void setLanguage(String newLanguage) {
142: String oldLanguage = language;
143: language = newLanguage;
144: if (eNotificationRequired())
145: eNotify(new ENotificationImpl(this , Notification.SET,
146: OwsPackage.EXCEPTION_REPORT_TYPE__LANGUAGE,
147: oldLanguage, language));
148: }
149:
150: /**
151: * <!-- begin-user-doc -->
152: * <!-- end-user-doc -->
153: * @generated
154: */
155: public String getVersion() {
156: return version;
157: }
158:
159: /**
160: * <!-- begin-user-doc -->
161: * <!-- end-user-doc -->
162: * @generated
163: */
164: public void setVersion(String newVersion) {
165: String oldVersion = version;
166: version = newVersion;
167: if (eNotificationRequired())
168: eNotify(new ENotificationImpl(this , Notification.SET,
169: OwsPackage.EXCEPTION_REPORT_TYPE__VERSION,
170: oldVersion, version));
171: }
172:
173: /**
174: * <!-- begin-user-doc -->
175: * <!-- end-user-doc -->
176: * @generated
177: */
178: public NotificationChain eInverseRemove(InternalEObject otherEnd,
179: int featureID, NotificationChain msgs) {
180: switch (featureID) {
181: case OwsPackage.EXCEPTION_REPORT_TYPE__EXCEPTION:
182: return ((InternalEList) getException()).basicRemove(
183: otherEnd, msgs);
184: }
185: return super .eInverseRemove(otherEnd, featureID, msgs);
186: }
187:
188: /**
189: * <!-- begin-user-doc -->
190: * <!-- end-user-doc -->
191: * @generated
192: */
193: public Object eGet(int featureID, boolean resolve, boolean coreType) {
194: switch (featureID) {
195: case OwsPackage.EXCEPTION_REPORT_TYPE__EXCEPTION:
196: return getException();
197: case OwsPackage.EXCEPTION_REPORT_TYPE__LANGUAGE:
198: return getLanguage();
199: case OwsPackage.EXCEPTION_REPORT_TYPE__VERSION:
200: return getVersion();
201: }
202: return super .eGet(featureID, resolve, coreType);
203: }
204:
205: /**
206: * <!-- begin-user-doc -->
207: * <!-- end-user-doc -->
208: * @generated
209: */
210: public void eSet(int featureID, Object newValue) {
211: switch (featureID) {
212: case OwsPackage.EXCEPTION_REPORT_TYPE__EXCEPTION:
213: getException().clear();
214: getException().addAll((Collection) newValue);
215: return;
216: case OwsPackage.EXCEPTION_REPORT_TYPE__LANGUAGE:
217: setLanguage((String) newValue);
218: return;
219: case OwsPackage.EXCEPTION_REPORT_TYPE__VERSION:
220: setVersion((String) newValue);
221: return;
222: }
223: super .eSet(featureID, newValue);
224: }
225:
226: /**
227: * <!-- begin-user-doc -->
228: * <!-- end-user-doc -->
229: * @generated
230: */
231: public void eUnset(int featureID) {
232: switch (featureID) {
233: case OwsPackage.EXCEPTION_REPORT_TYPE__EXCEPTION:
234: getException().clear();
235: return;
236: case OwsPackage.EXCEPTION_REPORT_TYPE__LANGUAGE:
237: setLanguage(LANGUAGE_EDEFAULT);
238: return;
239: case OwsPackage.EXCEPTION_REPORT_TYPE__VERSION:
240: setVersion(VERSION_EDEFAULT);
241: return;
242: }
243: super .eUnset(featureID);
244: }
245:
246: /**
247: * <!-- begin-user-doc -->
248: * <!-- end-user-doc -->
249: * @generated
250: */
251: public boolean eIsSet(int featureID) {
252: switch (featureID) {
253: case OwsPackage.EXCEPTION_REPORT_TYPE__EXCEPTION:
254: return exception != null && !exception.isEmpty();
255: case OwsPackage.EXCEPTION_REPORT_TYPE__LANGUAGE:
256: return LANGUAGE_EDEFAULT == null ? language != null
257: : !LANGUAGE_EDEFAULT.equals(language);
258: case OwsPackage.EXCEPTION_REPORT_TYPE__VERSION:
259: return VERSION_EDEFAULT == null ? version != null
260: : !VERSION_EDEFAULT.equals(version);
261: }
262: return super .eIsSet(featureID);
263: }
264:
265: /**
266: * <!-- begin-user-doc -->
267: * <!-- end-user-doc -->
268: * @generated
269: */
270: public String toString() {
271: if (eIsProxy())
272: return super .toString();
273:
274: StringBuffer result = new StringBuffer(super .toString());
275: result.append(" (language: ");
276: result.append(language);
277: result.append(", version: ");
278: result.append(version);
279: result.append(')');
280: return result.toString();
281: }
282:
283: } //ExceptionReportTypeImpl
|