private void assembleDistributionInheritance()

in src/main/java/org/apache/maven/plugin/resources/remote/ModelInheritanceAssembler.java [477:530]


    private void assembleDistributionInheritance(
            Model child, Model parent, String childPathAdjustment, boolean appendPaths) {
        if (parent.getDistributionManagement() != null) {
            DistributionManagement parentDistMgmt = parent.getDistributionManagement();

            DistributionManagement childDistMgmt = child.getDistributionManagement();

            if (childDistMgmt == null) {
                childDistMgmt = new DistributionManagement();

                child.setDistributionManagement(childDistMgmt);
            }

            if (childDistMgmt.getSite() == null) {
                if (parentDistMgmt.getSite() != null) {
                    Site site = new Site();

                    childDistMgmt.setSite(site);

                    site.setId(parentDistMgmt.getSite().getId());

                    site.setName(parentDistMgmt.getSite().getName());

                    site.setUrl(parentDistMgmt.getSite().getUrl());

                    if (site.getUrl() != null) {
                        site.setUrl(appendPath(site.getUrl(), child.getArtifactId(), childPathAdjustment, appendPaths));
                    }
                }
            }

            if (childDistMgmt.getRepository() == null) {
                if (parentDistMgmt.getRepository() != null) {
                    DeploymentRepository repository = copyDistributionRepository(parentDistMgmt.getRepository());
                    childDistMgmt.setRepository(repository);
                }
            }

            if (childDistMgmt.getSnapshotRepository() == null) {
                if (parentDistMgmt.getSnapshotRepository() != null) {
                    DeploymentRepository repository =
                            copyDistributionRepository(parentDistMgmt.getSnapshotRepository());
                    childDistMgmt.setSnapshotRepository(repository);
                }
            }

            if (StringUtils.isEmpty(childDistMgmt.getDownloadUrl())) {
                childDistMgmt.setDownloadUrl(parentDistMgmt.getDownloadUrl());
            }

            // NOTE: We SHOULD NOT be inheriting status, since this is an assessment of the POM quality.
            // NOTE: We SHOULD NOT be inheriting relocation, since this relates to a single POM
        }
    }