/**
*
*
*
* $Id$
*/
package net.opengis.wfsv.impl;
import javax.xml.namespace.QName;
import net.opengis.wfsv.DifferenceQueryType;
import net.opengis.wfsv.WfsvPackage;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.emf.ecore.impl.EObjectImpl;
/**
*
* An implementation of the model object 'Difference Query Type'.
*
*
* The following features are implemented:
*
* - {@link net.opengis.wfsv.impl.DifferenceQueryTypeImpl#getFilter Filter}
* - {@link net.opengis.wfsv.impl.DifferenceQueryTypeImpl#getFromFeatureVersion From Feature Version}
* - {@link net.opengis.wfsv.impl.DifferenceQueryTypeImpl#getSrsName Srs Name}
* - {@link net.opengis.wfsv.impl.DifferenceQueryTypeImpl#getToFeatureVersion To Feature Version}
* - {@link net.opengis.wfsv.impl.DifferenceQueryTypeImpl#getTypeName Type Name}
*
*
*
* @generated
*/
public class DifferenceQueryTypeImpl extends EObjectImpl implements DifferenceQueryType {
/**
* The default value of the '{@link #getFilter() Filter}' attribute.
*
*
* @see #getFilter()
* @generated
* @ordered
*/
protected static final Object FILTER_EDEFAULT = null;
/**
* The cached value of the '{@link #getFilter() Filter}' attribute.
*
*
* @see #getFilter()
* @generated
* @ordered
*/
protected Object filter = FILTER_EDEFAULT;
/**
* The default value of the '{@link #getFromFeatureVersion() From Feature Version}' attribute.
*
*
* @see #getFromFeatureVersion()
* @generated
* @ordered
*/
protected static final String FROM_FEATURE_VERSION_EDEFAULT = "FIRST";
/**
* The cached value of the '{@link #getFromFeatureVersion() From Feature Version}' attribute.
*
*
* @see #getFromFeatureVersion()
* @generated
* @ordered
*/
protected String fromFeatureVersion = FROM_FEATURE_VERSION_EDEFAULT;
/**
* This is true if the From Feature Version attribute has been set.
*
*
* @generated
* @ordered
*/
protected boolean fromFeatureVersionESet;
/**
* The default value of the '{@link #getSrsName() Srs Name}' attribute.
*
*
* @see #getSrsName()
* @generated
* @ordered
*/
protected static final String SRS_NAME_EDEFAULT = null;
/**
* The cached value of the '{@link #getSrsName() Srs Name}' attribute.
*
*
* @see #getSrsName()
* @generated
* @ordered
*/
protected String srsName = SRS_NAME_EDEFAULT;
/**
* The default value of the '{@link #getToFeatureVersion() To Feature Version}' attribute.
*
*
* @see #getToFeatureVersion()
* @generated
* @ordered
*/
protected static final String TO_FEATURE_VERSION_EDEFAULT = "LAST";
/**
* The cached value of the '{@link #getToFeatureVersion() To Feature Version}' attribute.
*
*
* @see #getToFeatureVersion()
* @generated
* @ordered
*/
protected String toFeatureVersion = TO_FEATURE_VERSION_EDEFAULT;
/**
* This is true if the To Feature Version attribute has been set.
*
*
* @generated
* @ordered
*/
protected boolean toFeatureVersionESet;
/**
* The default value of the '{@link #getTypeName() Type Name}' attribute.
*
*
* @see #getTypeName()
* @generated
* @ordered
*/
protected static final QName TYPE_NAME_EDEFAULT = null;
/**
* The cached value of the '{@link #getTypeName() Type Name}' attribute.
*
*
* @see #getTypeName()
* @generated
* @ordered
*/
protected QName typeName = TYPE_NAME_EDEFAULT;
/**
*
*
* @generated
*/
protected DifferenceQueryTypeImpl() {
super();
}
/**
*
*
* @generated
*/
protected EClass eStaticClass() {
return WfsvPackage.Literals.DIFFERENCE_QUERY_TYPE;
}
/**
*
*
* @generated
*/
public Object getFilter() {
return filter;
}
/**
*
*
* @generated
*/
public void setFilter(Object newFilter) {
Object oldFilter = filter;
filter = newFilter;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, WfsvPackage.DIFFERENCE_QUERY_TYPE__FILTER, oldFilter, filter));
}
/**
*
*
* @generated
*/
public String getFromFeatureVersion() {
return fromFeatureVersion;
}
/**
*
*
* @generated
*/
public void setFromFeatureVersion(String newFromFeatureVersion) {
String oldFromFeatureVersion = fromFeatureVersion;
fromFeatureVersion = newFromFeatureVersion;
boolean oldFromFeatureVersionESet = fromFeatureVersionESet;
fromFeatureVersionESet = true;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, WfsvPackage.DIFFERENCE_QUERY_TYPE__FROM_FEATURE_VERSION, oldFromFeatureVersion, fromFeatureVersion, !oldFromFeatureVersionESet));
}
/**
*
*
* @generated
*/
public void unsetFromFeatureVersion() {
String oldFromFeatureVersion = fromFeatureVersion;
boolean oldFromFeatureVersionESet = fromFeatureVersionESet;
fromFeatureVersion = FROM_FEATURE_VERSION_EDEFAULT;
fromFeatureVersionESet = false;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.UNSET, WfsvPackage.DIFFERENCE_QUERY_TYPE__FROM_FEATURE_VERSION, oldFromFeatureVersion, FROM_FEATURE_VERSION_EDEFAULT, oldFromFeatureVersionESet));
}
/**
*
*
* @generated
*/
public boolean isSetFromFeatureVersion() {
return fromFeatureVersionESet;
}
/**
*
*
* @generated
*/
public String getSrsName() {
return srsName;
}
/**
*
*
* @generated
*/
public void setSrsName(String newSrsName) {
String oldSrsName = srsName;
srsName = newSrsName;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, WfsvPackage.DIFFERENCE_QUERY_TYPE__SRS_NAME, oldSrsName, srsName));
}
/**
*
*
* @generated
*/
public String getToFeatureVersion() {
return toFeatureVersion;
}
/**
*
*
* @generated
*/
public void setToFeatureVersion(String newToFeatureVersion) {
String oldToFeatureVersion = toFeatureVersion;
toFeatureVersion = newToFeatureVersion;
boolean oldToFeatureVersionESet = toFeatureVersionESet;
toFeatureVersionESet = true;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, WfsvPackage.DIFFERENCE_QUERY_TYPE__TO_FEATURE_VERSION, oldToFeatureVersion, toFeatureVersion, !oldToFeatureVersionESet));
}
/**
*
*
* @generated
*/
public void unsetToFeatureVersion() {
String oldToFeatureVersion = toFeatureVersion;
boolean oldToFeatureVersionESet = toFeatureVersionESet;
toFeatureVersion = TO_FEATURE_VERSION_EDEFAULT;
toFeatureVersionESet = false;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.UNSET, WfsvPackage.DIFFERENCE_QUERY_TYPE__TO_FEATURE_VERSION, oldToFeatureVersion, TO_FEATURE_VERSION_EDEFAULT, oldToFeatureVersionESet));
}
/**
*
*
* @generated
*/
public boolean isSetToFeatureVersion() {
return toFeatureVersionESet;
}
/**
*
*
* @generated
*/
public QName getTypeName() {
return typeName;
}
/**
*
*
* @generated
*/
public void setTypeName(QName newTypeName) {
QName oldTypeName = typeName;
typeName = newTypeName;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, WfsvPackage.DIFFERENCE_QUERY_TYPE__TYPE_NAME, oldTypeName, typeName));
}
/**
*
*
* @generated
*/
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
case WfsvPackage.DIFFERENCE_QUERY_TYPE__FILTER:
return getFilter();
case WfsvPackage.DIFFERENCE_QUERY_TYPE__FROM_FEATURE_VERSION:
return getFromFeatureVersion();
case WfsvPackage.DIFFERENCE_QUERY_TYPE__SRS_NAME:
return getSrsName();
case WfsvPackage.DIFFERENCE_QUERY_TYPE__TO_FEATURE_VERSION:
return getToFeatureVersion();
case WfsvPackage.DIFFERENCE_QUERY_TYPE__TYPE_NAME:
return getTypeName();
}
return super.eGet(featureID, resolve, coreType);
}
/**
*
*
* @generated
*/
public void eSet(int featureID, Object newValue) {
switch (featureID) {
case WfsvPackage.DIFFERENCE_QUERY_TYPE__FILTER:
setFilter(newValue);
return;
case WfsvPackage.DIFFERENCE_QUERY_TYPE__FROM_FEATURE_VERSION:
setFromFeatureVersion((String)newValue);
return;
case WfsvPackage.DIFFERENCE_QUERY_TYPE__SRS_NAME:
setSrsName((String)newValue);
return;
case WfsvPackage.DIFFERENCE_QUERY_TYPE__TO_FEATURE_VERSION:
setToFeatureVersion((String)newValue);
return;
case WfsvPackage.DIFFERENCE_QUERY_TYPE__TYPE_NAME:
setTypeName((QName)newValue);
return;
}
super.eSet(featureID, newValue);
}
/**
*
*
* @generated
*/
public void eUnset(int featureID) {
switch (featureID) {
case WfsvPackage.DIFFERENCE_QUERY_TYPE__FILTER:
setFilter(FILTER_EDEFAULT);
return;
case WfsvPackage.DIFFERENCE_QUERY_TYPE__FROM_FEATURE_VERSION:
unsetFromFeatureVersion();
return;
case WfsvPackage.DIFFERENCE_QUERY_TYPE__SRS_NAME:
setSrsName(SRS_NAME_EDEFAULT);
return;
case WfsvPackage.DIFFERENCE_QUERY_TYPE__TO_FEATURE_VERSION:
unsetToFeatureVersion();
return;
case WfsvPackage.DIFFERENCE_QUERY_TYPE__TYPE_NAME:
setTypeName(TYPE_NAME_EDEFAULT);
return;
}
super.eUnset(featureID);
}
/**
*
*
* @generated
*/
public boolean eIsSet(int featureID) {
switch (featureID) {
case WfsvPackage.DIFFERENCE_QUERY_TYPE__FILTER:
return FILTER_EDEFAULT == null ? filter != null : !FILTER_EDEFAULT.equals(filter);
case WfsvPackage.DIFFERENCE_QUERY_TYPE__FROM_FEATURE_VERSION:
return isSetFromFeatureVersion();
case WfsvPackage.DIFFERENCE_QUERY_TYPE__SRS_NAME:
return SRS_NAME_EDEFAULT == null ? srsName != null : !SRS_NAME_EDEFAULT.equals(srsName);
case WfsvPackage.DIFFERENCE_QUERY_TYPE__TO_FEATURE_VERSION:
return isSetToFeatureVersion();
case WfsvPackage.DIFFERENCE_QUERY_TYPE__TYPE_NAME:
return TYPE_NAME_EDEFAULT == null ? typeName != null : !TYPE_NAME_EDEFAULT.equals(typeName);
}
return super.eIsSet(featureID);
}
/**
*
*
* @generated
*/
public String toString() {
if (eIsProxy()) return super.toString();
StringBuffer result = new StringBuffer(super.toString());
result.append(" (filter: ");
result.append(filter);
result.append(", fromFeatureVersion: ");
if (fromFeatureVersionESet) result.append(fromFeatureVersion); else result.append("");
result.append(", srsName: ");
result.append(srsName);
result.append(", toFeatureVersion: ");
if (toFeatureVersionESet) result.append(toFeatureVersion); else result.append("");
result.append(", typeName: ");
result.append(typeName);
result.append(')');
return result.toString();
}
} //DifferenceQueryTypeImpl