Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 65409b8

Browse files
committed
Avoid UnionFileTree in Delombok
see #712
1 parent 0241c17 commit 65409b8

File tree

1 file changed

+14
-10
lines changed
  • lombok-plugin/src/main/java/io/freefair/gradle/plugins/lombok/tasks

1 file changed

+14
-10
lines changed

lombok-plugin/src/main/java/io/freefair/gradle/plugins/lombok/tasks/Delombok.java

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,7 @@
33
import lombok.Getter;
44
import lombok.Setter;
55
import org.gradle.api.DefaultTask;
6-
import org.gradle.api.file.ConfigurableFileCollection;
7-
import org.gradle.api.file.DirectoryProperty;
8-
import org.gradle.api.file.FileSystemOperations;
9-
import org.gradle.api.file.FileTree;
6+
import org.gradle.api.file.*;
107
import org.gradle.api.internal.file.FileTreeInternal;
118
import org.gradle.api.internal.file.UnionFileTree;
129
import org.gradle.api.provider.Property;
@@ -132,13 +129,20 @@ public abstract class Delombok extends DefaultTask implements LombokTask {
132129
@SkipWhenEmpty
133130
@IgnoreEmptyDirectories
134131
protected FileTree getFilteredInput() {
135-
List<FileTreeInternal> collect = getInput().getFiles().stream()
136-
.filter(File::isDirectory)
137-
.map(dir -> getProject().fileTree(dir))
138-
.map(FileTreeInternal.class::cast)
139-
.collect(Collectors.toList());
132+
ConfigurableFileTree fileTree = null;
133+
134+
for (File file : getInput().getFiles()) {
135+
if (file.isDirectory()) {
136+
if (fileTree == null) {
137+
fileTree = getProject().fileTree(file);
138+
}
139+
else {
140+
fileTree.from(file);
141+
}
142+
}
143+
}
140144

141-
return new UnionFileTree("actual " + getName() + " input", collect);
145+
return fileTree;
142146
}
143147

144148
@TaskAction

0 commit comments

Comments
 (0)