public PluginScanConfig mergeWith()

in src/main/java/org/apache/maven/buildcache/PluginScanConfigImpl.java [70:98]


    public PluginScanConfig mergeWith(final PluginScanConfig overrideConfig) {
        if (dto == null) {
            return overrideConfig;
        }

        final DirScanConfig override = overrideConfig.dto();
        if (override == null) {
            return this;
        }

        if (override.isIgnoreParent()) {
            return overrideConfig;
        }

        DirScanConfig merged = new DirScanConfig();
        if (override.getMode() != null) {
            merged.setMode(override.getMode());
        } else {
            merged.setMode(dto.getMode());
        }

        merged.getExcludes().addAll(dto.getExcludes());
        merged.getExcludes().addAll(override.getExcludes());

        merged.getIncludes().addAll(dto.getIncludes());
        merged.getIncludes().addAll(override.getIncludes());

        return new PluginScanConfigImpl(merged);
    }