From 3b04624b88c3f92fa37d02d59ecfe8466cc8df9c Mon Sep 17 00:00:00 2001 From: FooIbar <118464521+FooIbar@users.noreply.github.com> Date: Sun, 2 Apr 2023 17:50:22 +0800 Subject: [PATCH] Convert VoteTagParser to kotlin --- .../com/hippo/ehviewer/client/EhEngine.kt | 2 +- .../ehviewer/client/parser/VoteTagParser.kt | 20 +++++-------------- .../ehviewer/ui/scene/GalleryDetailScene.kt | 9 ++++----- 3 files changed, 10 insertions(+), 21 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 4c869e449..f3c9de4a0 100644 --- a/app/src/main/java/com/hippo/ehviewer/client/EhEngine.kt +++ b/app/src/main/java/com/hippo/ehviewer/client/EhEngine.kt @@ -617,7 +617,7 @@ object EhEngine { token: String?, tags: String?, vote: Int, - ): VoteTagParser.Result { + ): String { val json = JSONObject() json.put("method", "taggallery") json.put("apiuid", apiUid) diff --git a/app/src/main/java/com/hippo/ehviewer/client/parser/VoteTagParser.kt b/app/src/main/java/com/hippo/ehviewer/client/parser/VoteTagParser.kt index eee1b32d8..01f369457 100644 --- a/app/src/main/java/com/hippo/ehviewer/client/parser/VoteTagParser.kt +++ b/app/src/main/java/com/hippo/ehviewer/client/parser/VoteTagParser.kt @@ -15,23 +15,13 @@ * 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 org.json.JSONException; -import org.json.JSONObject; - -public class VoteTagParser { +import org.json.JSONObject +object VoteTagParser { // {"error":"The tag \"neko\" is not allowed. Use character:neko or artist:neko"} - public static VoteTagParser.Result parse(String body) throws JSONException { - VoteTagParser.Result result = new VoteTagParser.Result(); - JSONObject jo = new JSONObject(body); - if (jo.has("error")) result.error = jo.getString("error"); - return result; - } - - public static class Result { - public String error; + fun parse(body: String): String { + return JSONObject(body).optString("error") } } diff --git a/app/src/main/java/com/hippo/ehviewer/ui/scene/GalleryDetailScene.kt b/app/src/main/java/com/hippo/ehviewer/ui/scene/GalleryDetailScene.kt index 147fd5c00..a3235b336 100755 --- a/app/src/main/java/com/hippo/ehviewer/ui/scene/GalleryDetailScene.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/scene/GalleryDetailScene.kt @@ -144,7 +144,6 @@ import com.hippo.ehviewer.client.parser.HomeParser import com.hippo.ehviewer.client.parser.ParserUtils import com.hippo.ehviewer.client.parser.RateGalleryParser import com.hippo.ehviewer.client.parser.TorrentParser -import com.hippo.ehviewer.client.parser.VoteTagParser import com.hippo.ehviewer.coil.ehUrl import com.hippo.ehviewer.dao.DownloadInfo import com.hippo.ehviewer.dao.Filter @@ -1527,10 +1526,10 @@ class GalleryDetailScene : BaseScene(), DownloadInfoListener { } private class VoteTagListener(context: Context) : - EhCallback(context) { - override fun onSuccess(result: VoteTagParser.Result) { - if (!result.error.isNullOrEmpty()) { - showTip(result.error, LENGTH_SHORT) + EhCallback(context) { + override fun onSuccess(result: String) { + if (result.isNotEmpty()) { + showTip(result, LENGTH_SHORT) } else { showTip(R.string.tag_vote_successfully, LENGTH_SHORT) }