org.jupe.editors.classdiagram.model.nodes
Class ClassElement

java.lang.Object
  extended by org.eclipse.emf.common.notify.impl.AdapterImpl
      extended by org.jupe.editors.classdiagram.model.ModelElement
          extended by org.jupe.editors.classdiagram.model.nodes.NodeModelElement
              extended by org.jupe.editors.classdiagram.model.nodes.AbstractClassInterfaceElement
                  extended by org.jupe.editors.classdiagram.model.nodes.ClassElement
All Implemented Interfaces:
org.eclipse.emf.common.notify.Adapter, org.eclipse.emf.common.notify.Adapter.Internal, org.eclipse.ui.views.properties.IPropertySource, IConstants, IContainerElement

public class ClassElement
extends AbstractClassInterfaceElement
implements IConstants

Element to represent a Class in an ClassDiagramElement.

Author:
carlos, Michael Pradel, Emanuel Thomas

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.eclipse.emf.common.notify.Adapter
org.eclipse.emf.common.notify.Adapter.Internal
 
Field Summary
static java.lang.String ABSOLUTE_NAME_PROP
          PropertyId for the absolute name of a class.
static java.lang.String ABSTRACT_PROP
          PropertyId for the abstract flag of a class.
static java.lang.String DETAIL_PROP
          PropertyId for detail degree (not part of UML2).
static java.lang.String NAME_PROP
          PropertyId for the relative name of a class.
static java.lang.String VISIBILITY_PROP
          PropertyId for visibility of a class : public, protected, private.
 
Fields inherited from class org.jupe.editors.classdiagram.model.nodes.AbstractClassInterfaceElement
ATTRIBUTES_PROP, METHODS_PROP
 
Fields inherited from class org.jupe.editors.classdiagram.model.nodes.NodeModelElement
CHILD_ADDED_PROP, CHILD_REMOVED_PROP, CONNECTIONS_PROP, LOCATION_PROP, SIZE_PROP, SOURCE_CONNECTIONS_PROP, TARGET_CONNECTIONS_PROP
 
Fields inherited from class org.jupe.editors.classdiagram.model.ModelElement
GENERAL_CHANGE_PROP
 
Fields inherited from interface org.jupe.editors.classdiagram.IConstants
AGGREGATION_STR, ASSOCIATION_STR, ATTRIBUTE_STR, COMMENT_CONN_STR, COMPOSITION_STR, DEPENDENCY_STR, FALSE_STR, GENERALIZATION_STR, IMPLEMENTATION_STR, METHOD_STR, PRIVATE_STR, PROTECTED_STR, PUBLIC_STR, TRUE_STR
 
Constructor Summary
ClassElement()
          Default constructor.
ClassElement(org.eclipse.uml2.uml.Class umlClass)
          constructor for a new ClassElement
 
Method Summary
 java.lang.Object getPropertyValue(java.lang.Object propertyId)
          Children should override this.
 org.eclipse.uml2.uml.Element getUML2Element()
          Sets the corresponding uml2element of this model element.
 boolean isPropertySet(java.lang.Object propertyId)
          Children should override this.
 void resetPropertyValue(java.lang.Object propertyID)
          Children should override this.
 void setPropertyValue(java.lang.Object propertyId, java.lang.Object value)
          Children should override this.
 void setUML2Element(org.eclipse.uml2.uml.Element newUML2Element)
          Children should override this method, call super.setUML2Element(uml2Element) and then update their UML2Element accordingly.
 
Methods inherited from class org.jupe.editors.classdiagram.model.nodes.AbstractClassInterfaceElement
assimilate, findAttribute, findMethod, getAttributes, getMethods
 
Methods inherited from class org.jupe.editors.classdiagram.model.nodes.NodeModelElement
addChild, addConnection, addToHash, getAllChildren, getChildren, getClassDiagram, getLocation, getParent, getSize, getSourceConnections, getTargetConnections, notifyChanged, removeChild, removeConnection, removeFromHash, removeFromModel, setLocation, setSize, setSourceConnections, setTargetConnections
 
