/*******************************************************************************
* Copyright (c) 2010-2015 Henshin developers. 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:
* TU Berlin, University of Luxembourg, SES S.A.
*******************************************************************************/
package de.tub.tfs.henshin.tgg.impl;
import de.tub.tfs.henshin.tgg.*;
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;
/**
* <!-- begin-user-doc -->
* An implementation of the model <b>Factory</b>.
* <!-- end-user-doc -->
* @generated
*/
public class TggFactoryImpl extends EFactoryImpl implements TggFactory {
/**
* Creates the default factory implementation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static TggFactory init() {
try {
TggFactory theTggFactory = (TggFactory)EPackage.Registry.INSTANCE.getEFactory(TggPackage.eNS_URI);
if (theTggFactory != null) {
return theTggFactory;
}
}
catch (Exception exception) {
EcorePlugin.INSTANCE.log(exception);
}
return new TggFactoryImpl();
}
/**
* Creates an instance of the factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public TggFactoryImpl() {
super();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public EObject create(EClass eClass) {
switch (eClass.getClassifierID()) {
case TggPackage.TGG: return createTGG();
case TggPackage.NODE_LAYOUT: return createNodeLayout();
case TggPackage.ATTRIBUTE_LAYOUT: return createAttributeLayout();
case TggPackage.EDGE_LAYOUT: return createEdgeLayout();
case TggPackage.GRAPH_LAYOUT: return createGraphLayout();
case TggPackage.TRULE: return createTRule();
case TggPackage.CRIT_PAIR: return createCritPair();
case TggPackage.IMPORTED_PACKAGE: return createImportedPackage();
case TggPackage.TRIPLE_GRAPH: return createTripleGraph();
case TggPackage.TNODE: return createTNode();
case TggPackage.TGG_RULE: return createTGGRule();
case TggPackage.TEDGE: return createTEdge();
case TggPackage.TATTRIBUTE: return createTAttribute();
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 TggPackage.TRIPLE_COMPONENT:
return createTripleComponentFromString(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 TggPackage.TRIPLE_COMPONENT:
return convertTripleComponentToString(eDataType, instanceValue);
default:
throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
}
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public TGG createTGG() {
TGGImpl tgg = new TGGImpl();
return tgg;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NodeLayout createNodeLayout() {
NodeLayoutImpl nodeLayout = new NodeLayoutImpl();
return nodeLayout;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public AttributeLayout createAttributeLayout() {
AttributeLayoutImpl attributeLayout = new AttributeLayoutImpl();
return attributeLayout;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EdgeLayout createEdgeLayout() {
EdgeLayoutImpl edgeLayout = new EdgeLayoutImpl();
return edgeLayout;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public GraphLayout createGraphLayout() {
GraphLayoutImpl graphLayout = new GraphLayoutImpl();
return graphLayout;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public TRule createTRule() {
TRuleImpl tRule = new TRuleImpl();
return tRule;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public CritPair createCritPair() {
CritPairImpl critPair = new CritPairImpl();
return critPair;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public ImportedPackage createImportedPackage() {
ImportedPackageImpl importedPackage = new ImportedPackageImpl();
return importedPackage;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public TripleGraph createTripleGraph() {
TripleGraphImpl tripleGraph = new TripleGraphImpl();
return tripleGraph;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public TNode createTNode() {
TNodeImpl tNode = new TNodeImpl();
return tNode;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public TGGRule createTGGRule() {
TGGRuleImpl tggRule = new TGGRuleImpl();
return tggRule;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public TEdge createTEdge() {
TEdgeImpl tEdge = new TEdgeImpl();
return tEdge;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public TAttribute createTAttribute() {
TAttributeImpl tAttribute = new TAttributeImpl();
return tAttribute;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public TripleComponent createTripleComponentFromString(EDataType eDataType, String initialValue) {
TripleComponent result = TripleComponent.get(initialValue);
if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
return result;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public String convertTripleComponentToString(EDataType eDataType, Object instanceValue) {
return instanceValue == null ? null : instanceValue.toString();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public TggPackage getTggPackage() {
return (TggPackage)getEPackage();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @deprecated
* @generated
*/
@Deprecated
public static TggPackage getPackage() {
return TggPackage.eINSTANCE;
}
} //TggFactoryImpl