From d2c8b670bf13615aa91df2d39b252f3ba7c38837 Mon Sep 17 00:00:00 2001 From: Dmitry Jemerov Date: Thu, 5 Nov 2015 12:09:42 +0100 Subject: remove unnecessary getResourceAsStream() (https://bugs.openjdk.java.net/browse/JDK-8080094) --- src/Utilities/ServiceLocator.kt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/Utilities') diff --git a/src/Utilities/ServiceLocator.kt b/src/Utilities/ServiceLocator.kt index 92aa9ba4..7a5aff79 100644 --- a/src/Utilities/ServiceLocator.kt +++ b/src/Utilities/ServiceLocator.kt @@ -40,10 +40,10 @@ public object ServiceLocator { return ServiceDescriptor(implementationName, category, properties["description"]?.toString(), className) } - fun allServices(category: String): List = javaClass.classLoader.getResourceAsStream("dokka/$category")?.use { stream -> + fun allServices(category: String): List { val entries = this.javaClass.classLoader.getResources("dokka/$category")?.toList() ?: emptyList() - entries.flatMap { + return entries.flatMap { when (it.protocol) { "file" -> File(it.file).listFiles()?.filter { it.extension == "properties" }?.map { lookupDescriptor(category, it.nameWithoutExtension) } ?: emptyList() "jar" -> { @@ -63,7 +63,7 @@ public object ServiceLocator { else -> emptyList() } } - } ?: emptyList() + } } public inline fun ServiceLocator.lookup(category: String, implementationName: String): T = lookup(T::class.java, category, implementationName) -- cgit