Skip to content

Commit 1dc746a

Browse files
committed
Changes due to channel tabs
1 parent b8eb121 commit 1dc746a

6 files changed

Lines changed: 35 additions & 16 deletions

File tree

extractor/src/main/java/org/schabi/newpipe/extractor/StreamingService.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -283,18 +283,18 @@ public ChannelExtractor getChannelExtractor(final String url) throws ExtractionE
283283
return getChannelExtractor(getChannelLHFactory().fromUrl(url));
284284
}
285285

286-
public ChannelTabExtractor getChannelTabExtractorFromId(final String id, final String tab)
286+
public ChannelTabExtractor getChannelTabExtractorFromId(final String id, final FilterItem tab)
287287
throws ExtractionException {
288288
return getChannelTabExtractor(getChannelTabLHFactory().fromQuery(
289-
id, Collections.singletonList(tab), ""));
289+
id, List.of(tab), List.of()));
290290
}
291291

292292
public ChannelTabExtractor getChannelTabExtractorFromIdAndBaseUrl(final String id,
293-
final String tab,
293+
final FilterItem tab,
294294
final String baseUrl)
295295
throws ExtractionException {
296296
return getChannelTabExtractor(getChannelTabLHFactory().fromQuery(
297-
id, Collections.singletonList(tab), "", baseUrl));
297+
id, List.of(tab), List.of(), baseUrl));
298298
}
299299

300300
public PlaylistExtractor getPlaylistExtractor(final String url) throws ExtractionException {

extractor/src/main/java/org/schabi/newpipe/extractor/channel/tabs/ChannelTabExtractor.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import org.schabi.newpipe.extractor.ListExtractor;
55
import org.schabi.newpipe.extractor.StreamingService;
66
import org.schabi.newpipe.extractor.linkhandler.ListLinkHandler;
7+
import org.schabi.newpipe.extractor.search.filter.FilterItem;
78

89
import javax.annotation.Nonnull;
910

@@ -17,9 +18,14 @@ protected ChannelTabExtractor(@Nonnull final StreamingService service,
1718
super(service, linkHandler);
1819
}
1920

21+
@Nonnull
22+
public FilterItem getChannelTabType() {
23+
return getLinkHandler().getContentFilters().get(0);
24+
}
25+
2026
@Nonnull
2127
@Override
2228
public String getName() {
23-
return getLinkHandler().getContentFilters().get(0);
29+
return getChannelTabType().getName();
2430
}
2531
}

extractor/src/main/java/org/schabi/newpipe/extractor/channel/tabs/ChannelTabInfo.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ public class ChannelTabInfo extends ListInfo<InfoItem> {
1717

1818
public ChannelTabInfo(final int serviceId,
1919
@Nonnull final ListLinkHandler linkHandler) {
20-
super(serviceId, linkHandler, linkHandler.getContentFilters().get(0));
20+
super(serviceId, linkHandler, linkHandler.getContentFilters().get(0).getNameId().name());
2121
}
2222

2323
/**

extractor/src/main/java/org/schabi/newpipe/extractor/channel/tabs/ChannelTabs.java

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,26 @@
11
package org.schabi.newpipe.extractor.channel.tabs;
22

3+
import org.schabi.newpipe.extractor.search.filter.FilterItem;
4+
35
/**
46
* Constants of channel tabs supported by the extractor.
57
*/
68
public final class ChannelTabs {
7-
public static final String VIDEOS = "videos";
8-
public static final String TRACKS = "tracks";
9-
public static final String SHORTS = "shorts";
10-
public static final String LIVESTREAMS = "livestreams";
11-
public static final String CHANNELS = "channels";
12-
public static final String PLAYLISTS = "playlists";
13-
public static final String ALBUMS = "albums";
9+
public static final int ID_VIDEOS = 0;
10+
public static final int ID_TRACKS = 1;
11+
public static final int ID_SHORTS = 2;
12+
public static final int ID_LIVESTREAMS = 3;
13+
public static final int ID_CHANNELS = 4;
14+
public static final int ID_PLAYLISTS = 5;
15+
public static final int ID_ALBUMS = 6;
16+
17+
public static final FilterItem VIDEOS = new FilterItem(ID_VIDEOS, "Videos");
18+
public static final FilterItem TRACKS = new FilterItem(ID_TRACKS, "Tracks");
19+
public static final FilterItem SHORTS = new FilterItem(ID_SHORTS, "Shorts");
20+
public static final FilterItem LIVESTREAMS = new FilterItem(ID_LIVESTREAMS, "Livestreams");
21+
public static final FilterItem CHANNELS = new FilterItem(ID_CHANNELS, "Channels");
22+
public static final FilterItem PLAYLISTS = new FilterItem(ID_PLAYLISTS, "Playlists");
23+
public static final FilterItem ALBUMS = new FilterItem(ID_ALBUMS, "Albums");
1424

1525
private ChannelTabs() {
1626
}
Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
package org.schabi.newpipe.extractor.exceptions;
22

3+
import org.schabi.newpipe.extractor.search.filter.FilterItem;
4+
35
public final class UnsupportedTabException extends UnsupportedOperationException {
4-
public UnsupportedTabException(final String unsupportedTab) {
6+
public UnsupportedTabException(final FilterItem unsupportedTab) {
57
super("Unsupported tab " + unsupportedTab);
68
}
79
}

extractor/src/main/java/org/schabi/newpipe/extractor/linkhandler/ReadyChannelTabListLinkHandler.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import org.schabi.newpipe.extractor.StreamingService;
44
import org.schabi.newpipe.extractor.channel.tabs.ChannelTabExtractor;
5+
import org.schabi.newpipe.extractor.search.filter.FilterItem;
56

67
import javax.annotation.Nonnull;
78
import java.io.Serializable;
@@ -42,9 +43,9 @@ ChannelTabExtractor build(@Nonnull StreamingService service,
4243
public ReadyChannelTabListLinkHandler(
4344
final String url,
4445
final String channelId,
45-
@Nonnull final String channelTab,
46+
@Nonnull final FilterItem channelTab,
4647
@Nonnull final ChannelTabExtractorBuilder extractorBuilder) {
47-
super(url, url, channelId, List.of(channelTab), "");
48+
super(url, url, channelId, List.of(channelTab), List.of());
4849
this.extractorBuilder = extractorBuilder;
4950
}
5051

0 commit comments

Comments
 (0)