org.argouml.model
Interface CollaborationsHelper

All Known Implementing Classes:
AbstractCollaborationsHelperDecorator

public interface CollaborationsHelper

The interface for the helper to Collaborations.

Created from the old CollaborationsHelper.


Method Summary
 void addBase(Object arole, Object abase)
          Adds a base to the given classifierrole.
 void addConstrainingElement(Object handle, Object constraint)
          Add a constraining element.
 void addInstance(Object classifierRole, Object instance)
          Adds an instance to a classifier role.
 void addMessage(Object handle, Object elem)
          Add a message to an interaction or association role.
 void addMessage3(Object handle, Object mess)
          Add Message to a predecessor Message.
 void addPredecessor(Object handle, Object predecessor)
          Adds a predecessor to a message.
 Collection allAvailableContents(Object arole)
          Returns all available contents for a given classifierrole as defined in section 2.10.3.3 of the UML 1.3 spec.
 Collection allAvailableFeatures(Object arole)
          Returns all available features for a given classifierrole as defined in section 2.10.3.3 of the UML 1.3 spec.
 Collection getAllClassifierRoles(Object ns)
          Returns all classifierroles found in this namespace and in its children.
 Collection getAllPossibleActivators(Object ames)
          Returns all possible activators for some message mes.
 Collection getAllPossibleAssociationRoles(Object role)
          Returns all associations the bases of the classifierrole has, thereby forming the set of associationroles the classifierrole can use.
 Collection getAllPossibleBases(Object role)
          Returns all possible bases for the given element.
 Collection getAllPossiblePredecessors(Object amessage)
          Returns all possible predecessors for some message, taking into account the wellformednessrules as defined in section 2.10 of the UML spec.
 Object getAssocationRole(Object afrom, Object ato)
          Deprecated. for 0.21.2 by tfmorris, use getAssociationRole
 Object getAssociationRole(Object afrom, Object ato)
          Returns the first found associationrole between two classifierroles.
 Collection getClassifierRoles(Object role)
          Returns all classifierroles associated via associationroles to some classifierrole role.
 boolean hasAsActivator(Object message, Object activator)
          Returns true if the given message has the message activator somewhere as it's activator.
 boolean isAddingCollaborationAllowed(Object context)
          Returns true if a collaboration may be added to the given context.
 void removeBase(Object handle, Object c)
          This method removes a classifier from a classifier role.
 void removeConstrainingElement(Object handle, Object constraint)
          Remove a constraining element.
 void removeInteraction(Object collab, Object interaction)
          Additionnal support for interactions.
 void removeMessage(Object handle, Object message)
          Removes a message from the interaction or association role.
 void removeMessage3(Object handle, Object mess)
          Removes a successor message.
 void removePredecessor(Object handle, Object message)
          Removes a predecessor message.
 void setAction(Object handle, Object action)
          Sets the action to a message.
 void setActivator(Object ames, Object anactivator)
          Sets the activator of some given message mes.
 void setBase(Object arole, Object abase)
          Sets the base checking for wellformedness according to 2.10.3 in the UML 1.3 specification.
 void setBases(Object role, Collection bases)
          Sets the bases of the given classifierrole to the given collection bases.
 void setContext(Object handle, Object col)
          Set the context of an interaction.
 void setMessages3(Object handle, Collection messages)
          Set the successors of a message (named messsage3 in UML 1.3 & successor in UML 1.4).
 void setPredecessors(Object handle, Collection predecessors)
          Set the collection of predecessing messages.
 void setRepresentedClassifier(Object handle, Object classifier)
          Sets the represented classifier of some collaboration.
 void setRepresentedOperation(Object handle, Object operation)
          Sets the represented operation of some collaboration.
 void setSender(Object handle, Object sender)
          Sets the sender of some model element.
 

Method Detail

getAllClassifierRoles

public Collection getAllClassifierRoles(Object ns)
Returns all classifierroles found in this namespace and in its children.

Parameters:
ns - the namespace
Returns:
Collection collection of all classifierroles

getAllPossibleAssociationRoles

