parent
a36e5fce29
commit
ed56170809
@ -1,18 +0,0 @@
|
|||||||
package org.koitharu.kotatsu.local.data
|
|
||||||
|
|
||||||
import okhttp3.internal.closeQuietly
|
|
||||||
import okio.BufferedSource
|
|
||||||
import okio.Closeable
|
|
||||||
|
|
||||||
class ExtraCloseableBufferedSource(
|
|
||||||
private val delegate: BufferedSource,
|
|
||||||
vararg closeable: Closeable,
|
|
||||||
) : BufferedSource by delegate {
|
|
||||||
|
|
||||||
private val extraCloseable = closeable
|
|
||||||
|
|
||||||
override fun close() {
|
|
||||||
delegate.close()
|
|
||||||
extraCloseable.forEach { x -> x.closeQuietly() }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -0,0 +1,21 @@
|
|||||||
|
package org.koitharu.kotatsu.local.data
|
||||||
|
|
||||||
|
import okhttp3.internal.closeQuietly
|
||||||
|
import okio.Closeable
|
||||||
|
import okio.Source
|
||||||
|
|
||||||
|
private class ExtraCloseableSource(
|
||||||
|
private val delegate: Source,
|
||||||
|
private val extraCloseable: Closeable,
|
||||||
|
) : Source by delegate {
|
||||||
|
|
||||||
|
override fun close() {
|
||||||
|
try {
|
||||||
|
delegate.close()
|
||||||
|
} finally {
|
||||||
|
extraCloseable.closeQuietly()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
fun Source.withExtraCloseable(closeable: Closeable): Source = ExtraCloseableSource(this, closeable)
|
||||||
Loading…
Reference in New Issue