diff --git a/hawkeye-core/src/main/java/io/korandoru/hawkeye/core/Selection.java b/hawkeye-core/src/main/java/io/korandoru/hawkeye/core/Selection.java index 992f671d..a994a768 100644 --- a/hawkeye-core/src/main/java/io/korandoru/hawkeye/core/Selection.java +++ b/hawkeye-core/src/main/java/io/korandoru/hawkeye/core/Selection.java @@ -50,9 +50,8 @@ public final class Selection { public Selection(File basedir, String[] included, String[] excluded, boolean useDefaultExcludes) { this.basedir = basedir; this.fs = basedir.toPath().getFileSystem(); - final String[] overrides = buildOverrideInclusions(useDefaultExcludes, included); - this.included = buildInclusions(included, overrides); - this.excluded = buildExclusions(useDefaultExcludes, excluded, overrides); + this.included = included.length > 0 ? included : Default.INCLUDE; + this.excluded = buildExclusions(useDefaultExcludes, excluded, included); this.selectedFiles = new CompletableFuture<>(); } @@ -103,41 +102,17 @@ public FileVisitResult postVisitDirectory(Path dir, IOException exc) { return selectedFiles.get(0, TimeUnit.SECONDS); } - private static String[] buildExclusions(boolean useDefaultExcludes, String[] excludes, String[] overrides) { + private static String[] buildExclusions(boolean useDefaultExcludes, String[] excludes, String[] includes) { final List exclusions = new ArrayList<>(); if (useDefaultExcludes) { exclusions.addAll(asList(Default.EXCLUDES)); } // remove from the default exclusion list the patterns that have been explicitly included - for (String override : overrides) { - exclusions.remove(override); - } - if (excludes != null && excludes.length > 0) { - exclusions.addAll(asList(excludes)); - } + exclusions.removeAll(asList(includes)); + exclusions.addAll(asList(excludes)); return exclusions.toArray(new String[0]); } - private static String[] buildInclusions(String[] includes, String[] overrides) { - // if we use the default exclusion list, we just remove - final List inclusions = new ArrayList<>(asList(includes != null && includes.length > 0 ? includes : Default.INCLUDE)); - inclusions.removeAll(asList(overrides)); - if (inclusions.isEmpty()) { - inclusions.addAll(asList(Default.INCLUDE)); - } - return inclusions.toArray(new String[0]); - } - - private static String[] buildOverrideInclusions(boolean useDefaultExcludes, String[] includes) { - // return the list of patterns that we have explicitly included when using default exclude list - if (!useDefaultExcludes || includes == null || includes.length == 0) { - return new String[0]; - } - List overrides = new ArrayList<>(asList(Default.EXCLUDES)); - overrides.retainAll(asList(includes)); - return overrides.toArray(new String[0]); - } - private List findFolderExcludes() { final List excludes = new ArrayList<>(); for (final String exclude : excluded) { diff --git a/licenserc.toml b/licenserc.toml index a0985df9..6b82b81f 100644 --- a/licenserc.toml +++ b/licenserc.toml @@ -28,6 +28,11 @@ See the License for the specific language governing permissions and limitations under the License. """ +includes = [ + "**/target/**", + "pom.xml" +] + excludes = [ "**/src/test/**/*.txt", "**/src/test/**/*.xml",