All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.jetbrains.kotlinx.jupyter.libraries.LibraryHttpUtil.kt Maven / Gradle / Ivy

Go to download

Implementation of REPL compiler and preprocessor for Jupyter dialect of Kotlin (IDE-compatible)

The newest version!
package org.jetbrains.kotlinx.jupyter.libraries

import org.jetbrains.kotlinx.jupyter.api.KernelLoggerFactory
import org.jetbrains.kotlinx.jupyter.common.HttpClient
import org.jetbrains.kotlinx.jupyter.common.LibraryDescriptorsManager
import org.jetbrains.kotlinx.jupyter.common.SimpleHttpClient
import org.jetbrains.kotlinx.jupyter.util.asCommonFactory

class LibraryHttpUtil(
    val httpClient: HttpClient,
    val libraryDescriptorsManager: LibraryDescriptorsManager,
    val libraryInfoCache: LibraryInfoCache,
    val libraryReferenceParser: LibraryReferenceParser,
)

fun createLibraryHttpUtil(
    loggerFactory: KernelLoggerFactory,
    httpClient: HttpClient = SimpleHttpClient,
): LibraryHttpUtil {
    val libraryDescriptorsManager =
        LibraryDescriptorsManager.getInstance(httpClient, loggerFactory.asCommonFactory())
    val libraryInfoCache = LibraryInfoCacheImpl(libraryDescriptorsManager)
    val libraryReferenceParser = LibraryReferenceParserImpl(libraryInfoCache)

    return LibraryHttpUtil(
        httpClient,
        libraryDescriptorsManager,
        libraryInfoCache,
        libraryReferenceParser,
    )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy