org.andromda.metafacades.uml
Interface ModelElementFacade

All Known Subinterfaces:
ActionFacade, ActionStateFacade, ActivityGraphFacade, ActorFacade, ArgumentFacade, AssociationClassFacade, AssociationEndFacade, AssociationFacade, AttributeFacade, AttributeLinkFacade, BindingFacade, CallActionFacade, CallEventFacade, ClassifierFacade, ConstraintFacade, DependencyFacade, Entity, EntityAssociation, EntityAssociationEnd, EntityAttribute, EntityQueryOperation, EnumerationFacade, EnumerationLiteralFacade, EventFacade, ExtendFacade, ExtensionPointFacade, FinalStateFacade, FrontEndAction, FrontEndActionState, FrontEndActivityGraph, FrontEndController, FrontEndControllerOperation, FrontEndEvent, FrontEndExceptionHandler, FrontEndFinalState, FrontEndForward, FrontEndPackage, FrontEndParameter, FrontEndPseudostate, FrontEndUseCase, FrontEndView, GeneralizableElementFacade, GeneralizationFacade, GuardFacade, IncludeFacade, InstanceFacade, InteractionFacade, LinkEndFacade, LinkFacade, ManageableEntity, ManageableEntityAssociationEnd, ManageableEntityAttribute, NamespaceFacade, ObjectFlowStateFacade, OperationFacade, PackageFacade, ParameterFacade, PartitionFacade, PseudostateFacade, Role, Service, ServiceOperation, StateFacade, StateMachineFacade, StateVertexFacade, StereotypeFacade, SubactivityStateFacade, TaggedValueFacade, TransitionFacade, UseCaseFacade, ValueObject, ValueObjectAssociationEnd

public interface ModelElementFacade

Represents a model element.

Metafacade interface to be used by AndroMDA cartridges.