Methods inherited from class org.jupe.editors.classdiagram.model.ModelElement
addPropertyChangeListener, getEditableValue, getPropertyDescriptors, removePropertyChangeListener
 
Methods inherited from class org.eclipse.emf.common.notify.impl.AdapterImpl
getTarget, isAdapterForType, setTarget, unsetTarget
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NAME_PROP

public static final java.lang.String NAME_PROP
PropertyId for the relative name of a class. Should be displayed.

Value: String

See Also:
Constant Field Values

ABSOLUTE_NAME_PROP

public static final java.lang.String ABSOLUTE_NAME_PROP
PropertyId for the absolute name of a class. Should NOT be displayed, and is read-only. It cannot be set using setPropertyValue(Object, Object).

Value: String

See Also:
Constant Field Values

VISIBILITY_PROP

public static final java.lang.String VISIBILITY_PROP
PropertyId for visibility of a class : public, protected, private. Should be displayed.

Value: VisibilityKind

See Also:
Constant Field Values

ABSTRACT_PROP

public static final java.lang.String ABSTRACT_PROP
PropertyId for the abstract flag of a class. Should be displayed.

Value: Boolean

See Also:
Constant Field Values

DETAIL_PROP

public static final java.lang.String DETAIL_PROP
PropertyId for detail degree (not part of UML2). Should be displayed.

Value: Integer (representing a special String)

See Also:
Constant Field Values
Constructor Detail

ClassElement

public ClassElement()
Default constructor.


ClassElement

public ClassElement(org.eclipse.uml2.uml.Class umlClass)
constructor for a new ClassElement

Parameters:
umlClass - the class to be referenced to
Method Detail

setUML2Element

public void setUML2Element(org.eclipse.uml2.uml.Element newUML2Element)
Description copied from class: ModelElement
Children should override this method, call super.setUML2Element(uml2Element) and then update their UML2Element accordingly.

Overrides:
setUML2Element in class ModelElement
Parameters:
newUML2Element - the new uml2 reference for the model element

setPropertyValue

public void setPropertyValue(java.lang.Object propertyId,
                             java.lang.Object value)
Description copied from class: ModelElement
Children should override this.

Specified by:
setPropertyValue in interface org.eclipse.ui.views.properties.IPropertySource
Overrides:
setPropertyValue in class AbstractClassInterfaceElement
See Also:
eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)

getPropertyValue

public java.lang.Object getPropertyValue(java.lang.Object propertyId)
Description copied from class: ModelElement
Children should override this.

Specified by:
getPropertyValue in interface org.eclipse.ui.views.properties.IPropertySource
Overrides:
getPropertyValue in class AbstractClassInterfaceElement
See Also:
eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)

isPropertySet

public boolean isPropertySet(java.lang.Object propertyId)
Description copied from class: ModelElement
Children should override this.

Specified by:
isPropertySet in interface org.eclipse.ui.views.properties.IPropertySource
Overrides:
isPropertySet in class AbstractClassInterfaceElement
See Also:
eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)

resetPropertyValue

public void resetPropertyValue(java.lang.Object propertyID)
Description copied from class: ModelElement
Children should override this.

Specified by:
resetPropertyValue in interface org.eclipse.ui.views.properties.IPropertySource
Overrides:
resetPropertyValue in class AbstractClassInterfaceElement
See Also:
IPropertySource.resetPropertyValue(java.lang.Object)

getUML2Element

public org.eclipse.uml2.uml.Element getUML2Element()
Description copied from class: ModelElement
Sets the corresponding uml2element of this model element. This method should only be called by IContainerElements in their create.. methods. This method has to be implemented by each subclass which have themselves to set as an adapter of the element.

Specified by:
getUML2Element in class ModelElement