Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members

OMF::Association Class Reference

#include <Association.hpp>

Inheritance diagram for OMF::Association:

Model::Aliases Model::AttachesTo Model::CanRaise Model::Constrains Model::Contains Model::DependsOn Model::Exposes Model::Generalizes Model::IsOfType Model::RefersTo UML::A_action_message UML::A_actionSequence_action UML::A_activityGraph_partition UML::A_actualArgument_action UML::A_argument_stimulus UML::A_association_connection UML::A_association_link UML::A_associationEnd_linkEnd UML::A_associationEndRole_availableQualifier UML::A_attributeLink_attribute UML::A_attributeLink_value UML::A_base_associationEndRole UML::A_base_associationRole UML::A_base_extender UML::A_behavior_context UML::A_behavioralFeature_parameter UML::A_binding_argument UML::A_callAction_operation UML::A_child_generalization UML::A_classifierInState_inState UML::A_classifierRole_availableContents UML::A_classifierRole_availableFeature UML::A_classifierRole_base UML::A_client_clientDependency UML::A_collaboration_collaborationInstanceSet UML::A_collaboration_constrainingElement UML::A_collaborationInstanceSet_constrainingElement UML::A_collaborationInstanceSet_participatingInstance UML::A_comment_annotatedElement UML::A_constrainedElement_constraint UML::A_constrainedStereotype_stereotypeConstraint UML::A_container_residentElement UML::A_container_subvertex UML::A_contents_partition UML::A_context_interaction UML::A_context_interactionInstanceSet UML::A_context_raisedSignal UML::A_createAction_instantiation UML::A_defaultElement_defaultedParameter UML::A_definedTag_owner UML::A_deploymentLocation_deployedComponent UML::A_dispatchAction_stimulus UML::A_enumeration_literal UML::A_event_parameter UML::A_extension_extend UML::A_extensionPoint_extend UML::A_extensionPoint_useCase UML::A_guard_transition UML::A_implementation_implementationLocation UML::A_importedElement_elementImport UML::A_include_base UML::A_includer_addition UML::A_incoming_target UML::A_instance_classifier UML::A_instance_linkEnd UML::A_interaction_interactionInstanceSet UML::A_interaction_message UML::A_interactionInstanceSet_participatingStimulus UML::A_link_connection UML::A_linkEnd_qualifiedValue UML::A_message_activator UML::A_message_communicationConnection UML::A_message_sender UML::A_modelElement_taggedValue UML::A_modelElement_templateArgument UML::A_multiplicity_range UML::A_namespace_ownedElement UML::A_occurrence_operation UML::A_outgoing_source UML::A_ownedInstance_owner UML::A_ownedLink_owner UML::A_owner_feature UML::A_package_elementImport UML::A_parameter_parameterTemplate UML::A_parameter_state UML::A_parent_specialization UML::A_participant_association UML::A_participatingLink_collaborationInstanceSet UML::A_playedRole_conformingInstance UML::A_playedRole_conformingLink UML::A_playedRole_conformingStimulus UML::A_powertype_powertypeRange UML::A_predecessor_successor UML::A_presentation_subject UML::A_qualifier_associationEnd UML::A_receiver_message UML::A_receiver_stimulus UML::A_referenceValue_referenceTag UML::A_representedClassifier_collaboration UML::A_representedOperation_collaboration UML::A_resident_componentInstance UML::A_resident_elementResidence UML::A_resident_nodeInstance UML::A_signal_occurrence UML::A_signal_reception UML::A_signal_sendAction UML::A_slot_instance UML::A_sourceFlow_source UML::A_specification_method UML::A_specifiedEnd_specification UML::A_state_deferrableEvent UML::A_state_doActivity UML::A_state_entry UML::A_state_exit UML::A_state_internalTransition UML::A_stateMachine_transitions UML::A_stereotype_extendedElement UML::A_stimulus_communicationLink UML::A_stimulus_sender UML::A_submachineState_submachine UML::A_supplier_supplierDependency UML::A_targetFlow_target UML::A_template_templateParameter UML::A_top_stateMachine UML::A_transition_effect UML::A_transition_trigger UML::A_type_classifierInState UML::A_type_objectFlowState UML::A_type_typedValue UML::A_typedFeature_type UML::A_typedParameter_type UML::A_usedCollaboration_collaboration List of all members.

