/** * Copyright (c) 2016 Inria * 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: * - Philippe Merle <philippe.merle@inria.fr> */ package org.occiware.clouddesigner.occi.monitoring.impl; import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.impl.ENotificationImpl; import org.occiware.clouddesigner.occi.impl.ResourceImpl; import org.occiware.clouddesigner.occi.monitoring.MonitoringPackage; import org.occiware.clouddesigner.occi.monitoring.Sensor; /** * <!-- begin-user-doc --> * An implementation of the model object '<em><b>Sensor</b></em>'. * <!-- end-user-doc --> * <p> * The following features are implemented: * </p> * <ul> * <li>{@link org.occiware.clouddesigner.occi.monitoring.impl.SensorImpl#getTimebase <em>Timebase</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.monitoring.impl.SensorImpl#getTimestart <em>Timestart</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.monitoring.impl.SensorImpl#getTimestop <em>Timestop</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.monitoring.impl.SensorImpl#getPeriod <em>Period</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.monitoring.impl.SensorImpl#getGranularity <em>Granularity</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.monitoring.impl.SensorImpl#getAccuracy <em>Accuracy</em>}</li> * </ul> * * @generated */ public class SensorImpl extends ResourceImpl implements Sensor { /** * The default value of the '{@link #getTimebase() <em>Timebase</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getTimebase() * @generated * @ordered */ protected static final String TIMEBASE_EDEFAULT = null; /** * The cached value of the '{@link #getTimebase() <em>Timebase</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getTimebase() * @generated * @ordered */ protected String timebase = TIMEBASE_EDEFAULT; /** * The default value of the '{@link #getTimestart() <em>Timestart</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getTimestart() * @generated * @ordered */ protected static final int TIMESTART_EDEFAULT = 0; /** * The cached value of the '{@link #getTimestart() <em>Timestart</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getTimestart() * @generated * @ordered */ protected int timestart = TIMESTART_EDEFAULT; /** * The default value of the '{@link #getTimestop() <em>Timestop</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getTimestop() * @generated * @ordered */ protected static final int TIMESTOP_EDEFAULT = 0; /** * The cached value of the '{@link #getTimestop() <em>Timestop</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getTimestop() * @generated * @ordered */ protected int timestop = TIMESTOP_EDEFAULT; /** * The default value of the '{@link #getPeriod() <em>Period</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getPeriod() * @generated * @ordered */ protected static final int PERIOD_EDEFAULT = 0; /** * The cached value of the '{@link #getPeriod() <em>Period</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getPeriod() * @generated * @ordered */ protected int period = PERIOD_EDEFAULT; /** * The default value of the '{@link #getGranularity() <em>Granularity</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getGranularity() * @generated * @ordered */ protected static final int GRANULARITY_EDEFAULT = 0; /** * The cached value of the '{@link #getGranularity() <em>Granularity</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getGranularity() * @generated * @ordered */ protected int granularity = GRANULARITY_EDEFAULT; /** * The default value of the '{@link #getAccuracy() <em>Accuracy</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getAccuracy() * @generated * @ordered */ protected static final int ACCURACY_EDEFAULT = 0; /** * The cached value of the '{@link #getAccuracy() <em>Accuracy</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getAccuracy() * @generated * @ordered */ protected int accuracy = ACCURACY_EDEFAULT; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ protected SensorImpl() { super(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override protected EClass eStaticClass() { return MonitoringPackage.Literals.SENSOR; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public String getTimebase() { return timebase; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setTimebase(String newTimebase) { String oldTimebase = timebase; timebase = newTimebase; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, MonitoringPackage.SENSOR__TIMEBASE, oldTimebase, timebase)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public int getTimestart() { return timestart; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setTimestart(int newTimestart) { int oldTimestart = timestart; timestart = newTimestart; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, MonitoringPackage.SENSOR__TIMESTART, oldTimestart, timestart)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public int getTimestop() { return timestop; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setTimestop(int newTimestop) { int oldTimestop = timestop; timestop = newTimestop; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, MonitoringPackage.SENSOR__TIMESTOP, oldTimestop, timestop)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public int getPeriod() { return period; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setPeriod(int newPeriod) { int oldPeriod = period; period = newPeriod; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, MonitoringPackage.SENSOR__PERIOD, oldPeriod, period)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public int getGranularity() { return granularity; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setGranularity(int newGranularity) { int oldGranularity = granularity; granularity = newGranularity; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, MonitoringPackage.SENSOR__GRANULARITY, oldGranularity, granularity)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public int getAccuracy() { return accuracy; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setAccuracy(int newAccuracy) { int oldAccuracy = accuracy; accuracy = newAccuracy; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, MonitoringPackage.SENSOR__ACCURACY, oldAccuracy, accuracy)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public Object eGet(int featureID, boolean resolve, boolean coreType) { switch (featureID) { case MonitoringPackage.SENSOR__TIMEBASE: return getTimebase(); case MonitoringPackage.SENSOR__TIMESTART: return getTimestart(); case MonitoringPackage.SENSOR__TIMESTOP: return getTimestop(); case MonitoringPackage.SENSOR__PERIOD: return getPeriod(); case MonitoringPackage.SENSOR__GRANULARITY: return getGranularity(); case MonitoringPackage.SENSOR__ACCURACY: return getAccuracy(); } return super.eGet(featureID, resolve, coreType); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void eSet(int featureID, Object newValue) { switch (featureID) { case MonitoringPackage.SENSOR__TIMEBASE: setTimebase((String)newValue); return; case MonitoringPackage.SENSOR__TIMESTART: setTimestart((Integer)newValue); return; case MonitoringPackage.SENSOR__TIMESTOP: setTimestop((Integer)newValue); return; case MonitoringPackage.SENSOR__PERIOD: setPeriod((Integer)newValue); return; case MonitoringPackage.SENSOR__GRANULARITY: setGranularity((Integer)newValue); return; case MonitoringPackage.SENSOR__ACCURACY: setAccuracy((Integer)newValue); return; } super.eSet(featureID, newValue); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void eUnset(int featureID) { switch (featureID) { case MonitoringPackage.SENSOR__TIMEBASE: setTimebase(TIMEBASE_EDEFAULT); return; case MonitoringPackage.SENSOR__TIMESTART: setTimestart(TIMESTART_EDEFAULT); return; case MonitoringPackage.SENSOR__TIMESTOP: setTimestop(TIMESTOP_EDEFAULT); return; case MonitoringPackage.SENSOR__PERIOD: setPeriod(PERIOD_EDEFAULT); return; case MonitoringPackage.SENSOR__GRANULARITY: setGranularity(GRANULARITY_EDEFAULT); return; case MonitoringPackage.SENSOR__ACCURACY: setAccuracy(ACCURACY_EDEFAULT); return; } super.eUnset(featureID); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public boolean eIsSet(int featureID) { switch (featureID) { case MonitoringPackage.SENSOR__TIMEBASE: return TIMEBASE_EDEFAULT == null ? timebase != null : !TIMEBASE_EDEFAULT.equals(timebase); case MonitoringPackage.SENSOR__TIMESTART: return timestart != TIMESTART_EDEFAULT; case MonitoringPackage.SENSOR__TIMESTOP: return timestop != TIMESTOP_EDEFAULT; case MonitoringPackage.SENSOR__PERIOD: return period != PERIOD_EDEFAULT; case MonitoringPackage.SENSOR__GRANULARITY: return granularity != GRANULARITY_EDEFAULT; case MonitoringPackage.SENSOR__ACCURACY: return accuracy != ACCURACY_EDEFAULT; } 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(" (timebase: "); result.append(timebase); result.append(", timestart: "); result.append(timestart); result.append(", timestop: "); result.append(timestop); result.append(", period: "); result.append(period); result.append(", granularity: "); result.append(granularity); result.append(", accuracy: "); result.append(accuracy); result.append(')'); return result.toString(); } } //SensorImpl