mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-27 06:45:07 +02:00
8345433: (fs) Use stream to load FileTypeDetectors in Files.probeContentType
Reviewed-by: rriggs, alanb, aturbanov
This commit is contained in:
parent
9740c1df6f
commit
1d3dcdf2d6
2 changed files with 6 additions and 9 deletions
|
@ -90,7 +90,6 @@ public abstract class AsynchronousChannelProvider {
|
||||||
ServiceLoader<AsynchronousChannelProvider> sl =
|
ServiceLoader<AsynchronousChannelProvider> sl =
|
||||||
ServiceLoader.load(AsynchronousChannelProvider.class,
|
ServiceLoader.load(AsynchronousChannelProvider.class,
|
||||||
ClassLoader.getSystemClassLoader());
|
ClassLoader.getSystemClassLoader());
|
||||||
Iterator<AsynchronousChannelProvider> i = sl.iterator();
|
|
||||||
return sl.findFirst().orElse(null);
|
return sl.findFirst().orElse(null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1509,7 +1509,7 @@ public final class Files {
|
||||||
}
|
}
|
||||||
|
|
||||||
// lazy loading of default and installed file type detectors
|
// lazy loading of default and installed file type detectors
|
||||||
private static class FileTypeDetectors{
|
private static class FileTypeDetectors {
|
||||||
static final FileTypeDetector defaultFileTypeDetector =
|
static final FileTypeDetector defaultFileTypeDetector =
|
||||||
createDefaultFileTypeDetector();
|
createDefaultFileTypeDetector();
|
||||||
static final List<FileTypeDetector> installedDetectors =
|
static final List<FileTypeDetector> installedDetectors =
|
||||||
|
@ -1522,13 +1522,11 @@ public final class Files {
|
||||||
|
|
||||||
// loads all installed file type detectors
|
// loads all installed file type detectors
|
||||||
private static List<FileTypeDetector> loadInstalledDetectors() {
|
private static List<FileTypeDetector> loadInstalledDetectors() {
|
||||||
List<FileTypeDetector> list = new ArrayList<>();
|
return ServiceLoader.load(FileTypeDetector.class,
|
||||||
ServiceLoader<FileTypeDetector> loader = ServiceLoader
|
ClassLoader.getSystemClassLoader())
|
||||||
.load(FileTypeDetector.class, ClassLoader.getSystemClassLoader());
|
.stream()
|
||||||
for (FileTypeDetector detector: loader) {
|
.map(ServiceLoader.Provider::get)
|
||||||
list.add(detector);
|
.toList();
|
||||||
}
|
|
||||||
return list;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue