Class UML 2.3::Connector
Description:
A delegation connector is a connector that links the external contract
of a component (as specified by its ports) to the realization of that behavior.
It represents the forwarding of events (operation requests and events):
a signal that arrives at a port that has a delegation connector to one
or more parts or ports on parts will be passed on to those targets for
handling. An assembly connector is a connector between two or more parts
or ports on parts that defines that one or more parts provide the services
that other parts use.
Direct Superclasses: FeatureDirect Subclasses: Class Precedence List: Connector,
Feature,
RedefinableElement,
NamedElement,
ElementProperties:
contract :
Behavior (0 *); -- source
Connector end :
ConnectorEnd (2 *); -- source
Connector kind :
ConnectorKind (1 1); -- source
Connector redefinedConnector :
Connector (0 *); -- source
Connector type :
Association (0 1); -- source
Connector featuringClassifier :
Classifier (0 *); -- source
Feature isStatic : Boolean (1 1); -- source
Feature isLeaf : Boolean (1 1); -- source
RedefinableElement redefinedElement :
RedefinableElement (0 *); -- source
RedefinableElement redefinitionContext :
Classifier (0 *); -- source
RedefinableElement clientDependency :
Dependency (0 *); -- source
NamedElement name : String (0 1); -- source
NamedElement nameExpression :
StringExpression (0 1); -- source
NamedElement namespace :
Namespace (0 1); -- source
NamedElement qualifiedName : String (0 1); -- source
NamedElement visibility :
VisibilityKind (0 1); -- source
NamedElement ownedComment :
Comment (0 *); -- source
Element ownedElement :
Element (0 *); -- source
Element owner :
Element (0 1); -- source
ElementConstraints:
Signature: types() : Boolean;
Description: The types of the connectable elements that the ends of a connector are
attached to must conform to the types of the association ends of the association
that types the connector, if any.
Expression: true
Signature: roles() : Boolean;
Description: The ConnectableElements attached as roles to each ConnectorEnd owned by
a Connector must be roles of the Classifier that owned the Connector, or
they must be ports of such roles.
Expression: true
Signature: compatible() : Boolean;
Description: The connectable elements attached to the ends of a connector must be compatible.
Expression: true
Signature: between_interfaces_ports() : Boolean;
Description: Each feature of each of the required interfaces of each Port or Part at
the end of a connector must have at least one compatible feature among
the features of the provided interfaces of Ports or Parts at the other
ends, where the required set of (interface) features of a delegating port
from the context of the delegating connector is the set of features that
exist in the port's provided interfaces, and the provided set of (interface)
features of a delegating port from the context of the delegating connector
is the set of features that exist in the port's required interfaces.
Expression: true
Operations:
Signature: kind.1() : ConnectorKind;
Description: Expression: result =
if end->exists(
role.oclIsKindOf(Port)
and partWithPort->isEmpty()
and not role.oclAsType(Port).isBehavior)
then ConnectorKind::delegation
else ConnectorKind::assembly
endif
Send questions or comments to
[email protected].