Interface ModelNormalizer

All Known Implementing Classes:
DefaultModelNormalizer

public interface ModelNormalizer
Handles normalization of a model. In this context, normalization is the process of producing a canonical representation for models that physically look different but are semantically equivalent.
Author:
Benjamin Bentmann
  • Method Details

    • mergeDuplicates

      void mergeDuplicates(Model model, ModelBuildingRequest request, ModelProblemCollector problems)
      Merges duplicate elements like multiple declarations of the same build plugin in the specified model.
      Parameters:
      model - The model whose duplicate elements should be merged, must not be null.
      request - The model building request that holds further settings, must not be null.
      problems - The container used to collect problems that were encountered, must not be null.
    • injectDefaultValues

      void injectDefaultValues(Model model, ModelBuildingRequest request, ModelProblemCollector problems)
      Sets default values in the specified model that for technical reasons cannot be set directly in the Modello definition.
      Parameters:
      model - The model in which to set the default values, must not be null.
      request - The model building request that holds further settings, must not be null.
      problems - The container used to collect problems that were encountered, must not be null.
    • mergeDuplicates

      Model mergeDuplicates(Model model, ModelBuildingRequest request, ModelProblemCollector problems)
    • injectDefaultValues

      Model injectDefaultValues(Model model, ModelBuildingRequest request, ModelProblemCollector problems)