public Collection getAllPossibleAssociationRoles(Object role)
Returns all associations the bases of the classifierrole has, thereby forming the set of associationroles the classifierrole can use. UML Spec 1.3 section 2.10.3.3.

Parameters:
role - the classifierrole
Returns:
Collection the set of associationroles the classifierrole can use

getClassifierRoles

public Collection getClassifierRoles(Object role)
Returns all classifierroles associated via associationroles to some classifierrole role.

Parameters:
role - the classifierrole
Returns:
Collection all classifierroles associated via associationroles to the given classifierrole role

getAssociationRole

public Object getAssociationRole(Object afrom,
                                 Object ato)
Returns the first found associationrole between two classifierroles.

Parameters:
afrom - the first classifierrole
ato - the second classifierrole
Returns:
MAssociationRole the association between them, or null if none

getAssocationRole

public Object getAssocationRole(Object afrom,
                                Object ato)
Deprecated. for 0.21.2 by tfmorris, use getAssociationRole

Parameters:
afrom - the first classifierrole
ato - the second classifierrole
Returns:
associationrole
See Also:
getAssociationRole(Object, Object)

getAllPossibleActivators

public Collection getAllPossibleActivators(Object ames)
Returns all possible activators for some message mes. The possible activators are all messages in the same interaction as the given message that are not part of the predecessors of the message and that are not equal to the given message.

Parameters:
ames - the message
Returns:
Collection all possible activators for the given message

hasAsActivator

public boolean hasAsActivator(Object message,
                              Object activator)
Returns true if the given message has the message activator somewhere as it's activator. This is defined as that the message activator can be the activator itself of the given message OR that the given activator can be the activator of the activator of the given message (recursive) OR that the given activator is part of the predecessors of the activator of the given message (recursive too).

Parameters:
message - the given message
activator - the given activator (a message).
Returns:
boolean true if the given message has the message activator somewhere as it's activator

setActivator

public void setActivator(Object ames,
                         Object anactivator)
Sets the activator of some given message mes. Checks the wellformednessrules as defined in the UML 1.3 spec in section 2.10.3.6, will throw an IllegalArgumentException if the wellformednessrules are not met. Not only sets the activator for the given message mes but also for the predecessors of mes. This is done since it can not be the case that a list of messages (defined by the predecessor) has a different activator.

Parameters:
ames - the given message
anactivator - the given activator or null.

getAllPossiblePredecessors

public Collection getAllPossiblePredecessors(Object amessage)
Returns all possible predecessors for some message, taking into account the wellformednessrules as defined in section 2.10 of the UML spec.

Parameters:
amessage - the given message
Returns:
Collection all possible predecessors

addBase

public void addBase(Object arole,
                    Object abase)
Adds a base to the given classifierrole. If the classifierrole does not have a name yet and there is only one base, the name of the classifierrole is set to the name of the given base according to the wellformednessrules of section 2.10.3 of the UML 1.3 spec.

Parameters:
arole - the given classifierrole
abase - the base to be added

setBases

public void setBases(Object role,
                     Collection bases)
Sets the bases of the given classifierrole to the given collection bases.

Parameters:
role - the given classifierrole
bases - the given collection of bases

allAvailableFeatures

public Collection allAvailableFeatures(Object arole)
Returns all available features for a given classifierrole as defined in section 2.10.3.3 of the UML 1.3 spec. Does not use the standard getAvailableFeatures method on ClassifierRole since this is derived information.

Parameters:
arole - the given classifierrole
Returns:
Collection all available features

allAvailableContents

public Collection allAvailableContents(Object arole)
Returns all available contents for a given classifierrole as defined in section 2.10.3.3 of the UML 1.3 spec. Does not use the standard getAvailableContents method on ClassifierRole since this is derived information.

Parameters:
arole - the given classifierrole
Returns:
Collection all available contents

getAllPossibleBases

public Collection getAllPossibleBases(Object role)
Returns all possible bases for the given element.

TODO: Beware: this function does not return the actual base! Is that by design or a bug?

Parameters:
role - the given classifierrole or associationrole
Returns:
all available bases

