/* * JBoss, Home of Professional Open Source. * * See the LEGAL.txt file distributed with this work for information regarding copyright ownership and licensing. * * See the AUTHORS.txt file distributed with this work for a full listing of individual contributors. */ package org.teiid.designer.diagram.ui.notation.uml.model; import org.eclipse.emf.ecore.EObject; import org.teiid.designer.core.metamodel.aspect.uml.UmlOperation; import org.teiid.designer.diagram.ui.util.DiagramEntityAdapter; /** * @author mdrilling * * Model Node for UML Attribute. * * @since 8.0 */ public class UmlOperationNode extends UmlModelNode { public UmlOperationNode( EObject modelObject, UmlOperation aspect ) { super( modelObject, aspect ); } @Override public String getName() { if( getModelObject() != null ) return aspect.getSignature(getModelObject(),UmlOperation.SIGNATURE_NAME); return null; } public String getSignature() { if( getModelObject() != null ) return ((UmlOperation)aspect).getSignature(getModelObject(),UmlOperation.SIGNATURE_NAME | UmlOperation.SIGNATURE_PARAMETERS | UmlOperation.SIGNATURE_RETURN); return null; } @Override public void setName(String name) { aspect.setSignature(getModelObject(),name); // super.setName(name); } public String getReturnType() { if( getModelObject() != null ) return aspect.getSignature(getModelObject(),UmlOperation.SIGNATURE_RETURN); return null; } @Override public String toString() { return "UmlOperationNode(" + getName() + ")"; //$NON-NLS-1$ //$NON-NLS-2$ } public void refreshForNameChange(){ if( getDiagramModelObject() != null && !isReadOnly()) { String oldName = "xxxXxxx"; //$NON-NLS-1$ String signature = getSignature(); DiagramEntityAdapter.setName(getDiagramModelObject(), getName()); firePropertyChange(DiagramNodeProperties.NAME, oldName, signature); } else firePropertyChange(DiagramNodeProperties.NAME, null, null); } }