java.lang.Object
edu.kit.ipd.are.dsexplore.featurecompletions.weaver.FCCWeaver

public final class FCCWeaver extends Object
This class represents the entry point for weaving feature completions into PCM models. All further actions are delegated to the corresponding weaving strategy (depending on the inclusion mechanism).
  • Field Details

  • Constructor Details

    • FCCWeaver

      public FCCWeaver(de.uka.ipd.sdq.workflow.mdsd.blackboard.MDSDBlackboard blackboard, List<org.palladiosimulator.pcm.repository.Repository> solutions, CostRepository costModel)
  • Method Details

    • nextDecodeStart

      public void nextDecodeStart()
      Resets choices and weaving strategy for next weaving iteration.
    • grabChoices

      public void grabChoices(List<Choice> notTransformedChoices)
      Extracts feature completion specific choices for solution and allocation from dofs. Delegates all further choices to corresponding weaving strategy.
      Parameters:
      notTransformedChoices - all choices.
    • getWeavedInstance

      public org.palladiosimulator.solver.models.PCMInstance getWeavedInstance(org.palladiosimulator.solver.models.PCMInstance pcmToAdopt)
      Returns the weaved PCM instance according to the extracted choices and set inclusion mechanism.
      Parameters:
      pcmToAdopt - the PCM instance to be adopted.
      Returns:
      the weaved PCM instance.
    • getConvertedFCCClassChoices

      public List<Choice> getConvertedFCCClassChoices()
      Returns the actual choices for FCC allocation. This can be done after the FCCs have been waved.
      Returns:
      the actual choices for FCC allocation.
    • getSolutionRepositories

      public List<org.palladiosimulator.pcm.repository.Repository> getSolutionRepositories()
    • getInclusionMechanism

      public InclusionMechanism getInclusionMechanism()
    • getInitialSystem

      public org.palladiosimulator.pcm.system.System getInitialSystem()
    • getInitialPartition

      public org.palladiosimulator.analyzer.workflow.blackboard.PCMResourceSetPartition getInitialPartition()