jvmMain.com.seiko.imageloader.util.Platform.jvm.kt Maven / Gradle / Ivy
package com.seiko.imageloader.util
import io.ktor.client.engine.HttpClientEngine
import io.ktor.client.engine.okhttp.OkHttp
import io.ktor.utils.io.ByteReadChannel
import io.ktor.utils.io.jvm.javaio.toInputStream
import okio.BufferedSource
import okio.FileSystem
import okio.buffer
import okio.source
actual typealias WeakReference = java.lang.ref.WeakReference
actual typealias AtomicBoolean = java.util.concurrent.atomic.AtomicBoolean
actual typealias LockObject = Any
internal actual inline fun synchronized(lock: LockObject, block: () -> R): R {
return kotlin.synchronized(lock, block)
}
internal actual suspend fun ByteReadChannel.source(): BufferedSource {
return toInputStream().source().buffer()
}
internal actual val httpEngine: HttpClientEngine get() = OkHttp.create()
internal actual val defaultFileSystem: FileSystem? get() = FileSystem.SYSTEM
internal expect fun getMimeTypeFromExtension(extension: String): String?
© 2015 - 2025 Weber Informatics LLC | Privacy Policy