Skip to content

Commit c7ef8a9

Browse files
committed
[PeerTube]
1 parent 9e75344 commit c7ef8a9

4 files changed

Lines changed: 23 additions & 27 deletions

File tree

extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeAccountExtractor.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -115,9 +115,9 @@ public boolean isVerified() throws ParsingException {
115115
public List<ListLinkHandler> getTabs() throws ParsingException {
116116
return List.of(
117117
PeertubeChannelTabLinkHandlerFactory.getInstance().fromQuery(getId(),
118-
List.of(ChannelTabs.VIDEOS), "", getBaseUrl()),
118+
List.of(ChannelTabs.VIDEOS), List.of(), getBaseUrl()),
119119
PeertubeChannelTabLinkHandlerFactory.getInstance().fromQuery(getId(),
120-
List.of(ChannelTabs.CHANNELS), "", getBaseUrl()));
120+
List.of(ChannelTabs.CHANNELS), List.of(), getBaseUrl()));
121121
}
122122

123123
@Override

extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeChannelExtractor.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,9 +89,9 @@ public boolean isVerified() throws ParsingException {
8989
public List<ListLinkHandler> getTabs() throws ParsingException {
9090
return List.of(
9191
PeertubeChannelTabLinkHandlerFactory.getInstance().fromQuery(getId(),
92-
List.of(ChannelTabs.VIDEOS), "", getBaseUrl()),
92+
List.of(ChannelTabs.VIDEOS), List.of(), getBaseUrl()),
9393
PeertubeChannelTabLinkHandlerFactory.getInstance().fromQuery(getId(),
94-
List.of(ChannelTabs.PLAYLISTS), "", getBaseUrl()));
94+
List.of(ChannelTabs.PLAYLISTS), List.of(), getBaseUrl()));
9595
}
9696

9797
@Override

extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeChannelTabExtractor.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,8 @@ public void onFetchPage(@Nonnull final Downloader downloader) {
4444
@Override
4545
public InfoItemsPage<InfoItem> getInitialPage() throws IOException, ExtractionException {
4646
return getPage(new Page(baseUrl + PeertubeChannelLinkHandlerFactory.API_ENDPOINT
47-
+ getId() + getUrlSuffix(getName()) + "?" + START_KEY + "=0&" + COUNT_KEY + "="
48-
+ ITEMS_PER_PAGE));
47+
+ getId() + getUrlSuffix(getChannelTabType()) + "?" + START_KEY + "=0&"
48+
+ COUNT_KEY + "=" + ITEMS_PER_PAGE));
4949
}
5050

5151
@Override

extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/linkHandler/PeertubeChannelTabLinkHandlerFactory.java

Lines changed: 17 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,11 @@
44
import org.schabi.newpipe.extractor.exceptions.ParsingException;
55
import org.schabi.newpipe.extractor.exceptions.UnsupportedTabException;
66
import org.schabi.newpipe.extractor.linkhandler.ListLinkHandlerFactory;
7+
import org.schabi.newpipe.extractor.search.filter.FilterItem;
78

89
import javax.annotation.Nonnull;
10+
import javax.annotation.Nullable;
11+
912
import java.util.List;
1013

1114
public final class PeertubeChannelTabLinkHandlerFactory extends ListLinkHandlerFactory {
@@ -20,15 +23,14 @@ public static PeertubeChannelTabLinkHandlerFactory getInstance() {
2023
}
2124

2225
@Nonnull
23-
public static String getUrlSuffix(@Nonnull final String tab)
26+
public static String getUrlSuffix(@Nonnull final FilterItem tab)
2427
throws UnsupportedTabException {
25-
switch (tab) {
26-
case ChannelTabs.VIDEOS:
27-
return "/videos";
28-
case ChannelTabs.CHANNELS: // only available on accounts
29-
return "/video-channels";
30-
case ChannelTabs.PLAYLISTS: // only available on channels
31-
return "/video-playlists";
28+
if (tab.equals(ChannelTabs.VIDEOS)) {
29+
return "/videos";
30+
} else if (tab.equals(ChannelTabs.CHANNELS)) { // only available on accounts
31+
return "/video-channels";
32+
} else if (tab.equals(ChannelTabs.PLAYLISTS)) { // only available on channels
33+
return "/video-playlists";
3234
}
3335
throw new UnsupportedTabException(tab);
3436
}
@@ -39,33 +41,27 @@ public String getId(final String url) throws ParsingException, UnsupportedOperat
3941
}
4042

4143
@Override
42-
public String getUrl(final String id, final List<String> contentFilter, final String sortFilter)
44+
public String getUrl(final String id,
45+
@Nonnull final List<FilterItem> contentFilter,
46+
@Nullable final List<FilterItem> sortFilter)
4347
throws ParsingException, UnsupportedOperationException {
4448
return PeertubeChannelLinkHandlerFactory.getInstance().getUrl(id)
4549
+ getUrlSuffix(contentFilter.get(0));
4650
}
4751

4852
@Override
4953
public String getUrl(final String id,
50-
final List<String> contentFilter,
51-
final String sortFilter,
54+
final List<FilterItem> contentFilter,
55+
final List<FilterItem> sortFilter,
5256
final String baseUrl)
5357
throws ParsingException, UnsupportedOperationException {
54-
return PeertubeChannelLinkHandlerFactory.getInstance().getUrl(id, null, null, baseUrl)
58+
return PeertubeChannelLinkHandlerFactory.getInstance()
59+
.getUrl(id, null, null, baseUrl)
5560
+ getUrlSuffix(contentFilter.get(0));
5661
}
5762

5863
@Override
5964
public boolean onAcceptUrl(final String url) throws ParsingException {
6065
return PeertubeChannelLinkHandlerFactory.getInstance().onAcceptUrl(url);
6166
}
62-
63-
@Override
64-
public String[] getAvailableContentFilter() {
65-
return new String[] {
66-
ChannelTabs.VIDEOS,
67-
ChannelTabs.CHANNELS,
68-
ChannelTabs.PLAYLISTS,
69-
};
70-
}
7167
}

0 commit comments

Comments
 (0)