Interface VariationPointsProvider


@OpenApiAll public interface VariationPointsProvider
Implementations are used by VariantRealizationTransformation to perform model transformation
  • Method Details

    • getName

      String getName()
      Returns:
      name of this VariationPointsProvider
    • setUp

      void setUp(Project project, @CheckForNull PropertyManager propertyManager)
      Should be called before the transformation. Resources required for other methods should be initialized here
      Parameters:
      project - currently open project that will be transformed
      propertyManager - may contain custom properties specific for this transformation
    • getVariabilityElements

      Collection<Element> getVariabilityElements(Collection<Element> scope)
      Collects elements to be transformed in given scope
      Parameters:
      scope - scope to collect elements from
      Returns:
      elements to be transformed
    • getVariationPoints

      Collection<VariationPoint> getVariationPoints(Element element)
      Creates VariationPoint for given element
      Parameters:
      element - given element
      Returns:
      VariationPoint for given element, VariationPointsFactory
    • tearDown

      void tearDown(Collection<VariationPoint> failed)
      Automatically called after transformation of all variation points is finished
      Parameters:
      failed - list of variation points that could not be successfully transformed