/******************************************************************************* * Copyright (c) 2006-2012 * Software Technology Group, Dresden University of Technology * DevBoost GmbH, Berlin, Amtsgericht Charlottenburg, HRB 140026 * * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Software Technology Group - TU Dresden, Germany; * DevBoost GmbH - Berlin, Germany * - initial API and implementation ******************************************************************************/ /** * <copyright> * </copyright> * * $Id$ */ package org.oasisopen.names.tc.opendocument.xmlns.table.impl; 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; import org.oasisopen.names.tc.opendocument.xmlns.table.DataPilotSortInfoType; import org.oasisopen.names.tc.opendocument.xmlns.table.OrderType; import org.oasisopen.names.tc.opendocument.xmlns.table.SortModeType; import org.oasisopen.names.tc.opendocument.xmlns.table.TablePackage; /** * <!-- begin-user-doc --> * An implementation of the model object '<em><b>Data Pilot Sort Info Type</b></em>'. * <!-- end-user-doc --> * <p> * The following features are implemented: * <ul> * <li>{@link org.oasisopen.names.tc.opendocument.xmlns.table.impl.DataPilotSortInfoTypeImpl#getDataField <em>Data Field</em>}</li> * <li>{@link org.oasisopen.names.tc.opendocument.xmlns.table.impl.DataPilotSortInfoTypeImpl#getOrder <em>Order</em>}</li> * <li>{@link org.oasisopen.names.tc.opendocument.xmlns.table.impl.DataPilotSortInfoTypeImpl#getSortMode <em>Sort Mode</em>}</li> * </ul> * </p> * * @generated */ public class DataPilotSortInfoTypeImpl extends EObjectImpl implements DataPilotSortInfoType { /** * The default value of the '{@link #getDataField() <em>Data Field</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getDataField() * @generated * @ordered */ protected static final String DATA_FIELD_EDEFAULT = null; /** * The cached value of the '{@link #getDataField() <em>Data Field</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getDataField() * @generated * @ordered */ protected String dataField = DATA_FIELD_EDEFAULT; /** * The default value of the '{@link #getOrder() <em>Order</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getOrder() * @generated * @ordered */ protected static final OrderType ORDER_EDEFAULT = OrderType.ASCENDING; /** * The cached value of the '{@link #getOrder() <em>Order</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getOrder() * @generated * @ordered */ protected OrderType order = ORDER_EDEFAULT; /** * This is true if the Order attribute has been set. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ protected boolean orderESet; /** * The default value of the '{@link #getSortMode() <em>Sort Mode</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getSortMode() * @generated * @ordered */ protected static final SortModeType SORT_MODE_EDEFAULT = SortModeType.DATA; /** * The cached value of the '{@link #getSortMode() <em>Sort Mode</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getSortMode() * @generated * @ordered */ protected SortModeType sortMode = SORT_MODE_EDEFAULT; /** * This is true if the Sort Mode attribute has been set. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ protected boolean sortModeESet; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ protected DataPilotSortInfoTypeImpl() { super(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override protected EClass eStaticClass() { return TablePackage.eINSTANCE.getDataPilotSortInfoType(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public String getDataField() { return dataField; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setDataField(String newDataField) { String oldDataField = dataField; dataField = newDataField; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, TablePackage.DATA_PILOT_SORT_INFO_TYPE__DATA_FIELD, oldDataField, dataField)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public OrderType getOrder() { return order; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setOrder(OrderType newOrder) { OrderType oldOrder = order; order = newOrder == null ? ORDER_EDEFAULT : newOrder; boolean oldOrderESet = orderESet; orderESet = true; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, TablePackage.DATA_PILOT_SORT_INFO_TYPE__ORDER, oldOrder, order, !oldOrderESet)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void unsetOrder() { OrderType oldOrder = order; boolean oldOrderESet = orderESet; order = ORDER_EDEFAULT; orderESet = false; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.UNSET, TablePackage.DATA_PILOT_SORT_INFO_TYPE__ORDER, oldOrder, ORDER_EDEFAULT, oldOrderESet)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public boolean isSetOrder() { return orderESet; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public SortModeType getSortMode() { return sortMode; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setSortMode(SortModeType newSortMode) { SortModeType oldSortMode = sortMode; sortMode = newSortMode == null ? SORT_MODE_EDEFAULT : newSortMode; boolean oldSortModeESet = sortModeESet; sortModeESet = true; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, TablePackage.DATA_PILOT_SORT_INFO_TYPE__SORT_MODE, oldSortMode, sortMode, !oldSortModeESet)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void unsetSortMode() { SortModeType oldSortMode = sortMode; boolean oldSortModeESet = sortModeESet; sortMode = SORT_MODE_EDEFAULT; sortModeESet = false; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.UNSET, TablePackage.DATA_PILOT_SORT_INFO_TYPE__SORT_MODE, oldSortMode, SORT_MODE_EDEFAULT, oldSortModeESet)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public boolean isSetSortMode() { return sortModeESet; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public Object eGet(int featureID, boolean resolve, boolean coreType) { switch (featureID) { case TablePackage.DATA_PILOT_SORT_INFO_TYPE__DATA_FIELD: return getDataField(); case TablePackage.DATA_PILOT_SORT_INFO_TYPE__ORDER: return getOrder(); case TablePackage.DATA_PILOT_SORT_INFO_TYPE__SORT_MODE: return getSortMode(); } return super.eGet(featureID, resolve, coreType); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void eSet(int featureID, Object newValue) { switch (featureID) { case TablePackage.DATA_PILOT_SORT_INFO_TYPE__DATA_FIELD: setDataField((String)newValue); return; case TablePackage.DATA_PILOT_SORT_INFO_TYPE__ORDER: setOrder((OrderType)newValue); return; case TablePackage.DATA_PILOT_SORT_INFO_TYPE__SORT_MODE: setSortMode((SortModeType)newValue); return; } super.eSet(featureID, newValue); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void eUnset(int featureID) { switch (featureID) { case TablePackage.DATA_PILOT_SORT_INFO_TYPE__DATA_FIELD: setDataField(DATA_FIELD_EDEFAULT); return; case TablePackage.DATA_PILOT_SORT_INFO_TYPE__ORDER: unsetOrder(); return; case TablePackage.DATA_PILOT_SORT_INFO_TYPE__SORT_MODE: unsetSortMode(); return; } super.eUnset(featureID); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public boolean eIsSet(int featureID) { switch (featureID) { case TablePackage.DATA_PILOT_SORT_INFO_TYPE__DATA_FIELD: return DATA_FIELD_EDEFAULT == null ? dataField != null : !DATA_FIELD_EDEFAULT.equals(dataField); case TablePackage.DATA_PILOT_SORT_INFO_TYPE__ORDER: return isSetOrder(); case TablePackage.DATA_PILOT_SORT_INFO_TYPE__SORT_MODE: return isSetSortMode(); } return super.eIsSet(featureID); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public String toString() { if (eIsProxy()) return super.toString(); StringBuffer result = new StringBuffer(super.toString()); result.append(" (dataField: "); result.append(dataField); result.append(", order: "); if (orderESet) result.append(order); else result.append("<unset>"); result.append(", sortMode: "); if (sortModeESet) result.append(sortMode); else result.append("<unset>"); result.append(')'); return result.toString(); } } //DataPilotSortInfoTypeImpl