Package org.apache.maven.model.merge
Class MavenModelMerger
java.lang.Object
org.apache.maven.model.merge.ModelMerger
org.apache.maven.model.merge.MavenModelMerger
- Direct Known Subclasses:
DefaultDependencyManagementInjector.ManagementModelMerger
,DefaultInheritanceAssembler.InheritanceModelMerger
,DefaultModelNormalizer.DuplicateMerger
,DefaultPluginManagementInjector.ManagementModelMerger
,DefaultProfileInjector.ProfileModelMerger
public class MavenModelMerger
extends org.apache.maven.model.merge.ModelMerger
The domain-specific model merger for the Maven POM, overriding generic code from parent class when necessary with
more adapted algorithms.
- Author:
- Benjamin Bentmann
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected String
extrapolateChildUrl
(String parentUrl, boolean appendPath, Map<Object, Object> context) protected Object
getDependencyKey
(org.apache.maven.model.Dependency dependency) protected Object
getExclusionKey
(org.apache.maven.model.Exclusion exclusion) protected Object
getExtensionKey
(org.apache.maven.model.Extension extension) protected Object
getPluginExecutionKey
(org.apache.maven.model.PluginExecution pluginExecution) protected Object
getPluginKey
(org.apache.maven.model.Plugin plugin) protected Object
getReportPluginKey
(org.apache.maven.model.ReportPlugin reportPlugin) protected Object
getReportSetKey
(org.apache.maven.model.ReportSet reportSet) protected Object
getRepositoryBaseKey
(org.apache.maven.model.RepositoryBase repositoryBase) protected boolean
isSiteEmpty
(org.apache.maven.model.Site site) protected void
mergeBuildBase_Filters
(org.apache.maven.model.BuildBase target, org.apache.maven.model.BuildBase source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeBuildBase_Resources
(org.apache.maven.model.BuildBase target, org.apache.maven.model.BuildBase source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeBuildBase_TestResources
(org.apache.maven.model.BuildBase target, org.apache.maven.model.BuildBase source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeDistributionManagement_Repository
(org.apache.maven.model.DistributionManagement target, org.apache.maven.model.DistributionManagement source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeDistributionManagement_Site
(org.apache.maven.model.DistributionManagement target, org.apache.maven.model.DistributionManagement source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeDistributionManagement_SnapshotRepository
(org.apache.maven.model.DistributionManagement target, org.apache.maven.model.DistributionManagement source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeModel
(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeModel_ArtifactId
(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeModel_CiManagement
(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeModel_Contributors
(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeModel_Developers
(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeModel_IssueManagement
(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeModel_Licenses
(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeModel_MailingLists
(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeModel_ModelVersion
(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeModel_Name
(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeModel_Organization
(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeModel_Prerequisites
(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeModel_Profiles
(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeModel_Url
(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeModelBase_Modules
(org.apache.maven.model.ModelBase target, org.apache.maven.model.ModelBase source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeModelBase_PluginRepositories
(org.apache.maven.model.ModelBase target, org.apache.maven.model.ModelBase source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeModelBase_Repositories
(org.apache.maven.model.ModelBase target, org.apache.maven.model.ModelBase source, boolean sourceDominant, Map<Object, Object> context) protected void
mergePlugin_Executions
(org.apache.maven.model.Plugin target, org.apache.maven.model.Plugin source, boolean sourceDominant, Map<Object, Object> context) protected void
mergePluginExecution_Goals
(org.apache.maven.model.PluginExecution target, org.apache.maven.model.PluginExecution source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeReportPlugin_ReportSets
(org.apache.maven.model.ReportPlugin target, org.apache.maven.model.ReportPlugin source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeScm_Connection
(org.apache.maven.model.Scm target, org.apache.maven.model.Scm source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeScm_DeveloperConnection
(org.apache.maven.model.Scm target, org.apache.maven.model.Scm source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeScm_Url
(org.apache.maven.model.Scm target, org.apache.maven.model.Scm source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeSite
(org.apache.maven.model.Site target, org.apache.maven.model.Site source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeSite_Url
(org.apache.maven.model.Site target, org.apache.maven.model.Site source, boolean sourceDominant, Map<Object, Object> context) Methods inherited from class org.apache.maven.model.merge.ModelMerger
getContributorKey, getDeveloperKey, getLicenseKey, getMailingListKey, getNotifierKey, getProfileKey, getRepositoryKey, getResourceKey, merge, mergeActivation, mergeBuild, mergeBuild_Extensions, mergeBuild_OutputDirectory, mergeBuild_ScriptSourceDirectory, mergeBuild_SourceDirectory, mergeBuild_TestOutputDirectory, mergeBuild_TestSourceDirectory, mergeBuildBase, mergeBuildBase_DefaultGoal, mergeBuildBase_Directory, mergeBuildBase_FinalName, mergeCiManagement, mergeCiManagement_Notifiers, mergeCiManagement_System, mergeCiManagement_Url, mergeConfigurationContainer, mergeConfigurationContainer_Configuration, mergeConfigurationContainer_Inherited, mergeContributor, mergeContributor_Email, mergeContributor_Name, mergeContributor_Organization, mergeContributor_OrganizationUrl, mergeContributor_Properties, mergeContributor_Roles, mergeContributor_Timezone, mergeContributor_Url, mergeDependency, mergeDependency_ArtifactId, mergeDependency_Classifier, mergeDependency_Exclusions, mergeDependency_GroupId, mergeDependency_Optional, mergeDependency_Scope, mergeDependency_SystemPath, mergeDependency_Type, mergeDependency_Version, mergeDependencyManagement, mergeDependencyManagement_Dependencies, mergeDeploymentRepository, mergeDeploymentRepository_UniqueVersion, mergeDeveloper, mergeDeveloper_Id, mergeDistributionManagement, mergeDistributionManagement_DownloadUrl, mergeDistributionManagement_Status, mergeExclusion, mergeExclusion_ArtifactId, mergeExclusion_GroupId, mergeExtension, mergeExtension_ArtifactId, mergeExtension_GroupId, mergeExtension_Version, mergeFileSet, mergeFileSet_Directory, mergeIssueManagement, mergeIssueManagement_System, mergeIssueManagement_Url, mergeLicense, mergeLicense_Comments, mergeLicense_Distribution, mergeLicense_Name, mergeLicense_Url, mergeMailingList, mergeMailingList_Archive, mergeMailingList_Name, mergeMailingList_OtherArchives, mergeMailingList_Post, mergeMailingList_Subscribe, mergeMailingList_Unsubscribe, mergeModel_Build, mergeModel_ChildProjectUrlInheritAppendPath, mergeModel_Description, mergeModel_GroupId, mergeModel_InceptionYear, mergeModel_Packaging, mergeModel_Parent, mergeModel_Scm, mergeModel_Version, mergeModelBase, mergeModelBase_Dependencies, mergeModelBase_DependencyManagement, mergeModelBase_DistributionManagement, mergeModelBase_Properties, mergeModelBase_Reporting, mergeNotifier, mergeNotifier_Address, mergeNotifier_Configuration, mergeNotifier_SendOnError, mergeNotifier_SendOnFailure, mergeNotifier_SendOnSuccess, mergeNotifier_SendOnWarning, mergeNotifier_Type, mergeOrganization, mergeOrganization_Name, mergeOrganization_Url, mergeParent, mergeParent_ArtifactId, mergeParent_GroupId, mergeParent_RelativePath, mergeParent_Version, mergePatternSet, mergePatternSet_Excludes, mergePatternSet_Includes, mergePlugin, mergePlugin_ArtifactId, mergePlugin_Dependencies, mergePlugin_Extensions, mergePlugin_GroupId, mergePlugin_Version, mergePluginConfiguration, mergePluginConfiguration_PluginManagement, mergePluginContainer, mergePluginContainer_Plugins, mergePluginExecution, mergePluginExecution_Id, mergePluginExecution_Phase, mergePluginManagement, mergePrerequisites, mergePrerequisites_Maven, mergeProfile, mergeRelocation, mergeRelocation_ArtifactId, mergeRelocation_GroupId, mergeRelocation_Message, mergeRelocation_Version, mergeReporting, mergeReporting_ExcludeDefaults, mergeReporting_OutputDirectory, mergeReporting_Plugins, mergeReportPlugin, mergeReportPlugin_ArtifactId, mergeReportPlugin_GroupId, mergeReportPlugin_Version, mergeReportSet, mergeReportSet_Id, mergeReportSet_Reports, mergeRepository, mergeRepository_Releases, mergeRepository_Snapshots, mergeRepositoryBase, mergeRepositoryBase_Id, mergeRepositoryBase_Layout, mergeRepositoryBase_Name, mergeRepositoryBase_Url, mergeRepositoryPolicy, mergeRepositoryPolicy_ChecksumPolicy, mergeRepositoryPolicy_Enabled, mergeRepositoryPolicy_UpdatePolicy, mergeResource, mergeResource_Filtering, mergeResource_MergeId, mergeResource_TargetPath, mergeScm, mergeScm_ChildScmConnectionInheritAppendPath, mergeScm_ChildScmDeveloperConnectionInheritAppendPath, mergeScm_ChildScmUrlInheritAppendPath, mergeScm_Tag, mergeSite_ChildSiteUrlInheritAppendPath, mergeSite_Id, mergeSite_Name
-
Field Details
-
CHILD_PATH_ADJUSTMENT
The hint key for the child path adjustment used during inheritance for URL calculations.- See Also:
-
ARTIFACT_ID
The context key for the artifact id of the target model.- See Also:
-
-
Constructor Details
-
MavenModelMerger
public MavenModelMerger()
-
-
Method Details
-
mergeModel
protected void mergeModel(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeModel
in classorg.apache.maven.model.merge.ModelMerger
-
mergeModel_Name
protected void mergeModel_Name(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeModel_Name
in classorg.apache.maven.model.merge.ModelMerger
-
mergeModel_Url
protected void mergeModel_Url(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeModel_Url
in classorg.apache.maven.model.merge.ModelMerger
-
mergeModel_Organization
protected void mergeModel_Organization(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeModel_Organization
in classorg.apache.maven.model.merge.ModelMerger
-
mergeModel_IssueManagement
protected void mergeModel_IssueManagement(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeModel_IssueManagement
in classorg.apache.maven.model.merge.ModelMerger
-
mergeModel_CiManagement
protected void mergeModel_CiManagement(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeModel_CiManagement
in classorg.apache.maven.model.merge.ModelMerger
-
mergeModel_ModelVersion
protected void mergeModel_ModelVersion(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeModel_ModelVersion
in classorg.apache.maven.model.merge.ModelMerger
-
mergeModel_ArtifactId
protected void mergeModel_ArtifactId(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeModel_ArtifactId
in classorg.apache.maven.model.merge.ModelMerger
-
mergeModel_Profiles
protected void mergeModel_Profiles(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeModel_Profiles
in classorg.apache.maven.model.merge.ModelMerger
-
mergeModel_Prerequisites
protected void mergeModel_Prerequisites(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeModel_Prerequisites
in classorg.apache.maven.model.merge.ModelMerger
-
mergeModel_Licenses
protected void mergeModel_Licenses(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeModel_Licenses
in classorg.apache.maven.model.merge.ModelMerger
-
mergeModel_Developers
protected void mergeModel_Developers(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeModel_Developers
in classorg.apache.maven.model.merge.ModelMerger
-
mergeModel_Contributors
protected void mergeModel_Contributors(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeModel_Contributors
in classorg.apache.maven.model.merge.ModelMerger
-
mergeModel_MailingLists
protected void mergeModel_MailingLists(org.apache.maven.model.Model target, org.apache.maven.model.Model source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeModel_MailingLists
in classorg.apache.maven.model.merge.ModelMerger
-
mergeModelBase_Modules
protected void mergeModelBase_Modules(org.apache.maven.model.ModelBase target, org.apache.maven.model.ModelBase source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeModelBase_Modules
in classorg.apache.maven.model.merge.ModelMerger
-
mergeModelBase_Repositories
protected void mergeModelBase_Repositories(org.apache.maven.model.ModelBase target, org.apache.maven.model.ModelBase source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeModelBase_Repositories
in classorg.apache.maven.model.merge.ModelMerger
-
mergeModelBase_PluginRepositories
protected void mergeModelBase_PluginRepositories(org.apache.maven.model.ModelBase target, org.apache.maven.model.ModelBase source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeModelBase_PluginRepositories
in classorg.apache.maven.model.merge.ModelMerger
-
mergeBuildBase_Filters
protected void mergeBuildBase_Filters(org.apache.maven.model.BuildBase target, org.apache.maven.model.BuildBase source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeBuildBase_Filters
in classorg.apache.maven.model.merge.ModelMerger
-
mergeBuildBase_Resources
protected void mergeBuildBase_Resources(org.apache.maven.model.BuildBase target, org.apache.maven.model.BuildBase source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeBuildBase_Resources
in classorg.apache.maven.model.merge.ModelMerger
-
mergeBuildBase_TestResources
protected void mergeBuildBase_TestResources(org.apache.maven.model.BuildBase target, org.apache.maven.model.BuildBase source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeBuildBase_TestResources
in classorg.apache.maven.model.merge.ModelMerger
-
mergeDistributionManagement_Repository
protected void mergeDistributionManagement_Repository(org.apache.maven.model.DistributionManagement target, org.apache.maven.model.DistributionManagement source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeDistributionManagement_Repository
in classorg.apache.maven.model.merge.ModelMerger
-
mergeDistributionManagement_SnapshotRepository
protected void mergeDistributionManagement_SnapshotRepository(org.apache.maven.model.DistributionManagement target, org.apache.maven.model.DistributionManagement source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeDistributionManagement_SnapshotRepository
in classorg.apache.maven.model.merge.ModelMerger
-
mergeDistributionManagement_Site
protected void mergeDistributionManagement_Site(org.apache.maven.model.DistributionManagement target, org.apache.maven.model.DistributionManagement source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeDistributionManagement_Site
in classorg.apache.maven.model.merge.ModelMerger
-
mergeSite
protected void mergeSite(org.apache.maven.model.Site target, org.apache.maven.model.Site source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeSite
in classorg.apache.maven.model.merge.ModelMerger
-
isSiteEmpty
protected boolean isSiteEmpty(org.apache.maven.model.Site site) -
mergeSite_Url
protected void mergeSite_Url(org.apache.maven.model.Site target, org.apache.maven.model.Site source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeSite_Url
in classorg.apache.maven.model.merge.ModelMerger
-
mergeScm_Url
protected void mergeScm_Url(org.apache.maven.model.Scm target, org.apache.maven.model.Scm source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeScm_Url
in classorg.apache.maven.model.merge.ModelMerger
-
mergeScm_Connection
protected void mergeScm_Connection(org.apache.maven.model.Scm target, org.apache.maven.model.Scm source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeScm_Connection
in classorg.apache.maven.model.merge.ModelMerger
-
mergeScm_DeveloperConnection
protected void mergeScm_DeveloperConnection(org.apache.maven.model.Scm target, org.apache.maven.model.Scm source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeScm_DeveloperConnection
in classorg.apache.maven.model.merge.ModelMerger
-
mergePlugin_Executions
protected void mergePlugin_Executions(org.apache.maven.model.Plugin target, org.apache.maven.model.Plugin source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergePlugin_Executions
in classorg.apache.maven.model.merge.ModelMerger
-
mergePluginExecution_Goals
protected void mergePluginExecution_Goals(org.apache.maven.model.PluginExecution target, org.apache.maven.model.PluginExecution source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergePluginExecution_Goals
in classorg.apache.maven.model.merge.ModelMerger
-
mergeReportPlugin_ReportSets
protected void mergeReportPlugin_ReportSets(org.apache.maven.model.ReportPlugin target, org.apache.maven.model.ReportPlugin source, boolean sourceDominant, Map<Object, Object> context) - Overrides:
mergeReportPlugin_ReportSets
in classorg.apache.maven.model.merge.ModelMerger
-
getDependencyKey
- Overrides:
getDependencyKey
in classorg.apache.maven.model.merge.ModelMerger
-
getPluginKey
- Overrides:
getPluginKey
in classorg.apache.maven.model.merge.ModelMerger
-
getPluginExecutionKey
- Overrides:
getPluginExecutionKey
in classorg.apache.maven.model.merge.ModelMerger
-
getReportPluginKey
- Overrides:
getReportPluginKey
in classorg.apache.maven.model.merge.ModelMerger
-
getReportSetKey
- Overrides:
getReportSetKey
in classorg.apache.maven.model.merge.ModelMerger
-
getRepositoryBaseKey
- Overrides:
getRepositoryBaseKey
in classorg.apache.maven.model.merge.ModelMerger
-
getExtensionKey
- Overrides:
getExtensionKey
in classorg.apache.maven.model.merge.ModelMerger
-
getExclusionKey
- Overrides:
getExclusionKey
in classorg.apache.maven.model.merge.ModelMerger
-
extrapolateChildUrl
-