Class ModelUtils


  • public final class ModelUtils
    extends java.lang.Object
    • Constructor Summary

      Constructors 
      Constructor Description
      ModelUtils()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static org.apache.maven.model.Activation cloneActivation​(org.apache.maven.model.Activation src)  
      static org.apache.maven.model.ActivationFile cloneActivationFile​(org.apache.maven.model.ActivationFile src)  
      static org.apache.maven.model.ActivationOS cloneActivationOs​(org.apache.maven.model.ActivationOS src)  
      static org.apache.maven.model.ActivationProperty cloneActivationProperty​(org.apache.maven.model.ActivationProperty src)  
      static org.apache.maven.model.Build cloneBuild​(org.apache.maven.model.Build src)  
      static void cloneBuildBaseFields​(org.apache.maven.model.BuildBase src, org.apache.maven.model.BuildBase result)  
      static org.apache.maven.model.CiManagement cloneCiManagement​(org.apache.maven.model.CiManagement src)  
      static java.lang.Object cloneConfiguration​(java.lang.Object configuration)  
      static org.apache.maven.model.Contributor cloneContributor​(org.apache.maven.model.Contributor src)  
      static org.apache.maven.model.Dependency cloneDependency​(org.apache.maven.model.Dependency src)  
      static org.apache.maven.model.Exclusion cloneDependencyExclusion​(org.apache.maven.model.Exclusion src)  
      static org.apache.maven.model.DependencyManagement cloneDependencyManagement​(org.apache.maven.model.DependencyManagement src)  
      static org.apache.maven.model.DeploymentRepository cloneDeploymentRepository​(org.apache.maven.model.DeploymentRepository src)  
      static org.apache.maven.model.Developer cloneDeveloper​(org.apache.maven.model.Developer src)  
      static org.apache.maven.model.DistributionManagement cloneDistributionManagement​(org.apache.maven.model.DistributionManagement src)  
      static org.apache.maven.model.Exclusion cloneExclusion​(org.apache.maven.model.Exclusion src)  
      static org.apache.maven.model.Extension cloneExtension​(org.apache.maven.model.Extension src)  
      static org.apache.maven.model.IssueManagement cloneIssueManagement​(org.apache.maven.model.IssueManagement src)  
      static org.apache.maven.model.License cloneLicense​(org.apache.maven.model.License src)  
      static java.util.List cloneListOfStrings​(java.util.List src)  
      static org.apache.maven.model.MailingList cloneMailingList​(org.apache.maven.model.MailingList src)  
      static org.apache.maven.model.Model cloneModel​(org.apache.maven.model.Model src)  
      static org.apache.maven.model.Notifier cloneNotifier​(org.apache.maven.model.Notifier src)  
      static org.apache.maven.model.Organization cloneOrganization​(org.apache.maven.model.Organization src)  
      static org.apache.maven.model.Parent cloneParent​(org.apache.maven.model.Parent src)  
      static org.apache.maven.model.Plugin clonePlugin​(org.apache.maven.model.Plugin src)  
      static org.apache.maven.model.PluginExecution clonePluginExecution​(org.apache.maven.model.PluginExecution src)  
      static org.apache.maven.model.PluginManagement clonePluginManagement​(org.apache.maven.model.PluginManagement src)  
      static org.apache.maven.model.Prerequisites clonePrerequisites​(org.apache.maven.model.Prerequisites src)  
      static org.apache.maven.model.Profile cloneProfile​(org.apache.maven.model.Profile src)  
      static java.util.Properties cloneProperties​(java.util.Properties src)  
      static org.apache.maven.model.Relocation cloneRelocation​(org.apache.maven.model.Relocation src)  
      static org.apache.maven.model.Reporting cloneReporting​(org.apache.maven.model.Reporting src)  
      static org.apache.maven.model.ReportPlugin cloneReportPlugin​(org.apache.maven.model.ReportPlugin src)  
      static org.apache.maven.model.ReportSet cloneReportSet​(org.apache.maven.model.ReportSet src)  
      static org.apache.maven.model.Repository cloneRepository​(org.apache.maven.model.Repository src)  
      static org.apache.maven.model.RepositoryPolicy cloneRepositoryPolicy​(org.apache.maven.model.RepositoryPolicy src)  
      static org.apache.maven.model.Resource cloneResource​(org.apache.maven.model.Resource src)  
      static org.apache.maven.model.Scm cloneScm​(org.apache.maven.model.Scm src)  
      static org.apache.maven.model.Site cloneSite​(org.apache.maven.model.Site src)  
      static java.util.List mergeDependencyList​(java.util.List child, java.util.List parent)  
      static void mergeDuplicatePluginDefinitions​(org.apache.maven.model.PluginContainer pluginContainer)
      Given this plugin list: A1 -> B -> C -> A2 -> D Rearrange it to this: A(A1 + A2) -> B -> C -> D In cases of overlapping definitions, A1 is overridden by A2
      static void mergeExtensionLists​(org.apache.maven.model.Build childBuild, org.apache.maven.model.Build parentBuild)  
      static void mergeFilterLists​(java.util.List childFilters, java.util.List parentFilters)  
      static void mergePluginDefinitions​(org.apache.maven.model.Plugin child, org.apache.maven.model.Plugin parent, boolean handleAsInheritance)  
      static void mergePluginLists​(org.apache.maven.model.PluginContainer child, org.apache.maven.model.PluginContainer parent, boolean handleAsInheritance)
      This should be the resulting ordering of plugins after merging: Given: parent: X -> A -> B -> D -> E child: Y -> A -> C -> D -> F Result: X -> Y -> A -> B -> C -> D -> E -> F
      static void mergeReportPluginDefinitions​(org.apache.maven.model.ReportPlugin child, org.apache.maven.model.ReportPlugin parent, boolean handleAsInheritance)  
      static void mergeReportPluginLists​(org.apache.maven.model.Reporting child, org.apache.maven.model.Reporting parent, boolean handleAsInheritance)
      Merge the list of reporting plugins from parent pom and child pom TODO it's pretty much a copy of mergePluginLists(PluginContainer, PluginContainer, boolean)
      static java.util.List mergeRepositoryLists​(java.util.List dominant, java.util.List recessive)  
      static void mergeResourceLists​(java.util.List childResources, java.util.List parentResources)  
      static java.util.List orderAfterMerge​(java.util.List merged, java.util.List highPrioritySource, java.util.List lowPrioritySource)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ModelUtils

        public ModelUtils()
    • Method Detail

      • mergeDuplicatePluginDefinitions

        public static void mergeDuplicatePluginDefinitions​(org.apache.maven.model.PluginContainer pluginContainer)
        Given this plugin list: A1 -> B -> C -> A2 -> D Rearrange it to this: A(A1 + A2) -> B -> C -> D In cases of overlapping definitions, A1 is overridden by A2
      • cloneReportSet

        public static org.apache.maven.model.ReportSet cloneReportSet​(org.apache.maven.model.ReportSet src)
      • cloneReportPlugin

        public static org.apache.maven.model.ReportPlugin cloneReportPlugin​(org.apache.maven.model.ReportPlugin src)
      • cloneProfile

        public static org.apache.maven.model.Profile cloneProfile​(org.apache.maven.model.Profile src)
      • cloneReporting

        public static org.apache.maven.model.Reporting cloneReporting​(org.apache.maven.model.Reporting src)
      • cloneActivation

        public static org.apache.maven.model.Activation cloneActivation​(org.apache.maven.model.Activation src)
      • cloneActivationProperty

        public static org.apache.maven.model.ActivationProperty cloneActivationProperty​(org.apache.maven.model.ActivationProperty src)
      • cloneActivationOs

        public static org.apache.maven.model.ActivationOS cloneActivationOs​(org.apache.maven.model.ActivationOS src)
      • cloneActivationFile

        public static org.apache.maven.model.ActivationFile cloneActivationFile​(org.apache.maven.model.ActivationFile src)
      • cloneRepository

        public static org.apache.maven.model.Repository cloneRepository​(org.apache.maven.model.Repository src)
      • cloneRepositoryPolicy

        public static org.apache.maven.model.RepositoryPolicy cloneRepositoryPolicy​(org.apache.maven.model.RepositoryPolicy src)
      • cloneMailingList

        public static org.apache.maven.model.MailingList cloneMailingList​(org.apache.maven.model.MailingList src)
      • mergePluginLists

        public static void mergePluginLists​(org.apache.maven.model.PluginContainer child,
                                            org.apache.maven.model.PluginContainer parent,
                                            boolean handleAsInheritance)
        This should be the resulting ordering of plugins after merging: Given: parent: X -> A -> B -> D -> E child: Y -> A -> C -> D -> F Result: X -> Y -> A -> B -> C -> D -> E -> F
      • orderAfterMerge

        public static java.util.List orderAfterMerge​(java.util.List merged,
                                                     java.util.List highPrioritySource,
                                                     java.util.List lowPrioritySource)
      • mergeReportPluginLists

        public static void mergeReportPluginLists​(org.apache.maven.model.Reporting child,
                                                  org.apache.maven.model.Reporting parent,
                                                  boolean handleAsInheritance)
        Merge the list of reporting plugins from parent pom and child pom TODO it's pretty much a copy of mergePluginLists(PluginContainer, PluginContainer, boolean)
        Parameters:
        child -
        parent -
        handleAsInheritance -
      • mergePluginDefinitions

        public static void mergePluginDefinitions​(org.apache.maven.model.Plugin child,
                                                  org.apache.maven.model.Plugin parent,
                                                  boolean handleAsInheritance)
      • mergeReportPluginDefinitions

        public static void mergeReportPluginDefinitions​(org.apache.maven.model.ReportPlugin child,
                                                        org.apache.maven.model.ReportPlugin parent,
                                                        boolean handleAsInheritance)
      • cloneModel

        public static org.apache.maven.model.Model cloneModel​(org.apache.maven.model.Model src)
      • cloneScm

        public static org.apache.maven.model.Scm cloneScm​(org.apache.maven.model.Scm src)
      • clonePrerequisites

        public static org.apache.maven.model.Prerequisites clonePrerequisites​(org.apache.maven.model.Prerequisites src)
      • cloneOrganization

        public static org.apache.maven.model.Organization cloneOrganization​(org.apache.maven.model.Organization src)
      • cloneLicense

        public static org.apache.maven.model.License cloneLicense​(org.apache.maven.model.License src)
      • cloneIssueManagement

        public static org.apache.maven.model.IssueManagement cloneIssueManagement​(org.apache.maven.model.IssueManagement src)
      • cloneDistributionManagement

        public static org.apache.maven.model.DistributionManagement cloneDistributionManagement​(org.apache.maven.model.DistributionManagement src)
      • cloneSite

        public static org.apache.maven.model.Site cloneSite​(org.apache.maven.model.Site src)
      • cloneDeploymentRepository

        public static org.apache.maven.model.DeploymentRepository cloneDeploymentRepository​(org.apache.maven.model.DeploymentRepository src)
      • cloneRelocation

        public static org.apache.maven.model.Relocation cloneRelocation​(org.apache.maven.model.Relocation src)
      • cloneDependencyManagement

        public static org.apache.maven.model.DependencyManagement cloneDependencyManagement​(org.apache.maven.model.DependencyManagement src)
      • cloneContributor

        public static org.apache.maven.model.Contributor cloneContributor​(org.apache.maven.model.Contributor src)
      • cloneDeveloper

        public static org.apache.maven.model.Developer cloneDeveloper​(org.apache.maven.model.Developer src)
      • cloneCiManagement

        public static org.apache.maven.model.CiManagement cloneCiManagement​(org.apache.maven.model.CiManagement src)
      • cloneNotifier

        public static org.apache.maven.model.Notifier cloneNotifier​(org.apache.maven.model.Notifier src)
      • cloneProperties

        public static java.util.Properties cloneProperties​(java.util.Properties src)
      • cloneBuild

        public static org.apache.maven.model.Build cloneBuild​(org.apache.maven.model.Build src)
      • cloneBuildBaseFields

        public static void cloneBuildBaseFields​(org.apache.maven.model.BuildBase src,
                                                org.apache.maven.model.BuildBase result)
      • clonePluginManagement

        public static org.apache.maven.model.PluginManagement clonePluginManagement​(org.apache.maven.model.PluginManagement src)
      • cloneResource

        public static org.apache.maven.model.Resource cloneResource​(org.apache.maven.model.Resource src)
      • clonePlugin

        public static org.apache.maven.model.Plugin clonePlugin​(org.apache.maven.model.Plugin src)
      • clonePluginExecution

        public static org.apache.maven.model.PluginExecution clonePluginExecution​(org.apache.maven.model.PluginExecution src)
      • cloneConfiguration

        public static java.lang.Object cloneConfiguration​(java.lang.Object configuration)
      • cloneDependency

        public static org.apache.maven.model.Dependency cloneDependency​(org.apache.maven.model.Dependency src)
      • cloneExclusion

        public static org.apache.maven.model.Exclusion cloneExclusion​(org.apache.maven.model.Exclusion src)
      • cloneListOfStrings

        public static java.util.List cloneListOfStrings​(java.util.List src)
      • cloneExtension

        public static org.apache.maven.model.Extension cloneExtension​(org.apache.maven.model.Extension src)
      • cloneDependencyExclusion

        public static org.apache.maven.model.Exclusion cloneDependencyExclusion​(org.apache.maven.model.Exclusion src)
      • cloneParent

        public static org.apache.maven.model.Parent cloneParent​(org.apache.maven.model.Parent src)
      • mergeRepositoryLists

        public static java.util.List mergeRepositoryLists​(java.util.List dominant,
                                                          java.util.List recessive)
      • mergeExtensionLists

        public static void mergeExtensionLists​(org.apache.maven.model.Build childBuild,
                                               org.apache.maven.model.Build parentBuild)
      • mergeResourceLists

        public static void mergeResourceLists​(java.util.List childResources,
                                              java.util.List parentResources)
      • mergeFilterLists

        public static void mergeFilterLists​(java.util.List childFilters,
                                            java.util.List parentFilters)
      • mergeDependencyList

        public static java.util.List mergeDependencyList​(java.util.List child,
                                                         java.util.List parent)