Method Summary
 void copyTaggedValues(ModelElementFacade element)
           Copies all tagged values from the given ModelElementFacade to this model element facade.
 Object findTaggedValue(String tagName)
           Finds the tagged value with the specified 'tagName'.
 Collection findTaggedValues(String tagName)
           Returns all the values for the tagged value with the specified name.
 Collection getConstraints()
           Gets all constraints belonging to the model element.
 Collection getConstraints(String kind)
           Returns the constraints of the argument kind that have been placed onto this model.
 String getDocumentation(String indent)
           Gets the documentation for the model element, The indent argument is prefixed to each line.
 String getDocumentation(String indent, int lineLength)
           This method returns the documentation for this model element, with the lines wrapped after the specified number of characters, values of less than 1 will indicate no line wrapping is required.
 String getDocumentation(String indent, int lineLength, boolean htmlStyle)
           
 String getFullyQualifiedName()
           The fully qualified name of this model element.
 String getFullyQualifiedName(boolean modelName)
           Returns the fully qualified name of the model element.
 String getFullyQualifiedNamePath()
           Returns the fully qualified name as a path, the returned value always starts with out a slash '/'.
 String getId()
           Gets the unique identifier of the underlying model element.
 TypeMappings getLanguageMappings()
           The language mappings that have been set for this model elemnt.
 ModelFacade getModel()
           
 String getName()
           The name of the model element.
 ModelElementFacade getPackage()
           Gets the package to which this model element belongs.
 String getPackageName()
           The name of this model element's package.
 String getPackageName(boolean modelName)
           Gets the package name (optionally providing the ability to retrieve the model name and not the mapped name).
 String getPackagePath()
           Returns the package as a path, the returned value always starts with out a slash '/'.
 PackageFacade getRootPackage()
           Gets the root package for the model element.
 Collection getSourceDependencies()
           Gets the dependencies for which this model element is the source.
 StateMachineFacade getStateMachineContext()
           If this model element is the context of an activity graph, this represents that activity graph.
 Collection getStereotypeNames()
           The collection of ALL stereotype names for this model element.
 Collection getStereotypes()
           Gets all stereotypes for this model element.
 Collection getTaggedValues()
           
 Collection getTargetDependencies()
           Gets the dependencies for which this model element is the target.
 Object getTemplateParameter(String parameterName)
           
 Collection getTemplateParameters()
           
 String getValidationName()
          Gets the name of the metafacade used within validation messages.
 Object getValidationOwner()
          Gets the metafacade that acts as the owner of this metafacade.
 String getVisibility()
           The visibility (i.e.
 boolean hasExactStereotype(String stereotypeName)
           Returns true if the model element has the exact stereotype (meaning no stereotype inheritence is taken into account when searching for the stereotype), false otherwise.
 boolean hasStereotype(String stereotypeName)
           Returns true if the model element has the specified stereotype.
 void initialize()
          Provides any required initialization of the metafacade.
 boolean isBindingDependenciesPresent()
           
 boolean isConstraintsPresent()
           Indicates if any constraints are present on this model element.
 boolean isModelElementFacadeMetaType()
          Indicates the metafacade type (used for metafacade mappings).
 boolean isTemplateParametersPresent()
           
 String translateConstraint(String name, String translation)
           Searches for the constraint with the specified 'name' on this model element, and if found translates it using the specified 'translation' from a translation library discovered by the framework.
 String[] translateConstraints(String translation)
           Translates all constraints belonging to this model element with the given 'translation'.
 String[] translateConstraints(String kind, String translation)
           Translates the constraints of the specified 'kind' belonging to this model element.
 void validateInvariants(Collection validationMessages)
          Performs validation of any invariants found on this model element and stores the messages within the validationMessages collection.
 

Method Detail

isModelElementFacadeMetaType

public boolean isModelElementFacadeMetaType()
Indicates the metafacade type (used for metafacade mappings).

Returns:
always true

initialize

public void initialize()
Provides any required initialization of the metafacade.


getValidationOwner

public Object getValidationOwner()
Gets the metafacade that acts as the owner of this metafacade. (for example: an operation is an owner of its parameters, etc). This is used by AndroMDA's validation framework to provide more context as to where the error has occurred.


getValidationName

public String getValidationName()
Gets the name of the metafacade used within validation messages. This provides the full name of the metafacade.


validateInvariants

public void validateInvariants(Collection validationMessages)
Performs validation of any invariants found on this model element and stores the messages within the validationMessages collection.

Parameters:
validationMessages - the collection of messages to which additional validation messages will be added if invariants are broken.

copyTaggedValues

public void copyTaggedValues(ModelElementFacade element)

Copies all tagged values from the given ModelElementFacade to this model element facade.


findTaggedValue

public Object findTaggedValue(String tagName)

Finds the tagged value with the specified 'tagName'. In case there are more values the first one found will be returned.


findTaggedValues

public Collection findTaggedValues(String tagName)

Returns all the values for the tagged value with the specified name. The returned collection will contains only String instances, or will be empty. Never null.


getConstraints

public Collection getConstraints()

Gets all constraints belonging to the model element.


getConstraints

public Collection getConstraints(String kind)

Returns the constraints of the argument kind that have been placed onto this model. Typical kinds are "inv", "pre" and "post". Other kinds are possible.


getDocumentation

public String getDocumentation(String indent,
                               int lineLength,
                               boolean htmlStyle)

getDocumentation

public String getDocumentation(String indent,
                               int lineLength)

This method returns the documentation for this model element, with the lines wrapped after the specified number of characters, values of less than 1 will indicate no line wrapping is required. By default paragraphs are returned as HTML.

This method is equivalent to getDocumentation(indent, lineLength, true).


getDocumentation

public String getDocumentation(String indent)

Gets the documentation for the model element, The indent argument is prefixed to each line. By default this method wraps lines after 64 characters.

This method is equivalent to getDocumentation(indent, 64).


getFullyQualifiedName

public String getFullyQualifiedName(boolean modelName)

Returns the fully qualified name of the model element. The fully qualified name includes complete package qualified name of the underlying model element. If modelName is true, then the original name of the model element (the name contained within the model) will be the name returned, otherwise a name from a language mapping will be returned.


getFullyQualifiedName

public String getFullyQualifiedName()

The fully qualified name of this model element.


getFullyQualifiedNamePath

public String getFullyQualifiedNamePath()

Returns the fully qualified name as a path, the returned value always starts with out a slash '/'.


getId

public String getId()

Gets the unique identifier of the underlying model element.


getLanguageMappings

public TypeMappings getLanguageMappings()

The language mappings that have been set for this model elemnt.


getModel

public ModelFacade getModel()

getName

public String getName()

The name of the model element.


getPackage

public ModelElementFacade getPackage()

Gets the package to which this model element belongs.


getPackageName

public String getPackageName(boolean modelName)

Gets the package name (optionally providing the ability to retrieve the model name and not the mapped name).


getPackageName

public String getPackageName()

The name of this model element's package.


getPackagePath

public String getPackagePath()

Returns the package as a path, the returned value always starts with out a slash '/'.


getRootPackage

public PackageFacade getRootPackage()

Gets the root package for the model element.


getSourceDependencies

public Collection getSourceDependencies()

Gets the dependencies for which this model element is the source.


getStateMachineContext

public StateMachineFacade getStateMachineContext()

If this model element is the context of an activity graph, this represents that activity graph.


getStereotypeNames

public Collection getStereotypeNames()

The collection of ALL stereotype names for this model element.


getStereotypes

public Collection getStereotypes()

Gets all stereotypes for this model element.


getTaggedValues

public Collection getTaggedValues()

getTargetDependencies

public Collection getTargetDependencies()

Gets the dependencies for which this model element is the target.


getTemplateParameter

public Object getTemplateParameter(String parameterName)

getTemplateParameters

public Collection getTemplateParameters()

getVisibility

public String getVisibility()

The visibility (i.e. public, private, protected or package) of the model element, will attempt a lookup for these values in the language mappings (if any).


hasExactStereotype

public boolean hasExactStereotype(String stereotypeName)

Returns true if the model element has the exact stereotype (meaning no stereotype inheritence is taken into account when searching for the stereotype), false otherwise.


hasStereotype

public boolean hasStereotype(String stereotypeName)

Returns true if the model element has the specified stereotype. If the stereotype itself does not match, then a search will be made up the steretype inheritance hiearchy, and if one of the stereotype's ancestors has a matching name this method will return true, false otherwise.

For example, if we have a certain stereotype called <> and a model element has a stereotype called <> which extends <>, when calling this method with 'stereotypeName' defined as 'exception' the method would return true since <> inherits from <>. If you want to check if the model element has the exact stereotype, then use the method 'hasExactStereotype' instead.


isBindingDependenciesPresent

public boolean isBindingDependenciesPresent()

isConstraintsPresent

public boolean isConstraintsPresent()

Indicates if any constraints are present on this model element.


isTemplateParametersPresent

public boolean isTemplateParametersPresent()

translateConstraint

public String translateConstraint(String name,
                                  String translation)

Searches for the constraint with the specified 'name' on this model element, and if found translates it using the specified 'translation' from a translation library discovered by the framework.


translateConstraints

public String[] translateConstraints(String translation)

Translates all constraints belonging to this model element with the given 'translation'.


translateConstraints

public String[] translateConstraints(String kind,
                                     String translation)

Translates the constraints of the specified 'kind' belonging to this model element.



Copyright © 2003-2006 The AndroMDA Team. All Rights Reserved.