Class BranchActionCreator
- java.lang.Object
-
- org.palladiosimulator.generator.fluent.shared.structure.Entity
-
- org.palladiosimulator.generator.fluent.repository.structure.RepositoryEntity
-
- org.palladiosimulator.generator.fluent.repository.structure.components.seff.SeffAction
-
- org.palladiosimulator.generator.fluent.repository.structure.components.seff.GeneralAction
-
- org.palladiosimulator.generator.fluent.repository.structure.components.seff.BranchActionCreator
-
public class BranchActionCreator extends GeneralAction
This class constructs aBranchAction
. It is used to create the 'BranchAction' object step-by-step, i.e. 'BranchActionCreator' objects are of intermediate state.- See Also:
BranchAction
-
-
Field Summary
-
Fields inherited from class org.palladiosimulator.generator.fluent.repository.structure.components.seff.GeneralAction
demands, infrastructureCalls, resourceCalls
-
Fields inherited from class org.palladiosimulator.generator.fluent.repository.structure.components.seff.SeffAction
seff
-
Fields inherited from class org.palladiosimulator.generator.fluent.repository.structure.RepositoryEntity
repository
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
BranchActionCreator(SeffCreator seff)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected org.palladiosimulator.pcm.seff.BranchAction
build()
Turns the entity in the making into the finished entity.BranchActionCreator
withGuardedBranchTransition(String branchConditionStochasticExpression, Seff branchActions, String name)
Adds a guarded branch transition to this action's list of branches.BranchActionCreator
withGuardedBranchTransition(String branchConditionStochasticExpression, SeffCreator branchActions)
Adds a guarded branch transition to this action's list of branches.BranchActionCreator
withInfrastructureCall(String numberOfCallsStochasticExpression, org.palladiosimulator.pcm.repository.InfrastructureSignature signature, org.palladiosimulator.pcm.repository.InfrastructureRequiredRole requiredRole, VariableUsageCreator... variableUsages)
Adds anInfrastructureCall
to this action.BranchActionCreator
withName(String name)
Defines the unique name of this current entity.BranchActionCreator
withProbabilisticBranchTransition(double branchProbability, SeffCreator branchActions, String name)
Adds a probabilistic branch transition to this action's list of branches.BranchActionCreator
withProbabilisticBranchTransition(Double branchProbability, SeffCreator branchActions)
Adds a probabilistic branch transition to this action's list of branches.BranchActionCreator
withResourceCall(String numberOfCallsStochasticExpression, ResourceSignature signature, org.palladiosimulator.pcm.core.entity.ResourceRequiredRole requiredRole, VariableUsageCreator... variableUsages)
Adds aResourceCall
to this action.BranchActionCreator
withResourceDemand(String specificationStochasticExpression, ProcessingResource processingResource)
Adds aParametricResourceDemand
to this action.-
Methods inherited from class org.palladiosimulator.generator.fluent.repository.structure.components.seff.SeffAction
followedBy
-
-
-
-
Constructor Detail
-
BranchActionCreator
protected BranchActionCreator(SeffCreator seff)
-
-
Method Detail
-
withName
public BranchActionCreator withName(String name)
Description copied from class:Entity
Defines the unique name of this current entity. Once created entities are referenced by this name. Only entities with a unique name can be fetched from the model.
-
withGuardedBranchTransition
public BranchActionCreator withGuardedBranchTransition(String branchConditionStochasticExpression, Seff branchActions, String name)
Adds a guarded branch transition to this action's list of branches.A
Guarded Branch Transition
provides a link between a BranchAction and a nested ResourceDemandingBehaviour, which includes the actions executed inside the branch. It uses a guard, i.e. a boolean expression specified by a RandomVariable, to determine whether the transition is chosen. If the guard evaluates to true, the branch is chosen, otherwise if the guard evaluates to false another branch transition must be chosen.- Parameters:
branchConditionStochasticExpression
- boolean expression, condition of the branchbranchActions
- nested resource demanding behaviourname
- of the branch- Returns:
- this branch action in the making
-
withGuardedBranchTransition
public BranchActionCreator withGuardedBranchTransition(String branchConditionStochasticExpression, SeffCreator branchActions)
Adds a guarded branch transition to this action's list of branches.A
Guarded Branch Transition
provides a link between a BranchAction and a nested ResourceDemandingBehaviour, which includes the actions executed inside the branch. It uses a guard, i.e. a boolean expression specified by a RandomVariable, to determine whether the transition is chosen. If the guard evaluates to true, the branch is chosen, otherwise if the guard evaluates to false another branch transition must be chosen.- Parameters:
branchConditionStochasticExpression
- boolean expression, condition of the branchbranchActions
- nested resource demanding behaviour- Returns:
- this branch action in the making
-
withProbabilisticBranchTransition
public BranchActionCreator withProbabilisticBranchTransition(double branchProbability, SeffCreator branchActions, String name)
Adds a probabilistic branch transition to this action's list of branches.A
Probabilistic Branch Transition
provides a link between a BranchAction and a nested ResourceDemandingBehaviour, which includes the actions executed inside the branch. But instead of using a guard, it specifies a branching probability without parameter dependencies.- Parameters:
branchProbability
-branchActions
- nested resource demanding behaviourname
-- Returns:
- this branch action in the making
-
withProbabilisticBranchTransition
public BranchActionCreator withProbabilisticBranchTransition(Double branchProbability, SeffCreator branchActions)
Adds a probabilistic branch transition to this action's list of branches.A
Probabilistic Branch Transition
provides a link between a BranchAction and a nested ResourceDemandingBehaviour, which includes the actions executed inside the branch. But instead of using a guard, it specifies a branching probability without parameter dependencies.- Parameters:
branchProbability
-branchActions
- nested resource demanding behaviour- Returns:
- this branch action in the making
-
withResourceDemand
public BranchActionCreator withResourceDemand(String specificationStochasticExpression, ProcessingResource processingResource)
Description copied from class:GeneralAction
Adds aParametricResourceDemand
to this action.Parametric Resource Demand specifies the amount of processing requested from a certain type of resource in a parameterized way. It assigns the demand specified as a Random-Variable (
specification_stochasticExpression
) to an abstract ProcessingResourceTypeprocessingResource
(e.g., CPU, hard disk) instead of a concrete ProcessingResourceSpecification (e.g., 5 GHz CPU, 20 MByte/s hard disk).- Overrides:
withResourceDemand
in classGeneralAction
- Returns:
- this action in the making
-
withInfrastructureCall
public BranchActionCreator withInfrastructureCall(String numberOfCallsStochasticExpression, org.palladiosimulator.pcm.repository.InfrastructureSignature signature, org.palladiosimulator.pcm.repository.InfrastructureRequiredRole requiredRole, VariableUsageCreator... variableUsages)
Description copied from class:GeneralAction
Adds anInfrastructureCall
to this action.- Overrides:
withInfrastructureCall
in classGeneralAction
- Returns:
- this action in the making
-
withResourceCall
public BranchActionCreator withResourceCall(String numberOfCallsStochasticExpression, ResourceSignature signature, org.palladiosimulator.pcm.core.entity.ResourceRequiredRole requiredRole, VariableUsageCreator... variableUsages)
Description copied from class:GeneralAction
Adds aResourceCall
to this action.- Overrides:
withResourceCall
in classGeneralAction
- Returns:
- this action in the making
-
build
protected org.palladiosimulator.pcm.seff.BranchAction build()
Description copied from class:Entity
Turns the entity in the making into the finished entity.- Specified by:
build
in classSeffAction
- Returns:
- the finished entity
-
-