From 4e0adbefbcfbeb25cc0d1306c07b5f9dc7ed5c90 Mon Sep 17 00:00:00 2001 From: yausername <13ritvik@gmail.com> Date: Thu, 21 Nov 2019 05:35:22 +0530 Subject: [PATCH] [peertube] use baseUrl instead of global instance url --- .../extractors/PeertubeChannelExtractor.java | 10 +++++----- .../PeertubeCommentsInfoItemExtractor.java | 14 +++++++------- .../extractors/PeertubeStreamExtractor.java | 16 ++++++++-------- .../PeertubeStreamInfoItemExtractor.java | 4 +--- .../peertube/PeertubeCommentsExtractorTest.java | 2 +- 5 files changed, 22 insertions(+), 24 deletions(-) diff --git a/extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeChannelExtractor.java b/extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeChannelExtractor.java index 70965f5b4..b179ae13f 100644 --- a/extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeChannelExtractor.java +++ b/extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeChannelExtractor.java @@ -3,7 +3,6 @@ package org.schabi.newpipe.extractor.services.peertube.extractors; import java.io.IOException; import org.jsoup.helper.StringUtil; -import org.schabi.newpipe.extractor.ServiceList; import org.schabi.newpipe.extractor.StreamingService; import org.schabi.newpipe.extractor.channel.ChannelExtractor; import org.schabi.newpipe.extractor.downloader.Downloader; @@ -35,9 +34,11 @@ public class PeertubeChannelExtractor extends ChannelExtractor { private long total; private JsonObject json; + private final String baseUrl; - public PeertubeChannelExtractor(StreamingService service, ListLinkHandler linkHandler) { + public PeertubeChannelExtractor(StreamingService service, ListLinkHandler linkHandler) throws ParsingException { super(service, linkHandler); + this.baseUrl = Utils.getBaseUrl(getUrl()); } @Override @@ -48,7 +49,7 @@ public class PeertubeChannelExtractor extends ChannelExtractor { }catch(Exception e) { value = "/client/assets/images/default-avatar.png"; } - return ServiceList.PeerTube.getBaseUrl() + value; + return baseUrl + value; } @Override @@ -90,7 +91,6 @@ public class PeertubeChannelExtractor extends ChannelExtractor { throw new ParsingException("unable to extract channel streams", e); } - String baseUrl = Utils.getBaseUrl(getUrl()); for(Object c: contents) { if(c instanceof JsonObject) { final JsonObject item = (JsonObject) c; @@ -183,7 +183,7 @@ public class PeertubeChannelExtractor extends ChannelExtractor { @Override public String getOriginalUrl() throws ParsingException { - return ServiceList.PeerTube.getBaseUrl() + "/accounts/" + getId(); + return baseUrl + "/accounts/" + getId(); } } diff --git a/extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeCommentsInfoItemExtractor.java b/extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeCommentsInfoItemExtractor.java index 13a8a6311..886dcda8f 100644 --- a/extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeCommentsInfoItemExtractor.java +++ b/extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeCommentsInfoItemExtractor.java @@ -7,7 +7,6 @@ import org.schabi.newpipe.extractor.comments.CommentsInfoItemExtractor; import org.schabi.newpipe.extractor.exceptions.ParsingException; import org.schabi.newpipe.extractor.localization.DateWrapper; import org.schabi.newpipe.extractor.services.peertube.PeertubeParsingHelper; -import org.schabi.newpipe.extractor.services.peertube.linkHandler.PeertubeChannelLinkHandlerFactory; import org.schabi.newpipe.extractor.utils.JsonUtils; import org.schabi.newpipe.extractor.utils.Utils; @@ -18,10 +17,12 @@ public class PeertubeCommentsInfoItemExtractor implements CommentsInfoItemExtrac private final JsonObject item; private final String url; + private final String baseUrl; - public PeertubeCommentsInfoItemExtractor(JsonObject item, String url) { + public PeertubeCommentsInfoItemExtractor(JsonObject item, String url) throws ParsingException { this.item = item; this.url = url; + this.baseUrl = Utils.getBaseUrl(url); } @Override @@ -37,7 +38,7 @@ public class PeertubeCommentsInfoItemExtractor implements CommentsInfoItemExtrac }catch(Exception e) { value = "/client/assets/images/default-avatar.png"; } - return ServiceList.PeerTube.getBaseUrl() + value; + return baseUrl + value; } @Override @@ -58,7 +59,7 @@ public class PeertubeCommentsInfoItemExtractor implements CommentsInfoItemExtrac @Override public int getLikeCount() throws ParsingException { - return 0; + return -1; } @Override @@ -86,7 +87,7 @@ public class PeertubeCommentsInfoItemExtractor implements CommentsInfoItemExtrac }catch(Exception e) { value = "/client/assets/images/default-avatar.png"; } - return ServiceList.PeerTube.getBaseUrl() + value; + return baseUrl + value; } @Override @@ -98,8 +99,7 @@ public class PeertubeCommentsInfoItemExtractor implements CommentsInfoItemExtrac public String getAuthorEndpoint() throws ParsingException { String name = JsonUtils.getString(item, "account.name"); String host = JsonUtils.getString(item, "account.host"); - String baseUrl = Utils.getBaseUrl(url); return ServiceList.PeerTube.getChannelLHFactory().fromId(name + "@" + host, baseUrl).getUrl(); } -} \ No newline at end of file +} diff --git a/extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeStreamExtractor.java b/extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeStreamExtractor.java index bfd8cd93e..3ed260c5e 100644 --- a/extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeStreamExtractor.java +++ b/extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeStreamExtractor.java @@ -41,9 +41,11 @@ public class PeertubeStreamExtractor extends StreamExtractor { private JsonObject json; private List subtitles = new ArrayList<>(); + private final String baseUrl; - public PeertubeStreamExtractor(StreamingService service, LinkHandler linkHandler) { + public PeertubeStreamExtractor(StreamingService service, LinkHandler linkHandler) throws ParsingException { super(service, linkHandler); + this.baseUrl = Utils.getBaseUrl(getUrl()); } @Override @@ -64,7 +66,7 @@ public class PeertubeStreamExtractor extends StreamExtractor { @Override public String getThumbnailUrl() throws ParsingException { - return ServiceList.PeerTube.getBaseUrl() + JsonUtils.getString(json, "thumbnailPath"); + return baseUrl + JsonUtils.getString(json, "thumbnailPath"); } @Override @@ -115,7 +117,6 @@ public class PeertubeStreamExtractor extends StreamExtractor { public String getUploaderUrl() throws ParsingException { String name = JsonUtils.getString(json, "account.name"); String host = JsonUtils.getString(json, "account.host"); - String baseUrl = Utils.getBaseUrl(getUrl()); return getService().getChannelLHFactory().fromId(name + "@" + host, baseUrl).getUrl(); } @@ -132,7 +133,7 @@ public class PeertubeStreamExtractor extends StreamExtractor { }catch(Exception e) { value = "/client/assets/images/default-avatar.png"; } - return ServiceList.PeerTube.getBaseUrl() + value; + return baseUrl + value; } @Override @@ -233,7 +234,7 @@ public class PeertubeStreamExtractor extends StreamExtractor { } private String getRelatedStreamsUrl(List tags) throws UnsupportedEncodingException { - String url = ServiceList.PeerTube.getBaseUrl() + PeertubeSearchQueryHandlerFactory.SEARCH_ENDPOINT; + String url = baseUrl + PeertubeSearchQueryHandlerFactory.SEARCH_ENDPOINT; StringBuilder params = new StringBuilder(); params.append("start=0&count=8&sort=-createdAt"); for(String tag : tags) { @@ -267,7 +268,6 @@ public class PeertubeStreamExtractor extends StreamExtractor { throw new ParsingException("unable to extract related videos", e); } - String baseUrl = Utils.getBaseUrl(getUrl()); for(Object c: contents) { if(c instanceof JsonObject) { final JsonObject item = (JsonObject) c; @@ -316,7 +316,7 @@ public class PeertubeStreamExtractor extends StreamExtractor { for(Object c: captions) { if(c instanceof JsonObject) { JsonObject caption = (JsonObject)c; - String url = ServiceList.PeerTube.getBaseUrl() + JsonUtils.getString(caption, "captionPath"); + String url = baseUrl + JsonUtils.getString(caption, "captionPath"); String languageCode = JsonUtils.getString(caption, "language.id"); String ext = url.substring(url.lastIndexOf(".") + 1); MediaFormat fmt = MediaFormat.getFromSuffix(ext); @@ -336,7 +336,7 @@ public class PeertubeStreamExtractor extends StreamExtractor { @Override public String getOriginalUrl() throws ParsingException { - return ServiceList.PeerTube.getBaseUrl() + "/videos/watch/" + getId(); + return baseUrl + "/videos/watch/" + getId(); } } diff --git a/extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeStreamInfoItemExtractor.java b/extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeStreamInfoItemExtractor.java index 3de68edaf..ca85270a9 100644 --- a/extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeStreamInfoItemExtractor.java +++ b/extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeStreamInfoItemExtractor.java @@ -4,8 +4,6 @@ import org.schabi.newpipe.extractor.ServiceList; import org.schabi.newpipe.extractor.exceptions.ParsingException; import org.schabi.newpipe.extractor.localization.DateWrapper; import org.schabi.newpipe.extractor.services.peertube.PeertubeParsingHelper; -import org.schabi.newpipe.extractor.services.peertube.linkHandler.PeertubeChannelLinkHandlerFactory; -import org.schabi.newpipe.extractor.services.peertube.linkHandler.PeertubeStreamLinkHandlerFactory; import org.schabi.newpipe.extractor.stream.StreamInfoItemExtractor; import org.schabi.newpipe.extractor.stream.StreamType; import org.schabi.newpipe.extractor.utils.JsonUtils; @@ -31,7 +29,7 @@ public class PeertubeStreamInfoItemExtractor implements StreamInfoItemExtractor @Override public String getThumbnailUrl() throws ParsingException { String value = JsonUtils.getString(item, "thumbnailPath"); - return ServiceList.PeerTube.getBaseUrl() + value; + return baseUrl + value; } @Override diff --git a/extractor/src/test/java/org/schabi/newpipe/extractor/services/peertube/PeertubeCommentsExtractorTest.java b/extractor/src/test/java/org/schabi/newpipe/extractor/services/peertube/PeertubeCommentsExtractorTest.java index 319a8ae41..fef1c3ee5 100644 --- a/extractor/src/test/java/org/schabi/newpipe/extractor/services/peertube/PeertubeCommentsExtractorTest.java +++ b/extractor/src/test/java/org/schabi/newpipe/extractor/services/peertube/PeertubeCommentsExtractorTest.java @@ -73,7 +73,7 @@ public class PeertubeCommentsExtractorTest { assertFalse(StringUtil.isBlank(c.getTextualPublishedTime())); assertFalse(StringUtil.isBlank(c.getThumbnailUrl())); assertFalse(StringUtil.isBlank(c.getUrl())); - assertFalse(c.getLikeCount() == -1); + assertFalse(c.getLikeCount() != -1); } }