package org.eclipse.papyrus.uml.diagram.component.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.component.edit.parts.AbstractionAppliedStereotypeEditPart; import org.eclipse.papyrus.uml.diagram.component.edit.parts.AbstractionNameEditPart; import org.eclipse.papyrus.uml.diagram.component.edit.parts.CommentBodyEditPart; import org.eclipse.papyrus.uml.diagram.component.edit.parts.CommentBodyEditPartPCN; import org.eclipse.papyrus.uml.diagram.component.edit.parts.ComponentNameEditPart; import org.eclipse.papyrus.uml.diagram.component.edit.parts.ComponentNameEditPartCN; import org.eclipse.papyrus.uml.diagram.component.edit.parts.ComponentNameEditPartPCN; import org.eclipse.papyrus.uml.diagram.component.edit.parts.ComponentRealizationAppliedStereotypeEditPart; import org.eclipse.papyrus.uml.diagram.component.edit.parts.ComponentRealizationNameEditPart; import org.eclipse.papyrus.uml.diagram.component.edit.parts.ConstraintNameEditPart; import org.eclipse.papyrus.uml.diagram.component.edit.parts.ConstraintNameEditPartPCN; import org.eclipse.papyrus.uml.diagram.component.edit.parts.ConstraintSpecificationEditPart; import org.eclipse.papyrus.uml.diagram.component.edit.parts.ConstraintSpecificationEditPartPCN; import org.eclipse.papyrus.uml.diagram.component.edit.parts.DependencyAppliedStereotypeEditPart; import org.eclipse.papyrus.uml.diagram.component.edit.parts.DependencyNameEditPart; import org.eclipse.papyrus.uml.diagram.component.edit.parts.GeneralizationAppliedStereotypeEditPart; import org.eclipse.papyrus.uml.diagram.component.edit.parts.InterfaceNameEditPart; import org.eclipse.papyrus.uml.diagram.component.edit.parts.InterfaceNameEditPartPCN; import org.eclipse.papyrus.uml.diagram.component.edit.parts.ManifestationAppliedStereotypeEditPart; import org.eclipse.papyrus.uml.diagram.component.edit.parts.ManifestationNameEditPart; import org.eclipse.papyrus.uml.diagram.component.edit.parts.PackageNameEditPart; import org.eclipse.papyrus.uml.diagram.component.edit.parts.PortAppliedStereotypeEditPart; import org.eclipse.papyrus.uml.diagram.component.edit.parts.PortNameEditPart; import org.eclipse.papyrus.uml.diagram.component.edit.parts.SubstitutionAppliedStereotypeEditPart; import org.eclipse.papyrus.uml.diagram.component.edit.parts.SubstitutionNameEditPart; import org.eclipse.papyrus.uml.diagram.component.parsers.MessageFormatParser; import org.eclipse.papyrus.uml.diagram.component.part.UMLVisualIDRegistry; import org.eclipse.uml2.uml.UMLPackage; /** * @generated */ public class UMLParserProvider extends AbstractProvider implements IParserProvider { /** * @generated */ private IParser componentName_5004Parser; /** * @generated */ private IParser getComponentName_5004Parser() { if(componentName_5004Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); componentName_5004Parser = parser; } return componentName_5004Parser; } /** * @generated */ private IParser interfaceName_5005Parser; /** * @generated */ private IParser getInterfaceName_5005Parser() { if(interfaceName_5005Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); interfaceName_5005Parser = parser; } return interfaceName_5005Parser; } /** * @generated */ private IParser packageName_5254Parser; /** * @generated */ private IParser getPackageName_5254Parser() { if(packageName_5254Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); packageName_5254Parser = parser; } return packageName_5254Parser; } /** * @generated */ private CommentParser commentBody_5255Parser; /** * @generated */ private IParser getCommentBody_5255Parser() { if(commentBody_5255Parser == null) { commentBody_5255Parser = new CommentParser(); } return commentBody_5255Parser; } /** * @generated */ private IParser constraintName_5252Parser; /** * @generated */ private IParser getConstraintName_5252Parser() { if(constraintName_5252Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); constraintName_5252Parser = parser; } return constraintName_5252Parser; } /** * @generated */ private ConstraintParser constraintSpecification_5253Parser; /** * @generated */ private IParser getConstraintSpecification_5253Parser() { if(constraintSpecification_5253Parser == null) { constraintSpecification_5253Parser = new ConstraintParser(); } return constraintSpecification_5253Parser; } /** * @generated */ private IParser portName_5006Parser; /** * @generated */ private IParser getPortName_5006Parser() { if(portName_5006Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); portName_5006Parser = parser; } return portName_5006Parser; } /** * @generated */ private AppliedStereotypeParser portName_5007Parser; /** * @generated */ private IParser getPortName_5007Parser() { if(portName_5007Parser == null) { portName_5007Parser = new AppliedStereotypeParser(); } return portName_5007Parser; } /** * @generated */ private IParser componentName_5256Parser; /** * @generated */ private IParser getComponentName_5256Parser() { if(componentName_5256Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); parser.setViewPattern("{0}"); //$NON-NLS-1$ parser.setEditorPattern("{0}"); //$NON-NLS-1$ parser.setEditPattern("{0}"); //$NON-NLS-1$ componentName_5256Parser = parser; } return componentName_5256Parser; } /** * @generated */ private IParser componentName_5257Parser; /** * @generated */ private IParser getComponentName_5257Parser() { if(componentName_5257Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); parser.setViewPattern("{0}"); //$NON-NLS-1$ parser.setEditorPattern("{0}"); //$NON-NLS-1$ parser.setEditPattern("{0}"); //$NON-NLS-1$ componentName_5257Parser = parser; } return componentName_5257Parser; } /** * @generated */ private IParser interfaceName_0Parser; /** * @generated */ private IParser getInterfaceName_0Parser() { if(interfaceName_0Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); interfaceName_0Parser = parser; } return interfaceName_0Parser; } /** * @generated */ private CommentParser commentBody_5258Parser; /** * @generated */ private IParser getCommentBody_5258Parser() { if(commentBody_5258Parser == null) { commentBody_5258Parser = new CommentParser(); } return commentBody_5258Parser; } /** * @generated */ private IParser constraintName_5259Parser; /** * @generated */ private IParser getConstraintName_5259Parser() { if(constraintName_5259Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); constraintName_5259Parser = parser; } return constraintName_5259Parser; } /** * @generated */ private ConstraintParser constraintSpecification_5260Parser; /** * @generated */ private IParser getConstraintSpecification_5260Parser() { if(constraintSpecification_5260Parser == null) { constraintSpecification_5260Parser = new ConstraintParser(); } return constraintSpecification_5260Parser; } /** * @generated */ private AppliedStereotypeParser generalizationIsSubstitutable_2Parser; /** * @generated */ private IParser getGeneralizationIsSubstitutable_2Parser() { if(generalizationIsSubstitutable_2Parser == null) { generalizationIsSubstitutable_2Parser = new AppliedStereotypeParser(); } return generalizationIsSubstitutable_2Parser; } /** * @generated */ private IParser substitutionName_6006Parser; /** * @generated */ private IParser getSubstitutionName_6006Parser() { if(substitutionName_6006Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); substitutionName_6006Parser = parser; } return substitutionName_6006Parser; } /** * @generated */ private AppliedStereotypeParser substitutionName_6020Parser; /** * @generated */ private IParser getSubstitutionName_6020Parser() { if(substitutionName_6020Parser == null) { substitutionName_6020Parser = new AppliedStereotypeParser(); } return substitutionName_6020Parser; } /** * @generated */ private IParser manifestationName_6008Parser; /** * @generated */ private IParser getManifestationName_6008Parser() { if(manifestationName_6008Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); manifestationName_6008Parser = parser; } return manifestationName_6008Parser; } /** * @generated */ private AppliedStereotypeParser manifestationName_6022Parser; /** * @generated */ private IParser getManifestationName_6022Parser() { if(manifestationName_6022Parser == null) { manifestationName_6022Parser = new AppliedStereotypeParser(); } return manifestationName_6022Parser; } /** * @generated */ private IParser componentRealizationName_3Parser; /** * @generated */ private IParser getComponentRealizationName_3Parser() { if(componentRealizationName_3Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); componentRealizationName_3Parser = parser; } return componentRealizationName_3Parser; } /** * @generated */ private AppliedStereotypeParser componentRealizationName_4Parser; /** * @generated */ private IParser getComponentRealizationName_4Parser() { if(componentRealizationName_4Parser == null) { componentRealizationName_4Parser = new AppliedStereotypeParser(); } return componentRealizationName_4Parser; } /** * @generated */ private IParser abstractionName_6007Parser; /** * @generated */ private IParser getAbstractionName_6007Parser() { if(abstractionName_6007Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); abstractionName_6007Parser = parser; } return abstractionName_6007Parser; } /** * @generated */ private AppliedStereotypeParser abstractionName_6021Parser; /** * @generated */ private IParser getAbstractionName_6021Parser() { if(abstractionName_6021Parser == null) { abstractionName_6021Parser = new AppliedStereotypeParser(); } return abstractionName_6021Parser; } /** * @generated */ private IParser dependencyName_6009Parser; /** * @generated */ private IParser getDependencyName_6009Parser() { if(dependencyName_6009Parser == null) { EAttribute[] features = new EAttribute[]{ UMLPackage.eINSTANCE.getNamedElement_Name() }; MessageFormatParser parser = new MessageFormatParser(features); dependencyName_6009Parser = parser; } return dependencyName_6009Parser; } /** * @generated */ private AppliedStereotypeParser dependencyName_6023Parser; /** * @generated */ private IParser getDependencyName_6023Parser() { if(dependencyName_6023Parser == null) { dependencyName_6023Parser = new AppliedStereotypeParser(); } return dependencyName_6023Parser; } /** * @generated */ protected IParser getParser(int visualID) { switch(visualID) { case ComponentNameEditPart.VISUAL_ID: return getComponentName_5004Parser(); case InterfaceNameEditPart.VISUAL_ID: return getInterfaceName_5005Parser(); case PackageNameEditPart.VISUAL_ID: return getPackageName_5254Parser(); case CommentBodyEditPart.VISUAL_ID: return getCommentBody_5255Parser(); case ConstraintNameEditPart.VISUAL_ID: return getConstraintName_5252Parser(); case ConstraintSpecificationEditPart.VISUAL_ID: return getConstraintSpecification_5253Parser(); case PortNameEditPart.VISUAL_ID: return getPortName_5006Parser(); case PortAppliedStereotypeEditPart.VISUAL_ID: return getPortName_5007Parser(); case ComponentNameEditPartCN.VISUAL_ID: return getComponentName_5256Parser(); case ComponentNameEditPartPCN.VISUAL_ID: return getComponentName_5257Parser(); case InterfaceNameEditPartPCN.VISUAL_ID: return getInterfaceName_0Parser(); case CommentBodyEditPartPCN.VISUAL_ID: return getCommentBody_5258Parser(); case ConstraintNameEditPartPCN.VISUAL_ID: return getConstraintName_5259Parser(); case ConstraintSpecificationEditPartPCN.VISUAL_ID: return getConstraintSpecification_5260Parser(); case GeneralizationAppliedStereotypeEditPart.VISUAL_ID: return getGeneralizationIsSubstitutable_2Parser(); case SubstitutionNameEditPart.VISUAL_ID: return getSubstitutionName_6006Parser(); case SubstitutionAppliedStereotypeEditPart.VISUAL_ID: return getSubstitutionName_6020Parser(); case ManifestationNameEditPart.VISUAL_ID: return getManifestationName_6008Parser(); case ManifestationAppliedStereotypeEditPart.VISUAL_ID: return getManifestationName_6022Parser(); case ComponentRealizationNameEditPart.VISUAL_ID: return getComponentRealizationName_3Parser(); case ComponentRealizationAppliedStereotypeEditPart.VISUAL_ID: return getComponentRealizationName_4Parser(); case AbstractionNameEditPart.VISUAL_ID: return getAbstractionName_6007Parser(); case AbstractionAppliedStereotypeEditPart.VISUAL_ID: return getAbstractionName_6021Parser(); case DependencyNameEditPart.VISUAL_ID: return getDependencyName_6009Parser(); case DependencyAppliedStereotypeEditPart.VISUAL_ID: return getDependencyName_6023Parser(); } 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); } } }