Class DefaultModelNormalizer

java.lang.Object
org.apache.maven.internal.impl.model.DefaultModelNormalizer
All Implemented Interfaces:
ModelNormalizer

@Named @Singleton public class DefaultModelNormalizer extends Object implements ModelNormalizer
Handles normalization of a model.
  • Field Details

  • Constructor Details

    • DefaultModelNormalizer

      public DefaultModelNormalizer()
  • Method Details

    • mergeDuplicates

      public Model mergeDuplicates(Model model, ModelBuilderRequest request, ModelProblemCollector problems)
      Description copied from interface: ModelNormalizer
      Merges duplicate elements like multiple declarations of the same build plugin in the specified model.
      Specified by:
      mergeDuplicates in interface ModelNormalizer
      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

      public Model injectDefaultValues(Model model, ModelBuilderRequest request, ModelProblemCollector problems)
      Description copied from interface: ModelNormalizer
      Sets default values in the specified model that for technical reasons cannot be set directly in the Modello definition.
      Specified by:
      injectDefaultValues in interface ModelNormalizer
      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.
    • injectPlugin

      private Plugin injectPlugin(Plugin p)
    • injectDependency

      private Dependency injectDependency(Dependency d)
    • injectList

      private <T> List<T> injectList(List<T> list, Function<T,T> modifer)
      Returns a list suited for the builders, i.e. null if not modified