/**
*/
package org.pdtextensions.semanticanalysis.model.validators.impl;
import org.eclipse.dltk.compiler.problem.ProblemSeverity;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EDataType;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.impl.EFactoryImpl;
import org.eclipse.emf.ecore.plugin.EcorePlugin;
import org.pdtextensions.internal.semanticanalysis.validation.PEXProblemIdentifier;
import org.pdtextensions.semanticanalysis.model.validators.*;
import org.pdtextensions.semanticanalysis.validation.IValidatorFactory;
/**
* <!-- begin-user-doc -->
* An implementation of the model <b>Factory</b>.
* <!-- end-user-doc -->
* @generated
*/
public class ValidatorsFactoryImpl extends EFactoryImpl implements ValidatorsFactory {
/**
* Creates the default factory implementation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static ValidatorsFactory init() {
try {
ValidatorsFactory theValidatorsFactory = (ValidatorsFactory)EPackage.Registry.INSTANCE.getEFactory(ValidatorsPackage.eNS_URI);
if (theValidatorsFactory != null) {
return theValidatorsFactory;
}
}
catch (Exception exception) {
EcorePlugin.INSTANCE.log(exception);
}
return new ValidatorsFactoryImpl();
}
/**
* Creates an instance of the factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public ValidatorsFactoryImpl() {
super();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public EObject create(EClass eClass) {
switch (eClass.getClassifierID()) {
case ValidatorsPackage.VALIDATOR: return createValidator();
case ValidatorsPackage.CATEGORY: return createCategory();
case ValidatorsPackage.TYPE: return createType();
default:
throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
}
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object createFromString(EDataType eDataType, String initialValue) {
switch (eDataType.getClassifierID()) {
case ValidatorsPackage.VALIDATOR_FACTORY:
return createValidatorFactoryFromString(eDataType, initialValue);
case ValidatorsPackage.STATUS:
return createStatusFromString(eDataType, initialValue);
case ValidatorsPackage.IDENTIFIER:
return createIdentifierFromString(eDataType, initialValue);
default:
throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
}
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String convertToString(EDataType eDataType, Object instanceValue) {
switch (eDataType.getClassifierID()) {
case ValidatorsPackage.VALIDATOR_FACTORY:
return convertValidatorFactoryToString(eDataType, instanceValue);
case ValidatorsPackage.STATUS:
return convertStatusToString(eDataType, instanceValue);
case ValidatorsPackage.IDENTIFIER:
return convertIdentifierToString(eDataType, instanceValue);
default:
throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
}
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Validator createValidator() {
ValidatorImpl validator = new ValidatorImpl();
return validator;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Category createCategory() {
CategoryImpl category = new CategoryImpl();
return category;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Type createType() {
TypeImpl type = new TypeImpl();
return type;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public IValidatorFactory createValidatorFactoryFromString(EDataType eDataType, String initialValue) {
return (IValidatorFactory)super.createFromString(eDataType, initialValue);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public String convertValidatorFactoryToString(EDataType eDataType, Object instanceValue) {
return super.convertToString(eDataType, instanceValue);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public ProblemSeverity createStatusFromString(EDataType eDataType, String initialValue) {
return (ProblemSeverity)super.createFromString(eDataType, initialValue);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public String convertStatusToString(EDataType eDataType, Object instanceValue) {
return super.convertToString(eDataType, instanceValue);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public PEXProblemIdentifier createIdentifierFromString(EDataType eDataType, String initialValue) {
return (PEXProblemIdentifier)super.createFromString(eDataType, initialValue);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public String convertIdentifierToString(EDataType eDataType, Object instanceValue) {
return super.convertToString(eDataType, instanceValue);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public ValidatorsPackage getValidatorsPackage() {
return (ValidatorsPackage)getEPackage();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @deprecated
* @generated
*/
@Deprecated
public static ValidatorsPackage getPackage() {
return ValidatorsPackage.eINSTANCE;
}
} //ValidatorsFactoryImpl