Class AbstractAccuracyInfluenceSEFFTransformationStrategy
- java.lang.Object
-
- org.eclipse.emf.ecore.util.Switch<T>
-
- org.palladiosimulator.pcm.seff.util.SeffSwitch<Boolean>
-
- org.palladiosimulator.analyzer.accuracy.transformation.AbstractAccuracyInfluenceSEFFTransformationStrategy
-
- Direct Known Subclasses:
AccuracyInfluenceSEFFTransformationStrategyAsSpecified
,AccuracyInfluenceSEFFTransformationStrategyMaximum
,AccuracyInfluenceSEFFTransformationStrategyMinimum
public abstract class AbstractAccuracyInfluenceSEFFTransformationStrategy extends org.palladiosimulator.pcm.seff.util.SeffSwitch<Boolean>
Abstract strategy implementing the transformation of given SEFFs for states inAccuracyInfluenceAnalysisState
. Start the transformation by invokingSwitch.doSwitch(org.eclipse.emf.ecore.EObject)
with a parameter of typeServiceEffectSpecification
. Subclasses must provide an implementation for the abstract methods. Overwriting methods defined in this class is discouraged and may lead to unexpected behavior.
-
-
Constructor Summary
Constructors Constructor Description AbstractAccuracyInfluenceSEFFTransformationStrategy(PCMResourceSetPartition pcmPartition)
Create a new instance.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description Boolean
caseAbstractAction(org.palladiosimulator.pcm.seff.AbstractAction object)
Boolean
caseAbstractInternalControlFlowAction(org.palladiosimulator.pcm.seff.AbstractInternalControlFlowAction object)
Boolean
caseAbstractLoopAction(org.palladiosimulator.pcm.seff.AbstractLoopAction object)
Boolean
caseBranchAction(org.palladiosimulator.pcm.seff.BranchAction object)
Boolean
caseExternalCallAction(org.palladiosimulator.pcm.seff.ExternalCallAction object)
Boolean
caseForkAction(org.palladiosimulator.pcm.seff.ForkAction object)
Boolean
caseInternalCallAction(org.palladiosimulator.pcm.seff.InternalCallAction object)
Boolean
caseResourceDemandingBehaviour(org.palladiosimulator.pcm.seff.ResourceDemandingBehaviour object)
Boolean
caseResourceDemandingSEFF(org.palladiosimulator.pcm.seff.ResourceDemandingSEFF object)
Boolean
caseServiceEffectSpecification(org.palladiosimulator.pcm.seff.ServiceEffectSpecification object)
List<de.uka.ipd.sdq.errorhandling.SeverityAndIssue>
getIssues()
QualityAnnotation
getQualityAnnotation(org.palladiosimulator.pcm.seff.ResourceDemandingSEFF rdseff, List<QualityAnnotation> qas)
Gets the quality annotation for a given RDSEFF from a list of annotations.List<QualityAnnotation>
getQualityAnnotations(PCMResourceSetPartition pcmPartition)
protected abstract void
modifyComponentExternalCall(org.palladiosimulator.pcm.seff.ExternalCallAction call, REPrecision precision)
Implementation of modification strategy for (implicit) resource demands.protected abstract void
modifyComponentInternalCall(org.palladiosimulator.pcm.seff.InternalCallAction call, REPrecision precision)
Implementation of modification strategy for (implicit) resource demands.protected abstract void
modifyInfrastructureCall(org.palladiosimulator.pcm.seff.seff_performance.InfrastructureCall call, REPrecision precision)
Implementation of modification strategy for infrastructure calls.protected abstract void
modifyResourceCall(org.palladiosimulator.pcm.seff.seff_performance.ResourceCall call, REPrecision precision)
Implementation of modification strategy for resource calls.protected abstract void
modifyResourceDemand(org.palladiosimulator.pcm.seff.seff_performance.ParametricResourceDemand demand, REPrecision precision)
Implementation of modification strategy for (implicit) resource demands.-
Methods inherited from class org.palladiosimulator.pcm.seff.util.SeffSwitch
caseAbstractBranchTransition, caseAcquireAction, caseCallAction, caseCallReturnAction, caseCollectionIteratorAction, caseEmitEventAction, caseEntity, caseFailureHandlingEntity, caseForkedBehaviour, caseGuardedBranchTransition, caseIdentifier, caseInternalAction, caseLoopAction, caseNamedElement, caseProbabilisticBranchTransition, caseReleaseAction, caseResourceDemandingInternalBehaviour, caseSetVariableAction, caseStartAction, caseStopAction, caseSynchronisationPoint, defaultCase, doSwitch, isSwitchFor
-
-
-
-
Constructor Detail
-
AbstractAccuracyInfluenceSEFFTransformationStrategy
public AbstractAccuracyInfluenceSEFFTransformationStrategy(PCMResourceSetPartition pcmPartition)
Create a new instance.- Parameters:
pcmPartition
- Partition containing quality annotations.
-
-
Method Detail
-
getIssues
public List<de.uka.ipd.sdq.errorhandling.SeverityAndIssue> getIssues()
- Returns:
- Gets the list of warning and errors.
-
caseResourceDemandingSEFF
public Boolean caseResourceDemandingSEFF(org.palladiosimulator.pcm.seff.ResourceDemandingSEFF object)
- Overrides:
caseResourceDemandingSEFF
in classorg.palladiosimulator.pcm.seff.util.SeffSwitch<Boolean>
-
caseResourceDemandingBehaviour
public Boolean caseResourceDemandingBehaviour(org.palladiosimulator.pcm.seff.ResourceDemandingBehaviour object)
- Overrides:
caseResourceDemandingBehaviour
in classorg.palladiosimulator.pcm.seff.util.SeffSwitch<Boolean>
-
caseBranchAction
public Boolean caseBranchAction(org.palladiosimulator.pcm.seff.BranchAction object)
- Overrides:
caseBranchAction
in classorg.palladiosimulator.pcm.seff.util.SeffSwitch<Boolean>
-
caseAbstractLoopAction
public Boolean caseAbstractLoopAction(org.palladiosimulator.pcm.seff.AbstractLoopAction object)
- Overrides:
caseAbstractLoopAction
in classorg.palladiosimulator.pcm.seff.util.SeffSwitch<Boolean>
-
caseForkAction
public Boolean caseForkAction(org.palladiosimulator.pcm.seff.ForkAction object)
- Overrides:
caseForkAction
in classorg.palladiosimulator.pcm.seff.util.SeffSwitch<Boolean>
-
caseServiceEffectSpecification
public Boolean caseServiceEffectSpecification(org.palladiosimulator.pcm.seff.ServiceEffectSpecification object)
- Overrides:
caseServiceEffectSpecification
in classorg.palladiosimulator.pcm.seff.util.SeffSwitch<Boolean>
-
getQualityAnnotations
public List<QualityAnnotation> getQualityAnnotations(PCMResourceSetPartition pcmPartition)
- Returns:
- Returns all quality annotations in the PCM partition.
-
getQualityAnnotation
public QualityAnnotation getQualityAnnotation(org.palladiosimulator.pcm.seff.ResourceDemandingSEFF rdseff, List<QualityAnnotation> qas)
Gets the quality annotation for a given RDSEFF from a list of annotations.- Parameters:
rdseff
- The RDSEFF.qas
- The list of annotations.- Returns:
- The quality annotation or
null
if none was found.
-
caseAbstractAction
public Boolean caseAbstractAction(org.palladiosimulator.pcm.seff.AbstractAction object)
- Overrides:
caseAbstractAction
in classorg.palladiosimulator.pcm.seff.util.SeffSwitch<Boolean>
-
caseAbstractInternalControlFlowAction
public Boolean caseAbstractInternalControlFlowAction(org.palladiosimulator.pcm.seff.AbstractInternalControlFlowAction object)
- Overrides:
caseAbstractInternalControlFlowAction
in classorg.palladiosimulator.pcm.seff.util.SeffSwitch<Boolean>
-
caseExternalCallAction
public Boolean caseExternalCallAction(org.palladiosimulator.pcm.seff.ExternalCallAction object)
- Overrides:
caseExternalCallAction
in classorg.palladiosimulator.pcm.seff.util.SeffSwitch<Boolean>
-
caseInternalCallAction
public Boolean caseInternalCallAction(org.palladiosimulator.pcm.seff.InternalCallAction object)
- Overrides:
caseInternalCallAction
in classorg.palladiosimulator.pcm.seff.util.SeffSwitch<Boolean>
-
modifyInfrastructureCall
protected abstract void modifyInfrastructureCall(org.palladiosimulator.pcm.seff.seff_performance.InfrastructureCall call, REPrecision precision)
Implementation of modification strategy for infrastructure calls.- Parameters:
call
- Infrastructure call.precision
- Stated accuracy.
-
modifyResourceCall
protected abstract void modifyResourceCall(org.palladiosimulator.pcm.seff.seff_performance.ResourceCall call, REPrecision precision)
Implementation of modification strategy for resource calls.- Parameters:
call
- Infrastructure call.precision
- Stated accuracy.
-
modifyResourceDemand
protected abstract void modifyResourceDemand(org.palladiosimulator.pcm.seff.seff_performance.ParametricResourceDemand demand, REPrecision precision)
Implementation of modification strategy for (implicit) resource demands.- Parameters:
call
- Infrastructure call.precision
- Stated accuracy.
-
modifyComponentInternalCall
protected abstract void modifyComponentInternalCall(org.palladiosimulator.pcm.seff.InternalCallAction call, REPrecision precision)
Implementation of modification strategy for (implicit) resource demands.- Parameters:
call
- Infrastructure call.precision
- Stated accuracy.
-
modifyComponentExternalCall
protected abstract void modifyComponentExternalCall(org.palladiosimulator.pcm.seff.ExternalCallAction call, REPrecision precision)
Implementation of modification strategy for (implicit) resource demands.- Parameters:
call
- Infrastructure call.precision
- Stated accuracy.
-
-