001 /**
002 * <copyright>
003 * </copyright>
004 *
005 * $Id$
006 */
007 package com.hammurapi.review.impl;
008
009 import java.util.HashMap;
010 import java.util.Map;
011
012 import org.eclipse.emf.common.notify.Notification;
013 import org.eclipse.emf.common.util.BasicEList;
014 import org.eclipse.emf.common.util.EList;
015 import org.eclipse.emf.ecore.EClass;
016 import org.eclipse.emf.ecore.impl.ENotificationImpl;
017
018 import com.hammurapi.review.ReviewPackage;
019 import com.hammurapi.review.Violation;
020
021 /**
022 * <!-- begin-user-doc -->
023 * An implementation of the model object '<em><b>Violation</b></em>'.
024 * <!-- end-user-doc -->
025 * <p>
026 * The following features are implemented:
027 * <ul>
028 * <li>{@link com.hammurapi.review.impl.ViolationImpl#getMessage <em>Message</em>}</li>
029 * </ul>
030 * </p>
031 *
032 * @generated
033 */
034 public class ViolationImpl extends ObservationImpl implements Violation {
035 /**
036 * The default value of the '{@link #getMessage() <em>Message</em>}' attribute.
037 * <!-- begin-user-doc -->
038 * <!-- end-user-doc -->
039 * @see #getMessage()
040 * @generated
041 * @ordered
042 */
043 protected static final String MESSAGE_EDEFAULT = null;
044
045 /**
046 * The cached value of the '{@link #getMessage() <em>Message</em>}' attribute.
047 * <!-- begin-user-doc -->
048 * <!-- end-user-doc -->
049 * @see #getMessage()
050 * @generated
051 * @ordered
052 */
053 protected String message = MESSAGE_EDEFAULT;
054
055 /**
056 * <!-- begin-user-doc -->
057 * <!-- end-user-doc -->
058 * @generated
059 */
060 protected ViolationImpl() {
061 super();
062 }
063
064 /**
065 * <!-- begin-user-doc -->
066 * <!-- end-user-doc -->
067 * @generated
068 */
069 @Override
070 protected EClass eStaticClass() {
071 return ReviewPackage.Literals.VIOLATION;
072 }
073
074 /**
075 * <!-- begin-user-doc -->
076 * <!-- end-user-doc -->
077 * @generated
078 */
079 public String getMessage() {
080 return message;
081 }
082
083 /**
084 * <!-- begin-user-doc -->
085 * <!-- end-user-doc -->
086 * @generated
087 */
088 public void setMessage(String newMessage) {
089 String oldMessage = message;
090 message = newMessage;
091 if (eNotificationRequired())
092 eNotify(new ENotificationImpl(this, Notification.SET, ReviewPackage.VIOLATION__MESSAGE, oldMessage, message));
093 }
094
095 private Map<String, Object> properties = new HashMap<String, Object>();
096
097 /**
098 * <!-- begin-user-doc -->
099 * <!-- end-user-doc -->
100 * @generated
101 */
102 public void setProperty(String name, Object value) {
103 // TODO: implement this method
104 // Ensure that you remove @generated or mark it @generated NOT
105 throw new UnsupportedOperationException();
106 }
107
108 /**
109 * <!-- begin-user-doc -->
110 * <!-- end-user-doc -->
111 * @generated NOT
112 */
113 public Object getProperty(String name) {
114 return properties.get(name);
115 }
116
117 /**
118 * <!-- begin-user-doc -->
119 * <!-- end-user-doc -->
120 * @generated
121 */
122 public EList<String> getPropertyNames() {
123 // TODO: implement this method
124 // Ensure that you remove @generated or mark it @generated NOT
125 throw new UnsupportedOperationException();
126 }
127
128 /**
129 * <!-- begin-user-doc -->
130 * <!-- end-user-doc -->
131 * @generated
132 */
133 @Override
134 public Object eGet(int featureID, boolean resolve, boolean coreType) {
135 switch (featureID) {
136 case ReviewPackage.VIOLATION__MESSAGE:
137 return getMessage();
138 }
139 return super.eGet(featureID, resolve, coreType);
140 }
141
142 /**
143 * <!-- begin-user-doc -->
144 * <!-- end-user-doc -->
145 * @generated
146 */
147 @Override
148 public void eSet(int featureID, Object newValue) {
149 switch (featureID) {
150 case ReviewPackage.VIOLATION__MESSAGE:
151 setMessage((String)newValue);
152 return;
153 }
154 super.eSet(featureID, newValue);
155 }
156
157 /**
158 * <!-- begin-user-doc -->
159 * <!-- end-user-doc -->
160 * @generated
161 */
162 @Override
163 public void eUnset(int featureID) {
164 switch (featureID) {
165 case ReviewPackage.VIOLATION__MESSAGE:
166 setMessage(MESSAGE_EDEFAULT);
167 return;
168 }
169 super.eUnset(featureID);
170 }
171
172 /**
173 * <!-- begin-user-doc -->
174 * <!-- end-user-doc -->
175 * @generated
176 */
177 @Override
178 public boolean eIsSet(int featureID) {
179 switch (featureID) {
180 case ReviewPackage.VIOLATION__MESSAGE:
181 return MESSAGE_EDEFAULT == null ? message != null : !MESSAGE_EDEFAULT.equals(message);
182 }
183 return super.eIsSet(featureID);
184 }
185
186 /**
187 * <!-- begin-user-doc -->
188 * <!-- end-user-doc -->
189 * @generated
190 */
191 @Override
192 public String toString() {
193 if (eIsProxy()) return super.toString();
194
195 StringBuffer result = new StringBuffer(super.toString());
196 result.append(" (message: ");
197 result.append(message);
198 result.append(')');
199 return result.toString();
200 }
201
202 } //ViolationImpl