blob: 264856f89b2052159d373e28c1368a385a85b8a6 [file] [log] [blame]
package org.eclipse.stem.analysis.impl;
/*******************************************************************************
* Copyright (c) 2009 IBM Corporation and others.
* 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:
* IBM Corporation - initial API and implementation
*******************************************************************************/
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.util.BasicEList;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.emf.ecore.impl.EObjectImpl;
import org.eclipse.stem.analysis.AnalysisPackage;
import org.eclipse.stem.analysis.ErrorResult;
/**
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Error Result</b></em>'.
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
* <ul>
* <li>{@link org.eclipse.stem.analysis.impl.ErrorResultImpl#getErrorByTimeStep <em>Error By Time Step</em>}</li>
* <li>{@link org.eclipse.stem.analysis.impl.ErrorResultImpl#getError <em>Error</em>}</li>
* <li>{@link org.eclipse.stem.analysis.impl.ErrorResultImpl#getReferenceByTime <em>Reference By Time</em>}</li>
* <li>{@link org.eclipse.stem.analysis.impl.ErrorResultImpl#getModelByTime <em>Model By Time</em>}</li>
* <li>{@link org.eclipse.stem.analysis.impl.ErrorResultImpl#getValidationError <em>Validation Error</em>}</li>
* </ul>
* </p>
*
* @generated
*/
public class ErrorResultImpl extends EObjectImpl implements ErrorResult {
/**
* The cached value of the '{@link #getErrorByTimeStep() <em>Error By Time Step</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getErrorByTimeStep()
* @generated
* @ordered
*/
protected EList<Double> errorByTimeStep;
/**
* The default value of the '{@link #getError() <em>Error</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getError()
* @generated
* @ordered
*/
protected static final double ERROR_EDEFAULT = 0.0;
/**
* The cached value of the '{@link #getError() <em>Error</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getError()
* @generated
* @ordered
*/
protected double error = ERROR_EDEFAULT;
/**
* The cached value of the '{@link #getReferenceByTime() <em>Reference By Time</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getReferenceByTime()
* @generated
* @ordered
*/
protected EList<Double> referenceByTime;
/**
* The cached value of the '{@link #getModelByTime() <em>Model By Time</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getModelByTime()
* @generated
* @ordered
*/
protected EList<Double> modelByTime;
/**
* The default value of the '{@link #getValidationError() <em>Validation Error</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getValidationError()
* @generated
* @ordered
*/
protected static final double VALIDATION_ERROR_EDEFAULT = 0.0;
/**
* The cached value of the '{@link #getValidationError() <em>Validation Error</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getValidationError()
* @generated
* @ordered
*/
protected double validationError = VALIDATION_ERROR_EDEFAULT;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected ErrorResultImpl() {
super();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected EClass eStaticClass() {
return AnalysisPackage.Literals.ERROR_RESULT;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EList<Double> getErrorByTimeStep() {
return errorByTimeStep;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setErrorByTimeStep(EList<Double> newErrorByTimeStep) {
EList<Double> oldErrorByTimeStep = errorByTimeStep;
errorByTimeStep = newErrorByTimeStep;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, AnalysisPackage.ERROR_RESULT__ERROR_BY_TIME_STEP, oldErrorByTimeStep, errorByTimeStep));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public double getError() {
return error;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setError(double newError) {
double oldError = error;
error = newError;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, AnalysisPackage.ERROR_RESULT__ERROR, oldError, error));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EList<Double> getReferenceByTime() {
return referenceByTime;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setReferenceByTime(EList<Double> newReferenceByTime) {
EList<Double> oldReferenceByTime = referenceByTime;
referenceByTime = newReferenceByTime;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, AnalysisPackage.ERROR_RESULT__REFERENCE_BY_TIME, oldReferenceByTime, referenceByTime));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EList<Double> getModelByTime() {
return modelByTime;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setModelByTime(EList<Double> newModelByTime) {
EList<Double> oldModelByTime = modelByTime;
modelByTime = newModelByTime;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, AnalysisPackage.ERROR_RESULT__MODEL_BY_TIME, oldModelByTime, modelByTime));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public double getValidationError() {
return validationError;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setValidationError(double newValidationError) {
double oldValidationError = validationError;
validationError = newValidationError;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, AnalysisPackage.ERROR_RESULT__VALIDATION_ERROR, oldValidationError, validationError));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
case AnalysisPackage.ERROR_RESULT__ERROR_BY_TIME_STEP:
return getErrorByTimeStep();
case AnalysisPackage.ERROR_RESULT__ERROR:
return getError();
case AnalysisPackage.ERROR_RESULT__REFERENCE_BY_TIME:
return getReferenceByTime();
case AnalysisPackage.ERROR_RESULT__MODEL_BY_TIME:
return getModelByTime();
case AnalysisPackage.ERROR_RESULT__VALIDATION_ERROR:
return getValidationError();
}
return super.eGet(featureID, resolve, coreType);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@SuppressWarnings("unchecked")
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
case AnalysisPackage.ERROR_RESULT__ERROR_BY_TIME_STEP:
setErrorByTimeStep((EList<Double>)newValue);
return;
case AnalysisPackage.ERROR_RESULT__ERROR:
setError((Double)newValue);
return;
case AnalysisPackage.ERROR_RESULT__REFERENCE_BY_TIME:
setReferenceByTime((EList<Double>)newValue);
return;
case AnalysisPackage.ERROR_RESULT__MODEL_BY_TIME:
setModelByTime((EList<Double>)newValue);
return;
case AnalysisPackage.ERROR_RESULT__VALIDATION_ERROR:
setValidationError((Double)newValue);
return;
}
super.eSet(featureID, newValue);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void eUnset(int featureID) {
switch (featureID) {
case AnalysisPackage.ERROR_RESULT__ERROR_BY_TIME_STEP:
setErrorByTimeStep((EList<Double>)null);
return;
case AnalysisPackage.ERROR_RESULT__ERROR:
setError(ERROR_EDEFAULT);
return;
case AnalysisPackage.ERROR_RESULT__REFERENCE_BY_TIME:
setReferenceByTime((EList<Double>)null);
return;
case AnalysisPackage.ERROR_RESULT__MODEL_BY_TIME:
setModelByTime((EList<Double>)null);
return;
case AnalysisPackage.ERROR_RESULT__VALIDATION_ERROR:
setValidationError(VALIDATION_ERROR_EDEFAULT);
return;
}
super.eUnset(featureID);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
case AnalysisPackage.ERROR_RESULT__ERROR_BY_TIME_STEP:
return errorByTimeStep != null;
case AnalysisPackage.ERROR_RESULT__ERROR:
return error != ERROR_EDEFAULT;
case AnalysisPackage.ERROR_RESULT__REFERENCE_BY_TIME:
return referenceByTime != null;
case AnalysisPackage.ERROR_RESULT__MODEL_BY_TIME:
return modelByTime != null;
case AnalysisPackage.ERROR_RESULT__VALIDATION_ERROR:
return validationError != VALIDATION_ERROR_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(" (errorByTimeStep: ");
result.append(errorByTimeStep);
result.append(", error: ");
result.append(error);
result.append(", referenceByTime: ");
result.append(referenceByTime);
result.append(", modelByTime: ");
result.append(modelByTime);
result.append(", validationError: ");
result.append(validationError);
result.append(')');
return result.toString();
}
public ErrorResult copy() {
ErrorResultImpl res = new ErrorResultImpl();
res.setError(this.getError());
res.setValidationError(this.getValidationError());
EList<Double>newlist = new BasicEList<Double>();
if(this.getErrorByTimeStep()!=null) {
for(double d:this.getErrorByTimeStep())newlist.add(d);
}
res.setErrorByTimeStep(newlist);
return res;
}
} //ErrorResultImpl