Skip to content

Commit

Permalink
Avoid UnionFileTree in Delombok
Browse files Browse the repository at this point in the history
see #712
  • Loading branch information
larsgrefer committed Feb 13, 2023
1 parent 0241c17 commit 65409b8
Showing 1 changed file with 14 additions and 10 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,7 @@
import lombok.Getter;
import lombok.Setter;
import org.gradle.api.DefaultTask;
import org.gradle.api.file.ConfigurableFileCollection;
import org.gradle.api.file.DirectoryProperty;
import org.gradle.api.file.FileSystemOperations;
import org.gradle.api.file.FileTree;
import org.gradle.api.file.*;
import org.gradle.api.internal.file.FileTreeInternal;
import org.gradle.api.internal.file.UnionFileTree;
import org.gradle.api.provider.Property;
Expand Down Expand Up @@ -132,13 +129,20 @@ public abstract class Delombok extends DefaultTask implements LombokTask {
@SkipWhenEmpty
@IgnoreEmptyDirectories
protected FileTree getFilteredInput() {
List<FileTreeInternal> collect = getInput().getFiles().stream()
.filter(File::isDirectory)
.map(dir -> getProject().fileTree(dir))
.map(FileTreeInternal.class::cast)
.collect(Collectors.toList());
ConfigurableFileTree fileTree = null;

for (File file : getInput().getFiles()) {
if (file.isDirectory()) {
if (fileTree == null) {
fileTree = getProject().fileTree(file);
}
else {
fileTree.from(file);
}
}
}

return new UnionFileTree("actual " + getName() + " input", collect);
return fileTree;
}

@TaskAction
Expand Down

0 comments on commit 65409b8

Please sign in to comment.