Class ComplexComponent
- Direct Known Subclasses:
CompositeComponentCreator
,SubSystemCreator
-
Field Summary
Modifier and TypeFieldDescriptionprotected List<org.palladiosimulator.pcm.core.composition.AssemblyContext>
protected List<org.palladiosimulator.pcm.core.composition.Connector>
protected List<org.palladiosimulator.pcm.core.composition.EventChannel>
protected List<org.palladiosimulator.pcm.core.composition.ResourceRequiredDelegationConnector>
Fields inherited from class org.palladiosimulator.generator.fluent.repository.structure.components.Component
providedRoles, requiredRoles, resourceRequiredRoles
Fields inherited from class org.palladiosimulator.generator.fluent.repository.structure.RepositoryEntity
repository
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected void
addEventChannel
(org.palladiosimulator.pcm.core.composition.EventChannel eventChannel) resourceRequiredDegelationConnection
(org.palladiosimulator.pcm.core.entity.ResourceRequiredRole innerRequiredRole, org.palladiosimulator.pcm.core.entity.ResourceRequiredRole outerRequiredRole) Creates aResourceRequiredDelegationConnector
and adds it to the component.withAssemblyConnection
(org.palladiosimulator.pcm.repository.OperationProvidedRole providedRole, org.palladiosimulator.pcm.core.composition.AssemblyContext providingAssemblyContext, org.palladiosimulator.pcm.repository.OperationRequiredRole requiredRole, org.palladiosimulator.pcm.core.composition.AssemblyContext requiringAssemblyContext) Creates anAssemblyConnector
and adds it to the component.withAssemblyContext
(org.palladiosimulator.pcm.repository.RepositoryComponent encapsulatedComponent, String name, VariableUsageCreator... configParameterUsages) Creates anAssemblyContext
with the namename
and optionally manyconfigParameterUsages
and adds it to the component.withAssemblyContext
(org.palladiosimulator.pcm.repository.RepositoryComponent encapsulatedComponent, VariableUsageCreator... configParameterUsages) Creates anAssemblyContext
and optionally manyconfigParameterUsages
and adds it to the component.withAssemblyEventConnection
(org.palladiosimulator.pcm.repository.SinkRole sinkRole, org.palladiosimulator.pcm.core.composition.AssemblyContext sinkAssemblyContext, org.palladiosimulator.pcm.repository.SourceRole sourceRole, org.palladiosimulator.pcm.core.composition.AssemblyContext sourceAssemblyContext, String filterConditionStochasticExpression) Creates anAssemblyEventConnector
and adds it to the component.withAssemblyInfrastructureConnection
(org.palladiosimulator.pcm.repository.InfrastructureProvidedRole providedRole, org.palladiosimulator.pcm.core.composition.AssemblyContext providingAssemblyContext, org.palladiosimulator.pcm.repository.InfrastructureRequiredRole requiredRole, org.palladiosimulator.pcm.core.composition.AssemblyContext requiringAssemblyContext) Creates anAssemblyInfrastructureConnector
and adds it to the component.withEventChannel
(org.palladiosimulator.pcm.repository.EventGroup eventGroup) Creates a newEventChannel
.withEventChannel
(org.palladiosimulator.pcm.repository.EventGroup eventGroup, String name) Creates a newEventChannel
with namename
.withEventChannelSinkConnection
(org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext, org.palladiosimulator.pcm.core.composition.EventChannel eventChannel, org.palladiosimulator.pcm.repository.SinkRole sinkRole, String filterConditionStochasticExpression) Creates anEventChannelSinkConnector
and adds it to the component.withEventChannelSourceConnection
(org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext, org.palladiosimulator.pcm.core.composition.EventChannel eventChannel, org.palladiosimulator.pcm.repository.SourceRole sourceRole) Creates anEventChannelSourceConnector
and adds it to the component.withProvidedDelegationConnection
(org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext, org.palladiosimulator.pcm.repository.OperationProvidedRole innerProvidedRole, org.palladiosimulator.pcm.repository.OperationProvidedRole outerProvidedRole) Creates aProvidedDelegationConnector
and adds it to the component.withProvidedInfrastructureDelegationConnection
(org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext, org.palladiosimulator.pcm.repository.InfrastructureProvidedRole innerProvidedRole, org.palladiosimulator.pcm.repository.InfrastructureProvidedRole outerProvidedRole) Creates aProvidedInfrastructureDelegationConnector
and adds it to the component.withRequiredDelegationConnection
(org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext, org.palladiosimulator.pcm.repository.OperationRequiredRole innerRequiredRole, org.palladiosimulator.pcm.repository.OperationRequiredRole outerRequiredRole) Creates aRequiredDelegationConnector
and adds it to the component.withRequiredInfrastructureDelegationConnection
(org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext, org.palladiosimulator.pcm.repository.InfrastructureRequiredRole innerRequiredRole, org.palladiosimulator.pcm.repository.InfrastructureRequiredRole outerRequiredRole) Creates aRequiredInfrastructureDelegationConnector
and adds it to the component.withRequiredResourceDelegationConnection
(org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext, org.palladiosimulator.pcm.core.entity.ResourceRequiredRole innerRequiredRole, org.palladiosimulator.pcm.core.entity.ResourceRequiredRole outerRequiredRole) Creates aRequiredResourceDelegationConnector
and adds it to the component.withSinkDelegationConnection
(org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext, org.palladiosimulator.pcm.repository.SinkRole innerSinkRole, org.palladiosimulator.pcm.repository.SinkRole outerSinkRole) Creates aSinkDelegationConnector
and adds it to the component.withSourceDelegationConnection
(org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext, org.palladiosimulator.pcm.repository.SourceRole innerSourceRole, org.palladiosimulator.pcm.repository.SourceRole outerSourceRole) Creates aSourceDelegationConnector
and adds it to the component.Methods inherited from class org.palladiosimulator.generator.fluent.repository.structure.components.Component
build, emits, emits, emits, emits, handles, handles, handles, handles, provides, provides, provides, provides, providesInfrastructure, providesInfrastructure, providesInfrastructure, providesInfrastructure, requires, requires, requires, requires, requiresInfrastructure, requiresInfrastructure, requiresInfrastructure, requiresInfrastructure, requiresResource, requiresResource
-
Field Details
-
assemblyContexts
-
connectors
-
eventChannels
-
resourceRequiredDelegationConnectors
protected List<org.palladiosimulator.pcm.core.composition.ResourceRequiredDelegationConnector> resourceRequiredDelegationConnectors
-
-
Constructor Details
-
ComplexComponent
public ComplexComponent()
-
-
Method Details
-
withEventChannel
public ComplexComponent withEventChannel(org.palladiosimulator.pcm.repository.EventGroup eventGroup, String name) Creates a newEventChannel
with namename
.Event channels consist of an
EventGroup
and arbitrarily manyEventChannelSinkConnector
s andEventChannelSinkConnector
s that are added when creating the connectors.- Parameters:
eventGroup
-name
-- Returns:
- the component in the making
- See Also:
-
withEventChannel
public ComplexComponent withEventChannel(org.palladiosimulator.pcm.repository.EventGroup eventGroup) Creates a newEventChannel
.Event channels consist of an
EventGroup
and arbitrarily manyEventChannelSinkConnector
s andEventChannelSinkConnector
s that are added when creating the connectors. However, that required the specification of a name for the event channel.- Parameters:
eventGroup
-- Returns:
- the component in the making
- See Also:
-
withAssemblyConnection
public ComplexComponent withAssemblyConnection(org.palladiosimulator.pcm.repository.OperationProvidedRole providedRole, org.palladiosimulator.pcm.core.composition.AssemblyContext providingAssemblyContext, org.palladiosimulator.pcm.repository.OperationRequiredRole requiredRole, org.palladiosimulator.pcm.core.composition.AssemblyContext requiringAssemblyContext) Creates anAssemblyConnector
and adds it to the component.An AssemblyConnector is a bidirectional link of two assembly contexts. Intuitively, an AssemblyConnector connects a provided and a required interface of two different components. AssemblyContext must refer to the tuple (Role, AssemblyContext) in order to uniquely identify which component roles communicate with each other.
Existing roles and assembly contexts can be fetched from the repository using the org.palladiosimulator.generator.fluent.component.factory.
- Parameters:
providedRole
-providingAssemblyContext
-requiredRole
-requiringAssemblyContext
-- Returns:
- the component in the making
- See Also:
-
withProvidedDelegationConnection
public ComplexComponent withProvidedDelegationConnection(org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext, org.palladiosimulator.pcm.repository.OperationProvidedRole innerProvidedRole, org.palladiosimulator.pcm.repository.OperationProvidedRole outerProvidedRole) Creates aProvidedDelegationConnector
and adds it to the component.A ProvidedDelegationConnector delegates incoming calls of provided roles to inner provided roles of encapsulated assembly contexts.
Existing roles and assembly contexts can be fetched from the repository using the org.palladiosimulator.generator.fluent.component.factory.
- Parameters:
assemblyContext
-innerProvidedRole
-outerProvidedRole
-- Returns:
- the component in the making
- See Also:
-
withRequiredDelegationConnection
public ComplexComponent withRequiredDelegationConnection(org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext, org.palladiosimulator.pcm.repository.OperationRequiredRole innerRequiredRole, org.palladiosimulator.pcm.repository.OperationRequiredRole outerRequiredRole) Creates aRequiredDelegationConnector
and adds it to the component.A RequiredDelegationConnector delegates required roles of encapsulated assembly contexts to outer required roles .
Existing roles and assembly contexts can be fetched from the repository using the org.palladiosimulator.generator.fluent.component.factory.
- Parameters:
assemblyContext
-innerRequiredRole
-outerRequiredRole
-- Returns:
- the component in the making
- See Also:
-
withAssemblyEventConnection
public ComplexComponent withAssemblyEventConnection(org.palladiosimulator.pcm.repository.SinkRole sinkRole, org.palladiosimulator.pcm.core.composition.AssemblyContext sinkAssemblyContext, org.palladiosimulator.pcm.repository.SourceRole sourceRole, org.palladiosimulator.pcm.core.composition.AssemblyContext sourceAssemblyContext, String filterConditionStochasticExpression) Creates anAssemblyEventConnector
and adds it to the component.An AssemblyConnector is a bidirectional link of two assembly contexts. Intuitively, an AssemblyEventConnector connects a sink and a source. AssemblyContext must refer to the tuple (Role,AssemblyContext) in order to uniquely identify which component sink and source roles communicate with each other.
Existing roles and assembly contexts can be fetched from the repository using the org.palladiosimulator.generator.fluent.component.factory.
- Parameters:
sinkRole
-sinkAssemblyContext
-sourceRole
-sourceAssemblyContext
-filterConditionStochasticExpression
-- Returns:
- the component in the making
- See Also:
-
withEventChannelSinkConnection
public ComplexComponent withEventChannelSinkConnection(org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext, org.palladiosimulator.pcm.core.composition.EventChannel eventChannel, org.palladiosimulator.pcm.repository.SinkRole sinkRole, String filterConditionStochasticExpression) Creates anEventChannelSinkConnector
and adds it to the component.Existing roles, assembly contexts and event channels can be fetched from the repository using the org.palladiosimulator.generator.fluent.component.factory.
- Parameters:
assemblyContext
-eventChannel
-sinkRole
-filterConditionStochasticExpression
-- Returns:
- the component in the making
- See Also:
-
withEventChannelSourceConnection
public ComplexComponent withEventChannelSourceConnection(org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext, org.palladiosimulator.pcm.core.composition.EventChannel eventChannel, org.palladiosimulator.pcm.repository.SourceRole sourceRole) Creates anEventChannelSourceConnector
and adds it to the component.Existing roles, assembly contexts and event channels can be fetched from the repository using the org.palladiosimulator.generator.fluent.component.factory.
- Parameters:
assemblyContext
-eventChannel
-sourceRole
-- Returns:
- the component in the making
- See Also:
-
withSinkDelegationConnection
public ComplexComponent withSinkDelegationConnection(org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext, org.palladiosimulator.pcm.repository.SinkRole innerSinkRole, org.palladiosimulator.pcm.repository.SinkRole outerSinkRole) Creates aSinkDelegationConnector
and adds it to the component.A SinkDelegationConnector delegates an incoming event to the encapsulated assembly contexts to inner sink roles.
Existing roles and assembly contexts can be fetched from the repository using the org.palladiosimulator.generator.fluent.component.factory.
- Parameters:
assemblyContext
-innerSinkRole
-outerSinkRole
-- Returns:
- the component in the making
- See Also:
-
withSourceDelegationConnection
public ComplexComponent withSourceDelegationConnection(org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext, org.palladiosimulator.pcm.repository.SourceRole innerSourceRole, org.palladiosimulator.pcm.repository.SourceRole outerSourceRole) Creates aSourceDelegationConnector
and adds it to the component.A SourceDelegationConnector delegates outgoing events of encapsulated assembly contexts to an external souce role of the enclosing assembly context.
Existing roles and assembly contexts can be fetched from the repository using the org.palladiosimulator.generator.fluent.component.factory.
- Parameters:
assemblyContext
-innerSourceRole
-outerSourceRole
-- Returns:
- the component in the making
- See Also:
-
withAssemblyInfrastructureConnection
public ComplexComponent withAssemblyInfrastructureConnection(org.palladiosimulator.pcm.repository.InfrastructureProvidedRole providedRole, org.palladiosimulator.pcm.core.composition.AssemblyContext providingAssemblyContext, org.palladiosimulator.pcm.repository.InfrastructureRequiredRole requiredRole, org.palladiosimulator.pcm.core.composition.AssemblyContext requiringAssemblyContext) Creates anAssemblyInfrastructureConnector
and adds it to the component.Existing roles and assembly contexts can be fetched from the repository using the org.palladiosimulator.generator.fluent.component.factory.
- Parameters:
providedRole
-providingAssemblyContext
-requiredRole
-requiringAssemblyContext
-- Returns:
- the component in the making
- See Also:
-
withProvidedInfrastructureDelegationConnection
public ComplexComponent withProvidedInfrastructureDelegationConnection(org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext, org.palladiosimulator.pcm.repository.InfrastructureProvidedRole innerProvidedRole, org.palladiosimulator.pcm.repository.InfrastructureProvidedRole outerProvidedRole) Creates aProvidedInfrastructureDelegationConnector
and adds it to the component.Existing roles and assembly contexts can be fetched from the repository using the org.palladiosimulator.generator.fluent.component.factory.
- Parameters:
assemblyContext
-innerProvidedRole
-outerProvidedRole
-- Returns:
- the component in the making
- See Also:
-
withRequiredInfrastructureDelegationConnection
public ComplexComponent withRequiredInfrastructureDelegationConnection(org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext, org.palladiosimulator.pcm.repository.InfrastructureRequiredRole innerRequiredRole, org.palladiosimulator.pcm.repository.InfrastructureRequiredRole outerRequiredRole) Creates aRequiredInfrastructureDelegationConnector
and adds it to the component.Existing roles and assembly contexts can be fetched from the repository using the org.palladiosimulator.generator.fluent.component.factory.
- Parameters:
assemblyContext
-innerRequiredRole
-outerRequiredRole
-- Returns:
- the component in the making
- See Also:
-
withRequiredResourceDelegationConnection
public ComplexComponent withRequiredResourceDelegationConnection(org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext, org.palladiosimulator.pcm.core.entity.ResourceRequiredRole innerRequiredRole, org.palladiosimulator.pcm.core.entity.ResourceRequiredRole outerRequiredRole) Creates aRequiredResourceDelegationConnector
and adds it to the component.Existing roles and assembly contexts can be fetched from the repository using the org.palladiosimulator.generator.fluent.component.factory.
- Parameters:
assemblyContext
-innerRequiredRole
-outerRequiredRole
-- Returns:
- the component in the making
- See Also:
-
resourceRequiredDegelationConnection
public ComplexComponent resourceRequiredDegelationConnection(org.palladiosimulator.pcm.core.entity.ResourceRequiredRole innerRequiredRole, org.palladiosimulator.pcm.core.entity.ResourceRequiredRole outerRequiredRole) Creates aResourceRequiredDelegationConnector
and adds it to the component.Existing required roles can be fetched from the repository using the org.palladiosimulator.generator.fluent.component.factory, i.e.
create.fetchOfResourceRequiredRole(name)
.- Parameters:
innerRequiredRole
-outerRequiredRole
-- Returns:
- the component in the making
- See Also:
-
addEventChannel
protected void addEventChannel(org.palladiosimulator.pcm.core.composition.EventChannel eventChannel)