Class ServiceEffectSpecificationWeaving
- java.lang.Object
-
- edu.kit.ipd.are.dsexplore.featurecompletions.weaver.strategy.adapter.ServiceEffectSpecificationWeaving
-
- Direct Known Subclasses:
AssemblyLocationSeffWeaving
,DelegationLocationSeffWeaving
public abstract class ServiceEffectSpecificationWeaving extends Object
This class is responsible for weaving the SEFF of the adapter in the context of the adapter transformation strategy.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
ServiceEffectSpecificationWeaving.ExternalCallInfo
-
Field Summary
Fields Modifier and Type Field Description protected edu.kit.ipd.are.dsexplore.featurecompletions.weaver.strategy.adapter.IAdapterWeaving
parent
protected org.palladiosimulator.pcm.core.composition.Connector
weavingLocation
-
Constructor Summary
Constructors Constructor Description ServiceEffectSpecificationWeaving(edu.kit.ipd.are.dsexplore.featurecompletions.weaver.strategy.adapter.IAdapterWeaving parent)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract org.palladiosimulator.pcm.repository.BasicComponent
getCalledComponent()
Retrieves the required component which requires several services the adapter provides now.protected abstract org.palladiosimulator.pcm.repository.BasicComponent
getCallingComponent()
Retrieves the provided component which provides several services the adapter requires now.protected abstract ServiceEffectSpecificationWeaving.ExternalCallInfo
getExternalCallInfoFrom(org.palladiosimulator.pcm.seff.ServiceEffectSpecification seffToTransform)
Retrieves the external call informations for a given SEFF which contains the service, required role and the input and output parameters.protected List<org.palladiosimulator.pcm.parameter.VariableUsage>
getInputVariableUsageIfServiceIsCalled(org.palladiosimulator.pcm.repository.Signature calledService)
protected org.palladiosimulator.pcm.repository.RequiredRole
getRequiredRoleOfAdapterBy(org.palladiosimulator.pcm.repository.Signature signature)
protected List<org.palladiosimulator.pcm.parameter.VariableUsage>
getReturnVariableUsageIfServiceIsCalled(org.palladiosimulator.pcm.repository.Signature calledService)
protected List<org.palladiosimulator.pcm.seff.SetVariableAction>
getSetVariableActions(org.palladiosimulator.pcm.seff.ServiceEffectSpecification seffToTransform)
void
weave(WeavingInstruction weavingInstruction)
-
-
-
Method Detail
-
weave
public void weave(WeavingInstruction weavingInstruction) throws FCCWeaverException
- Throws:
FCCWeaverException
-
getCalledComponent
protected abstract org.palladiosimulator.pcm.repository.BasicComponent getCalledComponent()
Retrieves the required component which requires several services the adapter provides now. Based on the connection of the components the adapter is inserted in between the calling component needs to be retrieved differently.- Returns:
- The required component which is calling several services it requires.
-
getCallingComponent
protected abstract org.palladiosimulator.pcm.repository.BasicComponent getCallingComponent() throws FCCWeaverException
Retrieves the provided component which provides several services the adapter requires now. Based on the connection of the components the adapter is inserted in between the called component needs to be retrieved differently.- Returns:
- The provided component which is called by the adapter and was required by the requiring component in the first place.
- Throws:
ConcernWeavingException
- - Will be thrown if an error occurs during the recovering of the called component.FCCWeaverException
-
getExternalCallInfoFrom
protected abstract ServiceEffectSpecificationWeaving.ExternalCallInfo getExternalCallInfoFrom(org.palladiosimulator.pcm.seff.ServiceEffectSpecification seffToTransform) throws FCCWeaverException
Retrieves the external call informations for a given SEFF which contains the service, required role and the input and output parameters.- Parameters:
seffToTransform
- - The SEFF from which the informations are extracted.- Returns:
- the external call informations.
- Throws:
ConcernWeavingException
- - Will be thrown if an error occurs.FCCWeaverException
-
getRequiredRoleOfAdapterBy
protected org.palladiosimulator.pcm.repository.RequiredRole getRequiredRoleOfAdapterBy(org.palladiosimulator.pcm.repository.Signature signature) throws FCCWeaverException
- Throws:
FCCWeaverException
-
getSetVariableActions
protected List<org.palladiosimulator.pcm.seff.SetVariableAction> getSetVariableActions(org.palladiosimulator.pcm.seff.ServiceEffectSpecification seffToTransform)
-
getInputVariableUsageIfServiceIsCalled
protected List<org.palladiosimulator.pcm.parameter.VariableUsage> getInputVariableUsageIfServiceIsCalled(org.palladiosimulator.pcm.repository.Signature calledService) throws FCCWeaverException
- Throws:
FCCWeaverException
-
getReturnVariableUsageIfServiceIsCalled
protected List<org.palladiosimulator.pcm.parameter.VariableUsage> getReturnVariableUsageIfServiceIsCalled(org.palladiosimulator.pcm.repository.Signature calledService) throws FCCWeaverException
- Throws:
FCCWeaverException
-
-