java.lang.Object
edu.kit.ipd.are.dsexplore.featurecompletions.weaver.strategy.handler.FCCFeatureHandler

public class FCCFeatureHandler extends Object
This class is responsible to resolve the corresponding provided roles a particular ECC is providing.
  • Constructor Details

    • FCCFeatureHandler

      public FCCFeatureHandler(SolutionManager mergedRepoManager)
  • Method Details

    • getProvidedFeaturesOf

      public List<org.palladiosimulator.pcm.repository.ProvidedRole> getProvidedFeaturesOf(CompletionComponent fcc) throws FCCWeaverException
      Retrieves the provided services of a given FCC.
      Parameters:
      fcc - - The FCC which provided services are suppose to be retrieved.
      Returns:
      The provided services of a given ECC.
      Throws:
      FCCWeaverException - - Will be thrown if the ECC is incorrectly annotated.
    • getPerimeterProvidingFCCFor

      public CompletionComponent getPerimeterProvidingFCCFor(List<ComplementumVisnetis> selectedCVs, FeatureCompletion fc) throws FCCWeaverException
      Determines the FCC of a FC that offers the specified complementum visnetis via its perimeter provided interface.
      Parameters:
      selectedCVs - the complementum visnetis.
      fc - the feature completion.
      Returns:
      the FCC that offers the specified complementum visnetis.
      Throws:
      FCCWeaverException
    • getPerimeterProvidedRolesFor

      public List<org.palladiosimulator.pcm.repository.OperationSignature> getPerimeterProvidedRolesFor(CompletionComponent completionComponent, List<ComplementumVisnetis> selectedCVs, FeatureCompletion fc)
      Determines the perimeter provided roles of the solution component for a given fcc.
      Parameters:
      completionComponent - the fcc.
      selectedCVs - the selected CVs.
      fc - the fc to be weaved.
      Returns:
      the perimeter provided roles of the solution component.
    • extractProvidedCVs

      public List<Pair<org.palladiosimulator.pcm.core.entity.Entity,ComplementumVisnetis>> extractProvidedCVs()