Detailed Description

The Association class is the base class of all specific associations. It serves as an extent for association links, the relationships between model elements. This class provides a fairly minimal interface for adding, removing and querying for such links. Note that the association classes are the preferred mechanism for managing the relationships between model elements. In many cases, the relationships are bidirectional and require two different operations to insure that the inverse is correct (e.g., contents and container in the MOF). Derived classes manage that operation.


Public Member Functions

virtual ~Association ()
const std::string & name () const
const LinkSetlinks () const
bool exists (ModelObject *end1, ModelObject *end2) const
Linkfind (ModelObject *end1, ModelObject *end2) const
virtual void add (ModelObject *end1, ModelObject *end2)
virtual void remove (ModelObject *end1, ModelObject *end2)

Protected Member Functions

 Association ()
Associationinit (const std::string &name)
void addLink (Link *link)
void removeLink (Link *link)


Constructor & Destructor Documentation

OMF::Association::Association  )  [protected]
 

virtual OMF::Association::~Association  )  [virtual]
 


Member Function Documentation

virtual void OMF::Association::add ModelObject end1,
ModelObject end2
[virtual]
 

Add a link to the link set.

Reimplemented in Model::Aliases, Model::AttachesTo, Model::CanRaise, Model::Constrains, Model::Contains, Model::DependsOn, Model::Exposes, Model::Generalizes, Model::IsOfType, Model::RefersTo, UML::A_action_message, UML::A_actionSequence_action, UML::A_activityGraph_partition, UML::A_actualArgument_action, UML::A_argument_stimulus, UML::A_association_connection, UML::A_association_link, UML::A_associationEnd_linkEnd, UML::A_associationEndRole_availableQualifier, UML::A_attributeLink_attribute, UML::A_attributeLink_value, UML::A_base_associationEndRole, UML::A_base_associationRole, UML::A_base_extender, UML::A_behavior_context, UML::A_behavioralFeature_parameter, UML::A_binding_argument, UML::A_callAction_operation, UML::A_child_generalization, UML::A_classifierInState_inState, UML::A_classifierRole_availableContents, UML::A_classifierRole_availableFeature, UML::A_classifierRole_base, UML::A_client_clientDependency, UML::A_collaboration_collaborationInstanceSet, UML::A_collaboration_constrainingElement, UML::A_collaborationInstanceSet_constrainingElement, UML::A_collaborationInstanceSet_participatingInstance, UML::A_comment_annotatedElement, UML::A_constrainedElement_constraint, UML::A_constrainedStereotype_stereotypeConstraint, UML::A_container_residentElement, UML::A_container_subvertex, UML::A_contents_partition, UML::A_context_interaction, UML::A_context_interactionInstanceSet, UML::A_context_raisedSignal, UML::A_createAction_instantiation, UML::A_defaultElement_defaultedParameter, UML::A_definedTag_owner, UML::A_deploymentLocation_deployedComponent, UML::A_dispatchAction_stimulus, UML::A_enumeration_literal, UML::A_event_parameter, UML::A_extension_extend, UML::A_extensionPoint_extend, UML::A_extensionPoint_useCase, UML::A_guard_transition, UML::A_implementation_implementationLocation, UML::A_importedElement_elementImport, UML::A_include_base, UML::A_includer_addition, UML::A_incoming_target, UML::A_instance_classifier, UML::A_instance_linkEnd, UML::A_interaction_interactionInstanceSet, UML::A_interaction_message, UML::A_interactionInstanceSet_participatingStimulus, UML::A_link_connection, UML::A_linkEnd_qualifiedValue, UML::A_message_activator, UML::A_message_communicationConnection, UML::A_message_sender, UML::A_modelElement_taggedValue, UML::A_modelElement_templateArgument, UML::A_multiplicity_range, UML::A_namespace_ownedElement, UML::A_occurrence_operation, UML::A_outgoing_source, UML::A_ownedInstance_owner, UML::A_ownedLink_owner, UML::A_owner_feature, UML::A_package_elementImport, UML::A_parameter_parameterTemplate, UML::A_parameter_state, UML::A_parent_specialization, UML::A_participant_association, UML::A_participatingLink_collaborationInstanceSet, UML::A_playedRole_conformingInstance, UML::A_playedRole_conformingLink, UML::A_playedRole_conformingStimulus, UML::A_powertype_powertypeRange, UML::A_predecessor_successor, UML::A_presentation_subject, UML::A_qualifier_associationEnd, UML::A_receiver_message, UML::A_receiver_stimulus, UML::A_referenceValue_referenceTag, UML::A_representedClassifier_collaboration, UML::A_representedOperation_collaboration, UML::A_resident_componentInstance, UML::A_resident_elementResidence, UML::A_resident_nodeInstance, UML::A_signal_occurrence, UML::A_signal_reception, UML::A_signal_sendAction, UML::A_slot_instance, UML::A_sourceFlow_source, UML::A_specification_method, UML::A_specifiedEnd_specification, UML::A_state_deferrableEvent, UML::A_state_doActivity, UML::A_state_entry, UML::A_state_exit, UML::A_state_internalTransition, UML::A_stateMachine_transitions, UML::A_stereotype_extendedElement, UML::A_stimulus_communicationLink, UML::A_stimulus_sender, UML::A_submachineState_submachine, UML::A_supplier_supplierDependency, UML::A_targetFlow_target, UML::A_template_templateParameter, UML::A_top_stateMachine, UML::A_transition_effect, UML::A_transition_trigger, UML::A_type_classifierInState, UML::A_type_objectFlowState, UML::A_type_typedValue, UML::A_typedFeature_type, UML::A_typedParameter_type, and UML::A_usedCollaboration_collaboration.

