Class AssemblyWeaving
- java.lang.Object
-
- edu.kit.ipd.are.dsexplore.featurecompletions.weaver.strategy.behaviour.AssemblyWeaving
-
public class AssemblyWeaving extends Object
This class handles weaving of the PCM assembly/system model.
-
-
Field Summary
Fields Modifier and Type Field Description protected edu.kit.ipd.are.dsexplore.featurecompletions.weaver.strategy.behaviour.IBehaviourWeaving
parent
-
Constructor Summary
Constructors Constructor Description AssemblyWeaving(edu.kit.ipd.are.dsexplore.featurecompletions.weaver.strategy.behaviour.IBehaviourWeaving parent)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Predicate<org.palladiosimulator.pcm.core.composition.AssemblyContext>
getAssemblyContextInstantiating(org.palladiosimulator.pcm.repository.RepositoryComponent component)
protected <T extends org.palladiosimulator.pcm.repository.Role>
org.palladiosimulator.pcm.repository.RolegetComplimentaryRoleOf(org.palladiosimulator.pcm.repository.Role role, List<T> complimentaryRoleSpace)
void
weave(IWeavingInstruction instruction)
Applies the weaving operation on the assembly model.
-
-
-
Method Detail
-
weave
public void weave(IWeavingInstruction instruction)
Applies the weaving operation on the assembly model. Firstly, all required fc components are determined, according to the fc meta-architecture. Secondly, realizing components for each fcc are chosen, according to selected solution/CV. Thirdly, in case of any required complementa, additional components are added. Fourth, the components are assembled into the system and connected by assembly connectors.- Parameters:
instruction
- the weaving instruction to apply.
-
getComplimentaryRoleOf
protected <T extends org.palladiosimulator.pcm.repository.Role> org.palladiosimulator.pcm.repository.Role getComplimentaryRoleOf(org.palladiosimulator.pcm.repository.Role role, List<T> complimentaryRoleSpace) throws FCCWeaverException
- Throws:
FCCWeaverException
-
getAssemblyContextInstantiating
protected Predicate<org.palladiosimulator.pcm.core.composition.AssemblyContext> getAssemblyContextInstantiating(org.palladiosimulator.pcm.repository.RepositoryComponent component)
-
-