From 5f6c3f107850ce0bf7a205694599538eea7ff5cb Mon Sep 17 00:00:00 2001 From: FooIbar <118464521+FooIbar@users.noreply.github.com> Date: Sun, 2 Apr 2023 15:17:25 +0800 Subject: [PATCH] Convert GalleryNotAvailableParser to kotlin --- .../com/hippo/ehviewer/client/EhEngine.kt | 5 +-- .../parser/GalleryNotAvailableParser.kt | 36 ++++++++----------- 2 files changed, 17 insertions(+), 24 deletions(-) diff --git a/app/src/main/java/com/hippo/ehviewer/client/EhEngine.kt b/app/src/main/java/com/hippo/ehviewer/client/EhEngine.kt index 5cd384d0d..4c869e449 100644 --- a/app/src/main/java/com/hippo/ehviewer/client/EhEngine.kt +++ b/app/src/main/java/com/hippo/ehviewer/client/EhEngine.kt @@ -98,7 +98,7 @@ private fun rethrowExactly(code: Int, headers: Headers, body: String, e: Throwab // Check Gallery Not Available if (body.contains("Gallery Not Available - ")) { val error = GalleryNotAvailableParser.parse(body) - if (error.isNotBlank()) { + if (!error.isNullOrBlank()) { throw EhException(error) } } @@ -263,7 +263,8 @@ object EhEngine { val referer = EhUrl.referer Log.d(TAG, url) return EhRequestBuilder(url, referer).executeAndParsingWith { - GalleryDetailParser.parsePreviewList(this) to GalleryDetailParser.parsePreviewPages(this) + GalleryDetailParser.parsePreviewList(this) to + GalleryDetailParser.parsePreviewPages(this) } } diff --git a/app/src/main/java/com/hippo/ehviewer/client/parser/GalleryNotAvailableParser.kt b/app/src/main/java/com/hippo/ehviewer/client/parser/GalleryNotAvailableParser.kt index e64f67b87..11894486f 100644 --- a/app/src/main/java/com/hippo/ehviewer/client/parser/GalleryNotAvailableParser.kt +++ b/app/src/main/java/com/hippo/ehviewer/client/parser/GalleryNotAvailableParser.kt @@ -15,30 +15,22 @@ * You should have received a copy of the GNU General Public License along with EhViewer. * If not, see . */ +package com.hippo.ehviewer.client.parser -package com.hippo.ehviewer.client.parser; +import com.hippo.util.ExceptionUtils +import com.hippo.util.JsoupUtils +import org.jsoup.Jsoup -import com.hippo.util.ExceptionUtils; -import com.hippo.util.JsoupUtils; - -import org.jsoup.Jsoup; -import org.jsoup.nodes.Document; -import org.jsoup.nodes.Element; - -public class GalleryNotAvailableParser { - - public static String parse(String body) { - String error = null; - try { - Document document = Jsoup.parse(body); - Element d = JsoupUtils.getElementByClass(document, "d"); - //noinspection ConstantConditions - error = d.child(0).html(); - error = error.replace("
", "\n"); - } catch (Throwable e) { - ExceptionUtils.throwIfFatal(e); - e.printStackTrace(); +object GalleryNotAvailableParser { + fun parse(body: String): String? { + return runCatching { + val document = Jsoup.parse(body) + val d = JsoupUtils.getElementByClass(document, "d") + d!!.child(0).html().replace("
", "\n") + }.getOrElse { + ExceptionUtils.throwIfFatal(it) + it.printStackTrace() + null } - return error; } }