parent
58a9f7b25a
commit
b3f748c000
@ -1,3 +1,5 @@
|
|||||||
package org.koitharu.kotatsu.core.exceptions
|
package org.koitharu.kotatsu.core.exceptions
|
||||||
|
|
||||||
class CaughtException(cause: Throwable) : RuntimeException("${cause.javaClass.simpleName}(${cause.message})", cause)
|
class CaughtException(
|
||||||
|
override val cause: Throwable
|
||||||
|
) : RuntimeException("${cause.javaClass.simpleName}(${cause.message})", cause)
|
||||||
|
|||||||
@ -0,0 +1,5 @@
|
|||||||
|
package org.koitharu.kotatsu.core.exceptions
|
||||||
|
|
||||||
|
import okio.IOException
|
||||||
|
|
||||||
|
class WrapperIOException(override val cause: Exception) : IOException(cause)
|
||||||
@ -1,19 +1,26 @@
|
|||||||
package org.koitharu.kotatsu.core.network
|
package org.koitharu.kotatsu.core.network
|
||||||
|
|
||||||
import okhttp3.Interceptor
|
import okhttp3.Interceptor
|
||||||
|
import okhttp3.MultipartBody
|
||||||
import okhttp3.Response
|
import okhttp3.Response
|
||||||
import okio.IOException
|
import okio.IOException
|
||||||
|
import org.koitharu.kotatsu.core.exceptions.WrapperIOException
|
||||||
import org.koitharu.kotatsu.core.network.CommonHeaders.CONTENT_ENCODING
|
import org.koitharu.kotatsu.core.network.CommonHeaders.CONTENT_ENCODING
|
||||||
|
|
||||||
class GZipInterceptor : Interceptor {
|
class GZipInterceptor : Interceptor {
|
||||||
|
|
||||||
override fun intercept(chain: Interceptor.Chain): Response {
|
override fun intercept(chain: Interceptor.Chain): Response = try {
|
||||||
val newRequest = chain.request().newBuilder()
|
val request = chain.request()
|
||||||
newRequest.addHeader(CONTENT_ENCODING, "gzip")
|
if (request.body is MultipartBody) {
|
||||||
return try {
|
chain.proceed(request)
|
||||||
|
} else {
|
||||||
|
val newRequest = request.newBuilder()
|
||||||
|
newRequest.addHeader(CONTENT_ENCODING, "gzip")
|
||||||
chain.proceed(newRequest.build())
|
chain.proceed(newRequest.build())
|
||||||
} catch (e: NullPointerException) {
|
|
||||||
throw IOException(e)
|
|
||||||
}
|
}
|
||||||
|
} catch (e: IOException) {
|
||||||
|
throw e
|
||||||
|
} catch (e: Exception) {
|
||||||
|
throw WrapperIOException(e)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,5 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<resources>
|
||||||
|
<!-- Disable predictive back due to crashes -->
|
||||||
|
<bool name="is_predictive_back_enabled">false</bool>
|
||||||
|
</resources>
|
||||||
Loading…
Reference in New Issue