From 7d35856d38675f4738a84b137a47675c521b2b47 Mon Sep 17 00:00:00 2001 From: bivashy Date: Thu, 5 Jun 2025 16:05:27 +0500 Subject: [PATCH] Don't expose redundant variables in KodikMetadata --- .../api/model/KodikPlayerResponse.java | 44 ++++++++++++++----- .../component/KodikAPITokenProvider.java | 2 +- .../controller/ExtractController.java | 1 - .../service/KodikHtmlParserService.java | 7 ++- .../service/model/KodikMetadata.java | 12 ++++- 5 files changed, 47 insertions(+), 19 deletions(-) diff --git a/src/main/java/com/backend/extractor/kodik/service/anyame_backend/api/model/KodikPlayerResponse.java b/src/main/java/com/backend/extractor/kodik/service/anyame_backend/api/model/KodikPlayerResponse.java index 742a11f..534de9d 100644 --- a/src/main/java/com/backend/extractor/kodik/service/anyame_backend/api/model/KodikPlayerResponse.java +++ b/src/main/java/com/backend/extractor/kodik/service/anyame_backend/api/model/KodikPlayerResponse.java @@ -9,15 +9,35 @@ public class KodikPlayerResponse { private Boolean hasPlayer; private String error; - public String getLink() { return link; } - public void setLink(String link) { this.link = link; } - - public String getTitle() { return title; } - public void setTitle(String title) { this.title = title; } - - public Boolean getHasPlayer() { return hasPlayer; } - public void setHasPlayer(Boolean hasPlayer) { this.hasPlayer = hasPlayer; } - - public String getError() { return error; } - public void setError(String error) { this.error = error; } -} \ No newline at end of file + public String getLink() { + return link; + } + + public void setLink(String link) { + this.link = link; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public Boolean getHasPlayer() { + return hasPlayer; + } + + public void setHasPlayer(Boolean hasPlayer) { + this.hasPlayer = hasPlayer; + } + + public String getError() { + return error; + } + + public void setError(String error) { + this.error = error; + } +} diff --git a/src/main/java/com/backend/extractor/kodik/service/anyame_backend/component/KodikAPITokenProvider.java b/src/main/java/com/backend/extractor/kodik/service/anyame_backend/component/KodikAPITokenProvider.java index 54f05c6..efff809 100644 --- a/src/main/java/com/backend/extractor/kodik/service/anyame_backend/component/KodikAPITokenProvider.java +++ b/src/main/java/com/backend/extractor/kodik/service/anyame_backend/component/KodikAPITokenProvider.java @@ -12,4 +12,4 @@ public class KodikAPITokenProvider { return kodikToken; } -} \ No newline at end of file +} diff --git a/src/main/java/com/backend/extractor/kodik/service/anyame_backend/controller/ExtractController.java b/src/main/java/com/backend/extractor/kodik/service/anyame_backend/controller/ExtractController.java index 7030384..bb48195 100644 --- a/src/main/java/com/backend/extractor/kodik/service/anyame_backend/controller/ExtractController.java +++ b/src/main/java/com/backend/extractor/kodik/service/anyame_backend/controller/ExtractController.java @@ -85,7 +85,6 @@ public class ExtractController { } catch (KodikDecryptionException e) { throw new ResponseStatusException(HttpStatus.INTERNAL_SERVER_ERROR, "cannot decode links"); } - } } diff --git a/src/main/java/com/backend/extractor/kodik/service/anyame_backend/service/KodikHtmlParserService.java b/src/main/java/com/backend/extractor/kodik/service/anyame_backend/service/KodikHtmlParserService.java index 8212b87..669863b 100644 --- a/src/main/java/com/backend/extractor/kodik/service/anyame_backend/service/KodikHtmlParserService.java +++ b/src/main/java/com/backend/extractor/kodik/service/anyame_backend/service/KodikHtmlParserService.java @@ -10,7 +10,6 @@ import org.jsoup.select.Elements; import org.springframework.stereotype.Service; import com.backend.extractor.kodik.service.anyame_backend.api.model.KodikEpisode; - import com.backend.extractor.kodik.service.anyame_backend.api.model.KodikTranslation; import com.backend.extractor.kodik.service.anyame_backend.service.model.KodikAPIPayload; import com.backend.extractor.kodik.service.anyame_backend.service.model.KodikMetadata; @@ -23,11 +22,12 @@ public class KodikHtmlParserService { public KodikMetadata parseMetadata(String html) { Document doc = Jsoup.parse(html); + String title = doc.title(); List translations = parseTranslations(doc); List episodes = parseEpisodes(doc); KodikAPIPayload apiPayload = new KodikAPIPayload(html); - return new KodikMetadata(translations, episodes, apiPayload); + return new KodikMetadata(title, translations, episodes, apiPayload); } private List parseTranslations(Document doc) { @@ -42,10 +42,9 @@ public class KodikHtmlParserService { String mediaType = option.attr("data-media-type"); String translationType = option.attr("data-translation-type"); int episodeCount = parseIntSafely(option.attr("data-episode-count")); - boolean selected = option.hasAttr("selected"); translations.add(new KodikTranslation(id, title, mediaId, mediaHash, - mediaType, translationType, episodeCount, selected)); + mediaType, translationType, episodeCount)); } return translations; diff --git a/src/main/java/com/backend/extractor/kodik/service/anyame_backend/service/model/KodikMetadata.java b/src/main/java/com/backend/extractor/kodik/service/anyame_backend/service/model/KodikMetadata.java index 6e74494..2616bc8 100644 --- a/src/main/java/com/backend/extractor/kodik/service/anyame_backend/service/model/KodikMetadata.java +++ b/src/main/java/com/backend/extractor/kodik/service/anyame_backend/service/model/KodikMetadata.java @@ -4,21 +4,31 @@ import java.util.List; import com.backend.extractor.kodik.service.anyame_backend.api.model.KodikEpisode; import com.backend.extractor.kodik.service.anyame_backend.api.model.KodikTranslation; +import com.fasterxml.jackson.annotation.JsonIgnore; /** * KodikMetadata */ public class KodikMetadata { + private final String title; private final List translations; + @JsonIgnore private final List episodes; + @JsonIgnore private final KodikAPIPayload apiPayload; - public KodikMetadata(List translations, List episodes, KodikAPIPayload apiPayload) { + public KodikMetadata(String title, List translations, List episodes, + KodikAPIPayload apiPayload) { + this.title = title; this.translations = translations; this.episodes = episodes; this.apiPayload = apiPayload; } + public String getTitle() { + return title; + } + public List getTranslations() { return translations; }