package org.eclipse.uml2.diagram.profile.async; import org.eclipse.core.expressions.PropertyTester; import org.eclipse.emf.ecore.EObject; import org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart; import org.eclipse.uml2.uml.Element; import org.eclipse.uml2.uml.Profile; /** * @generated */ public class NewDiagramPropertyTester extends PropertyTester { /** * @generated */ private static final String PROPERTY_IS_UMLPROFILE_DIAGRAM_ELEMENT = "isUMLProfileElement"; //$NON-NLS-1$ /** * @generated */ public boolean test(Object receiver, String property, Object[] args, Object expectedValue) { if (PROPERTY_IS_UMLPROFILE_DIAGRAM_ELEMENT.equals(property)) { return isUMLProfileElement(receiver); } return false; } /** * @generated NOT */ public static boolean isUMLProfileElement(Object object) { Element element = resolve(object); if (element == null) { return false; } if (false == element.getOwner() instanceof Profile) { return false; } return (element instanceof org.eclipse.uml2.uml.Stereotype) // || (element instanceof org.eclipse.uml2.uml.Profile) // || (element instanceof org.eclipse.uml2.uml.Enumeration) // || (element instanceof org.eclipse.uml2.uml.ElementImport) // || (element instanceof org.eclipse.uml2.uml.Constraint) // || (element instanceof org.eclipse.uml2.uml.Comment); } /** * @generated */ public static Element resolve(Object object) { if (object instanceof IGraphicalEditPart) { object = ((IGraphicalEditPart) object).resolveSemanticElement(); } if (object instanceof Element) { return (Element) object; } return null; } }