/* * */ package org.eclipse.papyrus.uml.diagram.deployment.providers; import org.eclipse.core.runtime.IAdaptable; import org.eclipse.emf.ecore.EAttribute; import org.eclipse.emf.ecore.EObject; import org.eclipse.gmf.runtime.common.core.service.AbstractProvider; import org.eclipse.gmf.runtime.common.core.service.IOperation; import org.eclipse.gmf.runtime.common.ui.services.parser.GetParserOperation; import org.eclipse.gmf.runtime.common.ui.services.parser.IParser; import org.eclipse.gmf.runtime.common.ui.services.parser.IParserProvider; import org.eclipse.gmf.runtime.common.ui.services.parser.ParserService; import org.eclipse.gmf.runtime.emf.type.core.IElementType; import org.eclipse.gmf.runtime.emf.ui.services.parser.ParserHintAdapter; import org.eclipse.gmf.runtime.notation.View; import org.eclipse.papyrus.uml.diagram.common.parser.CommentParser; import org.eclipse.papyrus.uml.diagram.common.parser.ConstraintParser; import org.eclipse.papyrus.uml.diagram.common.parser.stereotype.AppliedStereotypeParser; import org.eclipse.papyrus.uml.diagram.deployment.edit.parts.ArtifactNameEditPart; import org.eclipse.papyrus.uml.diagram.deployment.edit.parts.ArtifactNameEditPartACN; import org.eclipse.papyrus.uml.diagram.deployment.edit.parts.ArtifactNameEditPartCN; import org.eclipse.papyrus.uml.diagram.deployment.edit.parts.CommentBodyEditPart; import org.eclipse.papyrus.uml.diagram.deployment.edit.parts.ConstraintNameEditPart; import org.eclipse.papyrus.uml.diagram.deployment.edit.parts.ConstraintSpecificationEditPart; import org.eclipse.papyrus.uml.diagram.deployment.edit.parts.DependencyAppliedStereotypeEditPart; import org.eclipse.papyrus.uml.diagram.deployment.edit.parts.DependencyNameEditPart; import org.eclipse.papyrus.uml.diagram.deployment.edit.parts.DeploymentAppliedStereotypeEditPart; import org.eclipse.papyrus.uml.diagram.deployment.edit.parts.DeploymentNameEditPart; import org.eclipse.papyrus.uml.diagram.deployment.edit.parts.DeviceNameEditPart; import org.eclipse.papyrus.uml.diagram.deployment.edit.parts.DeviceNameEditPartCN; import org.eclipse.papyrus.uml.diagram.deployment.edit.parts.ExecutionEnvironmentNameEditPart; import org.eclipse.papyrus.uml.diagram.deployment.edit.parts.ExecutionEnvironmentNameEditPartCN; import org.eclipse.papyrus.uml.diagram.deployment.edit.parts.GeneralizationAppliedStereotypeEditPart; import org.eclipse.papyrus.uml.diagram.deployment.edit.parts.ManifestationAppliedStereotypeEditPart; import org.eclipse.papyrus.uml.diagram.deployment.edit.parts.ManifestationNameEditPart; import org.eclipse.papyrus.uml.diagram.deployment.edit.parts.NodeNameEditPart; import org.eclipse.papyrus.uml.diagram.deployment.edit.parts.NodeNameEditPartCN; import org.eclipse.papyrus.uml.diagram.deployment.parsers.MessageFormatParser; import org.eclipse.papyrus.uml.diagram.deployment.part.UMLVisualIDRegistry; import org.eclipse.uml2.uml.UMLPackage; /** * @generated */ public class UMLParserProvider extends AbstractProvider implements IParserProvider { /** * @generated */ private CommentParser commentBody_1Parser; /** * @generated */ private IParser getCommentBody_1Parser() { if(commentBody_1Parser == null) { commentBody_1Parser = new CommentParser(); } return commentBody_1Parser; } /** * @generated */ private IParser constraintName_2Parser; /** * @generated */ private IParser getConstraintName_2Parser() { if(constraintName_2Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); constraintName_2Parser = parser; } return constraintName_2Parser; } /** * @generated */ private ConstraintParser constraintSpecification_3Parser; /** * @generated */ private IParser getConstraintSpecification_3Parser() { if(constraintSpecification_3Parser == null) { constraintSpecification_3Parser = new ConstraintParser(); } return constraintSpecification_3Parser; } /** * @generated */ private IParser executionEnvironmentName_5Parser; /** * @generated */ private IParser getExecutionEnvironmentName_5Parser() { if(executionEnvironmentName_5Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); executionEnvironmentName_5Parser = parser; } return executionEnvironmentName_5Parser; } /** * @generated */ private IParser deviceName_6Parser; /** * @generated */ private IParser getDeviceName_6Parser() { if(deviceName_6Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); deviceName_6Parser = parser; } return deviceName_6Parser; } /** * @generated */ private IParser artifactName_8Parser; /** * @generated */ private IParser getArtifactName_8Parser() { if(artifactName_8Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); artifactName_8Parser = parser; } return artifactName_8Parser; } /** * @generated */ private IParser nodeName_9Parser; /** * @generated */ private IParser getNodeName_9Parser() { if(nodeName_9Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); nodeName_9Parser = parser; } return nodeName_9Parser; } /** * @generated */ private IParser nodeName_24Parser; /** * @generated */ private IParser getNodeName_24Parser() { if(nodeName_24Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); nodeName_24Parser = parser; } return nodeName_24Parser; } /** * @generated */ private IParser deviceName_20Parser; /** * @generated */ private IParser getDeviceName_20Parser() { if(deviceName_20Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); deviceName_20Parser = parser; } return deviceName_20Parser; } /** * @generated */ private IParser executionEnvironmentName_22Parser; /** * @generated */ private IParser getExecutionEnvironmentName_22Parser() { if(executionEnvironmentName_22Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); executionEnvironmentName_22Parser = parser; } return executionEnvironmentName_22Parser; } /** * @generated */ private IParser artifactName_27Parser; /** * @generated */ private IParser getArtifactName_27Parser() { if(artifactName_27Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); artifactName_27Parser = parser; } return artifactName_27Parser; } /** * @generated */ private IParser artifactName_29Parser; /** * @generated */ private IParser getArtifactName_29Parser() { if(artifactName_29Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); artifactName_29Parser = parser; } return artifactName_29Parser; } /** * @generated */ private IParser deploymentName_13Parser; /** * @generated */ private IParser getDeploymentName_13Parser() { if(deploymentName_13Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); deploymentName_13Parser = parser; } return deploymentName_13Parser; } /** * @generated */ private AppliedStereotypeParser deploymentName_14Parser; /** * @generated */ private IParser getDeploymentName_14Parser() { if(deploymentName_14Parser == null) { deploymentName_14Parser = new AppliedStereotypeParser(); } return deploymentName_14Parser; } /** * @generated */ private IParser manifestationName_10Parser; /** * @generated */ private IParser getManifestationName_10Parser() { if(manifestationName_10Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); manifestationName_10Parser = parser; } return manifestationName_10Parser; } /** * @generated */ private AppliedStereotypeParser manifestationName_11Parser; /** * @generated */ private IParser getManifestationName_11Parser() { if(manifestationName_11Parser == null) { manifestationName_11Parser = new AppliedStereotypeParser(); } return manifestationName_11Parser; } /** * @generated */ private AppliedStereotypeParser generalizationIsSubstitutable_4Parser; /** * @generated */ private IParser getGeneralizationIsSubstitutable_4Parser() { if(generalizationIsSubstitutable_4Parser == null) { generalizationIsSubstitutable_4Parser = new AppliedStereotypeParser(); } return generalizationIsSubstitutable_4Parser; } /** * @generated */ private IParser dependencyName_12Parser; /** * @generated */ private IParser getDependencyName_12Parser() { if(dependencyName_12Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); dependencyName_12Parser = parser; } return dependencyName_12Parser; } /** * @generated */ private AppliedStereotypeParser dependencyName_15Parser; /** * @generated */ private IParser getDependencyName_15Parser() { if(dependencyName_15Parser == null) { dependencyName_15Parser = new AppliedStereotypeParser(); } return dependencyName_15Parser; } /** * @generated */ protected IParser getParser(int visualID) { switch(visualID) { case CommentBodyEditPart.VISUAL_ID: return getCommentBody_1Parser(); case ConstraintNameEditPart.VISUAL_ID: return getConstraintName_2Parser(); case ConstraintSpecificationEditPart.VISUAL_ID: return getConstraintSpecification_3Parser(); case ExecutionEnvironmentNameEditPart.VISUAL_ID: return getExecutionEnvironmentName_5Parser(); case DeviceNameEditPart.VISUAL_ID: return getDeviceName_6Parser(); case ArtifactNameEditPart.VISUAL_ID: return getArtifactName_8Parser(); case NodeNameEditPart.VISUAL_ID: return getNodeName_9Parser(); case NodeNameEditPartCN.VISUAL_ID: return getNodeName_24Parser(); case DeviceNameEditPartCN.VISUAL_ID: return getDeviceName_20Parser(); case ExecutionEnvironmentNameEditPartCN.VISUAL_ID: return getExecutionEnvironmentName_22Parser(); case ArtifactNameEditPartCN.VISUAL_ID: return getArtifactName_27Parser(); case ArtifactNameEditPartACN.VISUAL_ID: return getArtifactName_29Parser(); case DeploymentNameEditPart.VISUAL_ID: return getDeploymentName_13Parser(); case DeploymentAppliedStereotypeEditPart.VISUAL_ID: return getDeploymentName_14Parser(); case ManifestationNameEditPart.VISUAL_ID: return getManifestationName_10Parser(); case ManifestationAppliedStereotypeEditPart.VISUAL_ID: return getManifestationName_11Parser(); case GeneralizationAppliedStereotypeEditPart.VISUAL_ID: return getGeneralizationIsSubstitutable_4Parser(); case DependencyNameEditPart.VISUAL_ID: return getDependencyName_12Parser(); case DependencyAppliedStereotypeEditPart.VISUAL_ID: return getDependencyName_15Parser(); } return null; } /** * Utility method that consults ParserService * * @generated */ public static IParser getParser(IElementType type, EObject object, String parserHint) { return ParserService.getInstance().getParser(new HintAdapter(type, object, parserHint)); } /** * @generated */ public IParser getParser(IAdaptable hint) { String vid = (String)hint.getAdapter(String.class); if(vid != null) { return getParser(UMLVisualIDRegistry.getVisualID(vid)); } View view = (View)hint.getAdapter(View.class); if(view != null) { return getParser(UMLVisualIDRegistry.getVisualID(view)); } return null; } /** * @generated */ public boolean provides(IOperation operation) { if(operation instanceof GetParserOperation) { IAdaptable hint = ((GetParserOperation)operation).getHint(); if(UMLElementTypes.getElement(hint) == null) { return false; } return getParser(hint) != null; } return false; } /** * @generated */ private static class HintAdapter extends ParserHintAdapter { /** * @generated */ private final IElementType elementType; /** * @generated */ public HintAdapter(IElementType type, EObject object, String parserHint) { super(object, parserHint); assert type != null; elementType = type; } /** * @generated */ public Object getAdapter(Class adapter) { if(IElementType.class.equals(adapter)) { return elementType; } return super.getAdapter(adapter); } } }