setBase

public void setBase(Object arole,
                    Object abase)
Sets the base checking for wellformedness according to 2.10.3 in the UML 1.3 specification.

Either the role can be an AssociationRole in which case the given base must be an Association. Or the role can be an AssocationEndRole in which case the given base must be an AssociationEnd.

To set the base(s) of a ClassifierRole use setBases(Object, Collection).

Parameters:
arole - The given role.
abase - The base to set (or null to clear).

isAddingCollaborationAllowed

public boolean isAddingCollaborationAllowed(Object context)
Returns true if a collaboration may be added to the given context. To decouple ArgoUML as much as possible from the model implementation, the parameter of the method is of type Object.

Parameters:
context - the given context
Returns:
boolean true if a collaboration may be added

removeBase

public void removeBase(Object handle,
                       Object c)
This method removes a classifier from a classifier role.

Parameters:
handle - is the classifier role
c - is the classifier

removeConstrainingElement

public void removeConstrainingElement(Object handle,
                                      Object constraint)
Remove a constraining element.

Parameters:
handle - The collaboration to remove a constraint to.
constraint - The constraint to remove.

removeMessage

public void removeMessage(Object handle,
                          Object message)
Removes a message from the interaction or association role.

Parameters:
handle - The interaction or association role to remove the message from.
message - The message to remove.

removeMessage3

public void removeMessage3(Object handle,
                           Object mess)
Removes a successor message.

Parameters:
handle - the Message that needs to loose a successor
mess - the Message that is removed

removePredecessor

public void removePredecessor(Object handle,
                              Object message)
Removes a predecessor message.

Parameters:
handle - the Message that needs to loose a predecessor
message - the Message that is removed

addConstrainingElement

public void addConstrainingElement(Object handle,
                                   Object constraint)
Add a constraining element.

Parameters:
handle - The collaboration to add a constraint to.
constraint - The constraint to add.

addInstance

public void addInstance(Object classifierRole,
                        Object instance)
Adds an instance to a classifier role.

Parameters:
classifierRole - is the classifier role
instance - is the instance to add

addMessage

public void addMessage(Object handle,
                       Object elem)
Add a message to an interaction or association role.

Parameters:
handle - The interaction or association role.
elem - The message.

addMessage3

public void addMessage3(Object handle,
                        Object mess)
Add Message to a predecessor Message.

Parameters:
handle - predecessor Message
mess - Message to be added

addPredecessor

public void addPredecessor(Object handle,
                           Object predecessor)
Adds a predecessor to a message.

Parameters:
handle - the message
predecessor - is the predecessor

setAction

public void setAction(Object handle,
                      Object action)
Sets the action to a message.

Parameters:
handle - is the message
action - is the action

setContext

public void setContext(Object handle,
                       Object col)
Set the context of an interaction.

Parameters:
handle - The element.
col - The context to set.

setMessages3

public void setMessages3(Object handle,
                         Collection messages)
Set the successors of a message (named messsage3 in UML 1.3 & successor in UML 1.4).

Parameters:
handle - Message
messages - Collection of successor messages

setPredecessors

public void setPredecessors(Object handle,
                            Collection predecessors)
Set the collection of predecessing messages.

Parameters:
handle - Message
predecessors - Collection of Messages

setRepresentedClassifier

public void setRepresentedClassifier(Object handle,
                                     Object classifier)
Sets the represented classifier of some collaboration.

Parameters:
handle - the collaboration
classifier - is the classifier or null

setRepresentedOperation

public void setRepresentedOperation(Object handle,
                                    Object operation)
Sets the represented operation of some collaboration.

Parameters:
handle - the collaboration
operation - is the operation or null

setSender

public void setSender(Object handle,
                      Object sender)
Sets the sender of some model element.

Parameters:
handle - model element
sender - the sender

removeInteraction

public void removeInteraction(Object collab,
                              Object interaction)
Additionnal support for interactions.

Parameters:
collab - The collaboration.
interaction - The interaction.


ArgoUML © 1996-2006ArgoUML HomepageArgoUML Developers' pageArgoUML Cookbook