/**
*/
package fr.inria.atlanmod.collaboro.history.impl;
import fr.inria.atlanmod.collaboro.history.*;
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 HistoryFactoryImpl extends EFactoryImpl implements HistoryFactory {
/**
* Creates the default factory implementation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static HistoryFactory init() {
try {
HistoryFactory theHistoryFactory = (HistoryFactory)EPackage.Registry.INSTANCE.getEFactory(HistoryPackage.eNS_URI);
if (theHistoryFactory != null) {
return theHistoryFactory;
}
}
catch (Exception exception) {
EcorePlugin.INSTANCE.log(exception);
}
return new HistoryFactoryImpl();
}
/**
* Creates an instance of the factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public HistoryFactoryImpl() {
super();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public EObject create(EClass eClass) {
switch (eClass.getClassifierID()) {
case HistoryPackage.HISTORY: return createHistory();
case HistoryPackage.VERSION_HISTORY: return createVersionHistory();
case HistoryPackage.USER: return createUser();
case HistoryPackage.VERSION: return createVersion();
case HistoryPackage.VOTE: return createVote();
case HistoryPackage.COLLABORATION: return createCollaboration();
case HistoryPackage.PROPOSAL: return createProposal();
case HistoryPackage.SOLUTION: return createSolution();
case HistoryPackage.COMMENT: return createComment();
case HistoryPackage.ADD: return createAdd();
case HistoryPackage.UPDATE: return createUpdate();
case HistoryPackage.DELETE: return createDelete();
case HistoryPackage.EXISTING_ABSTRACT_SYNTAX_ELEMENT: return createExistingAbstractSyntaxElement();
case HistoryPackage.NEW_ABSTRACT_SYNTAX_ELEMENT: return createNewAbstractSyntaxElement();
case HistoryPackage.CONCRETE_SYNTAX_ELEMENT: return createConcreteSyntaxElement();
case HistoryPackage.PRIORITY: return createPriority();
case HistoryPackage.TAG_BASED: return createTagBased();
case HistoryPackage.TAG: return createTag();
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 HistoryPackage.VERSION_HISTORY_TYPE:
return createVersionHistoryTypeFromString(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 HistoryPackage.VERSION_HISTORY_TYPE:
return convertVersionHistoryTypeToString(eDataType, instanceValue);
default:
throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
}
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public History createHistory() {
HistoryImpl history = new HistoryImpl();
return history;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public VersionHistory createVersionHistory() {
VersionHistoryImpl versionHistory = new VersionHistoryImpl();
return versionHistory;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public User createUser() {
UserImpl user = new UserImpl();
return user;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Version createVersion() {
VersionImpl version = new VersionImpl();
return version;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Vote createVote() {
VoteImpl vote = new VoteImpl();
return vote;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Collaboration createCollaboration() {
CollaborationImpl collaboration = new CollaborationImpl();
return collaboration;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Proposal createProposal() {
ProposalImpl proposal = new ProposalImpl();
return proposal;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Solution createSolution() {
SolutionImpl solution = new SolutionImpl();
return solution;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Comment createComment() {
CommentImpl comment = new CommentImpl();
return comment;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Add createAdd() {
AddImpl add = new AddImpl();
return add;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Update createUpdate() {
UpdateImpl update = new UpdateImpl();
return update;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Delete createDelete() {
DeleteImpl delete = new DeleteImpl();
return delete;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public ExistingAbstractSyntaxElement createExistingAbstractSyntaxElement() {
ExistingAbstractSyntaxElementImpl existingAbstractSyntaxElement = new ExistingAbstractSyntaxElementImpl();
return existingAbstractSyntaxElement;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NewAbstractSyntaxElement createNewAbstractSyntaxElement() {
NewAbstractSyntaxElementImpl newAbstractSyntaxElement = new NewAbstractSyntaxElementImpl();
return newAbstractSyntaxElement;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public ConcreteSyntaxElement createConcreteSyntaxElement() {
ConcreteSyntaxElementImpl concreteSyntaxElement = new ConcreteSyntaxElementImpl();
return concreteSyntaxElement;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Priority createPriority() {
PriorityImpl priority = new PriorityImpl();
return priority;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public TagBased createTagBased() {
TagBasedImpl tagBased = new TagBasedImpl();
return tagBased;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Tag createTag() {
TagImpl tag = new TagImpl();
return tag;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public VersionHistoryType createVersionHistoryTypeFromString(EDataType eDataType, String initialValue) {
VersionHistoryType result = VersionHistoryType.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 convertVersionHistoryTypeToString(EDataType eDataType, Object instanceValue) {
return instanceValue == null ? null : instanceValue.toString();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public HistoryPackage getHistoryPackage() {
return (HistoryPackage)getEPackage();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @deprecated
* @generated
*/
@Deprecated
public static HistoryPackage getPackage() {
return HistoryPackage.eINSTANCE;
}
} //HistoryFactoryImpl