Add an ability to provide own handler for errors inside KotlinJavascriptMetadataUtils.loadMetadata
Use a logger to handle errors inside loadMetadata when it's used from IDE (JsResolverForModuleFactory). #EA-218905
This commit is contained in:
@@ -65,8 +65,11 @@ object KotlinJavascriptMetadataUtils {
|
||||
"\"${Base64.getEncoder().encodeToString(content)}\");\n"
|
||||
|
||||
@JvmStatic
|
||||
fun loadMetadata(file: File): List<KotlinJavascriptMetadata> {
|
||||
assert(file.exists()) { "Library $file not found" }
|
||||
fun loadMetadata(file: File, onError: (message: String) -> Unit = ::error): List<KotlinJavascriptMetadata> {
|
||||
if (!file.exists()) {
|
||||
onError("Library $file not found")
|
||||
return emptyList()
|
||||
}
|
||||
val metadataList = arrayListOf<KotlinJavascriptMetadata>()
|
||||
JsLibraryUtils.traverseJsLibrary(file) { library ->
|
||||
parseMetadata(library.content, metadataList)
|
||||
@@ -76,7 +79,7 @@ object KotlinJavascriptMetadataUtils {
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
fun loadMetadata(path: String): List<KotlinJavascriptMetadata> = loadMetadata(File(path))
|
||||
fun loadMetadata(path: String, onError: (message: String) -> Unit): List<KotlinJavascriptMetadata> = loadMetadata(File(path), onError)
|
||||
|
||||
@JvmStatic
|
||||
fun parseMetadata(text: CharSequence, metadataList: MutableList<KotlinJavascriptMetadata>) {
|
||||
|
||||
Reference in New Issue
Block a user