staticstructure
KlasseComponentType

This abstract class represents a type of a component. ComponentType is determined by two sets of ports---a set of ports provided and a set of ports required by components of this type. It forms also a common superclass for PrimitiveComponent and CompositeComponent.

Attribute
<Class> OperationBehaviour OperationBehaviour OperationBehaviour

This property defines the operation-specific behaviour of the ComponentType.

<Class> ComponentTypeBehaviour componentTypeBehaviour componentTypeBehaviour

This property defines the behaviour of the ComponentType, which is not operation-specific.

!!TableHeading.InheritedAttributes!!samm::core::NamedEntity samm::core::NamedEntity
name name

!!TableHeading.InheritedAttributes!!samm::staticstructure::PortEnabledEntity samm::staticstructure::PortEnabledEntity
provided provided, source source, sink sink, required required

!!TableHeading.InheritedAttributes!!samm::core::Entity samm::core::Entity
documentation documentation

!!TableHeading.InheritedAttributes!!identifier::Identifier identifier::Identifier
id id

!!TableHeading.InheritedOperations!!samm::core::NamedEntity samm::core::NamedEntity

!!TableHeading.InheritedOperations!!samm::staticstructure::PortEnabledEntity samm::staticstructure::PortEnabledEntity

!!TableHeading.InheritedOperations!!samm::core::Entity samm::core::Entity

!!TableHeading.InheritedOperations!!identifier::Identifier identifier::Identifier

Eigenschaften:

Alias
Classifier Behavior
Is Abstracttrue
Is Activefalse
Is Leaffalse
Keywords
NameComponentType
Name Expression
Namespace<<ePackage>> <Package> staticstructure
Owned Template Signature
Owner<<ePackage>> <Package> staticstructure
Owning Template Parameter
Package<<ePackage>> <Package> staticstructure
Qualified Namesamm::staticstructure::ComponentType
Representation
Stereotype
Template Parameter
VisibilityPublic

Details für Attribute

 componentTypeBehaviour
Public <Class> ComponentTypeBehaviour componentTypeBehaviour

This property defines the behaviour of the ComponentType, which is not operation-specific.

Eigenschaften:

AggregationComposite
Alias
Association<Association> A_componentTypeBehaviour_componentType
Association End
Class<Class> ComponentType
Datatype
Default
Default Value
Is Compositetrue
Is Derivedfalse
Is Derived Unionfalse
Is Leaffalse
Is Orderedfalse
Is Read Onlyfalse
Is Staticfalse
Is Uniquetrue
Keywords
Lower0
Lower Value<Literal Integer> 0
Multiplicity0..1
NamecomponentTypeBehaviour
Name Expression
Namespace<Class> ComponentType
Opposite
Owned Template Signature
Owner<Class> ComponentType
Owning Association
Owning Template Parameter
Qualified Namesamm::staticstructure::ComponentType::componentTypeBehaviour
Stereotype
Template Parameter
Type<Class> ComponentTypeBehaviour
Upper1
Upper Value<Literal Unlimited Natural> 1
VisibilityPublic


 OperationBehaviour
Public <Class> OperationBehaviour OperationBehaviour

This property defines the operation-specific behaviour of the ComponentType.

Eigenschaften:

AggregationComposite
Alias
Association<Association> A_OperationBehaviour_componentType
Association End
Class<Class> ComponentType
Datatype
Default
Default Value
Is Compositetrue
Is Derivedfalse
Is Derived Unionfalse
Is Leaffalse
Is Orderedfalse
Is Read Onlyfalse
Is Staticfalse
Is Uniquetrue
Keywords
Lower0
Lower Value<Literal Integer> 0
Multiplicity*
NameOperationBehaviour
Name Expression
Namespace<Class> ComponentType
Opposite
Owned Template Signature
Owner<Class> ComponentType
Owning Association
Owning Template Parameter
Qualified Namesamm::staticstructure::ComponentType::OperationBehaviour
Stereotype
Template Parameter
Type<Class> OperationBehaviour
Upper*
Upper Value<Literal Unlimited Natural> *
VisibilityPublic

Integritätsbedingungen
HasToProvideOrRequireServicesprovided->size() + required->size() >= 1
NoInterfacePortAssociatedTwice-- Make sure no InterfacePort is both a required and a provided port. Note that an interface can be both provided and required, but via different ports. self.required->intersection(self.provided)->isEmpty()