void OMF::Association::addLink Link link  )  [protected]
 

Used to internally add a newly created link object.

bool OMF::Association::exists ModelObject end1,
ModelObject end2
const
 

Check for link existence.

Link* OMF::Association::find ModelObject end1,
ModelObject end2
const
 

Find the link between the two objects.

Association& OMF::Association::init const std::string &  name  )  [protected]
 

Called to initialize the association.

const LinkSet& OMF::Association::links  )  const
 

Return all the links.

const std::string& OMF::Association::name  )  const
 

Return the name of the association.

virtual void OMF::Association::remove ModelObject end1,
ModelObject end2
[virtual]
 

Remove a link from the link set.

Reimplemented in Model::Aliases, Model::AttachesTo, Model::CanRaise, Model::Constrains, Model::Contains, Model::DependsOn, Model::Exposes, Model::Generalizes, Model::IsOfType, Model::RefersTo, UML::A_action_message, UML::A_actionSequence_action, UML::A_activityGraph_partition, UML::A_actualArgument_action, UML::A_argument_stimulus, UML::A_association_connection, UML::A_association_link, UML::A_associationEnd_linkEnd, UML::A_associationEndRole_availableQualifier, UML::A_attributeLink_attribute, UML::A_attributeLink_value, UML::A_base_associationEndRole, UML::A_base_associationRole, UML::A_base_extender, UML::A_behavior_context, UML::A_behavioralFeature_parameter, UML::A_binding_argument, UML::A_callAction_operation, UML::A_child_generalization, UML::A_classifierInState_inState, UML::A_classifierRole_availableContents, UML::A_classifierRole_availableFeature, UML::A_classifierRole_base, UML::A_client_clientDependency, UML::A_collaboration_collaborationInstanceSet, UML::A_collaboration_constrainingElement, UML::A_collaborationInstanceSet_constrainingElement, UML::A_collaborationInstanceSet_participatingInstance, UML::A_comment_annotatedElement, UML::A_constrainedElement_constraint, UML::A_constrainedStereotype_stereotypeConstraint, UML::A_container_residentElement, UML::A_container_subvertex, UML::A_contents_partition, UML::A_context_interaction, UML::A_context_interactionInstanceSet, UML::A_context_raisedSignal, UML::A_createAction_instantiation, UML::A_defaultElement_defaultedParameter, UML::A_definedTag_owner, UML::A_deploymentLocation_deployedComponent, UML::A_dispatchAction_stimulus, UML::A_enumeration_literal, UML::A_event_parameter, UML::A_extension_extend, UML::A_extensionPoint_extend, UML::A_extensionPoint_useCase, UML::A_guard_transition, UML::A_implementation_implementationLocation, UML::A_importedElement_elementImport, UML::A_include_base, UML::A_includer_addition, UML::A_incoming_target, UML::A_instance_classifier, UML::A_instance_linkEnd, UML::A_interaction_interactionInstanceSet, UML::A_interaction_message, UML::A_interactionInstanceSet_participatingStimulus, UML::A_link_connection, UML::A_linkEnd_qualifiedValue, UML::A_message_activator, UML::A_message_communicationConnection, UML::A_message_sender, UML::A_modelElement_taggedValue, UML::A_modelElement_templateArgument, UML::A_multiplicity_range, UML::A_namespace_ownedElement, UML::A_occurrence_operation, UML::A_outgoing_source, UML::A_ownedInstance_owner, UML::A_ownedLink_owner, UML::A_owner_feature, UML::A_package_elementImport, UML::A_parameter_parameterTemplate, UML::A_parameter_state, UML::A_parent_specialization, UML::A_participant_association, UML::A_participatingLink_collaborationInstanceSet, UML::A_playedRole_conformingInstance, UML::A_playedRole_conformingLink, UML::A_playedRole_conformingStimulus, UML::A_powertype_powertypeRange, UML::A_predecessor_successor, UML::A_presentation_subject, UML::A_qualifier_associationEnd, UML::A_receiver_message, UML::A_receiver_stimulus, UML::A_referenceValue_referenceTag, UML::A_representedClassifier_collaboration, UML::A_representedOperation_collaboration, UML::A_resident_componentInstance, UML::A_resident_elementResidence, UML::A_resident_nodeInstance, UML::A_signal_occurrence, UML::A_signal_reception, UML::A_signal_sendAction, UML::A_slot_instance, UML::A_sourceFlow_source, UML::A_specification_method, UML::A_specifiedEnd_specification, UML::A_state_deferrableEvent, UML::A_state_doActivity, UML::A_state_entry, UML::A_state_exit, UML::A_state_internalTransition, UML::A_stateMachine_transitions, UML::A_stereotype_extendedElement, UML::A_stimulus_communicationLink, UML::A_stimulus_sender, UML::A_submachineState_submachine, UML::A_supplier_supplierDependency, UML::A_targetFlow_target, UML::A_template_templateParameter, UML::A_top_stateMachine, UML::A_transition_effect, UML::A_transition_trigger, UML::A_type_classifierInState, UML::A_type_objectFlowState, UML::A_type_typedValue, UML::A_typedFeature_type, UML::A_typedParameter_type, and UML::A_usedCollaboration_collaboration.

void OMF::Association::removeLink Link link  )  [protected]
 

Used to internally remove a link object.


The documentation for this class was generated from the following file:
Generated on Fri Sep 10 13:07:38 2004 for OpenModelingFramework by doxygen 1.3.8