refactor: remove getTab() method from ChannelTabExtractor

This commit is contained in:
ThetaDev 2023-05-07 21:43:52 +02:00
parent b1f89053f5
commit 66d80383c5
9 changed files with 12 additions and 87 deletions

View File

@ -3,7 +3,6 @@ package org.schabi.newpipe.extractor.channel;
import org.schabi.newpipe.extractor.InfoItem;
import org.schabi.newpipe.extractor.ListExtractor;
import org.schabi.newpipe.extractor.StreamingService;
import org.schabi.newpipe.extractor.exceptions.ParsingException;
import org.schabi.newpipe.extractor.linkhandler.ListLinkHandler;
import javax.annotation.Nonnull;
@ -16,13 +15,8 @@ public abstract class ChannelTabExtractor extends ListExtractor<InfoItem> {
}
@Nonnull
public String getTab() {
@Override
public String getName() {
return getLinkHandler().getContentFilters().get(0);
}
@Nonnull
@Override
public String getName() throws ParsingException {
return getTab();
}
}

View File

@ -44,7 +44,7 @@ public class PeertubeChannelTabExtractor extends ChannelTabExtractor {
@Override
public InfoItemsPage<InfoItem> getInitialPage() throws IOException, ExtractionException {
return getPage(new Page(baseUrl + PeertubeChannelLinkHandlerFactory.API_ENDPOINT
+ getId() + getUrlSuffix(getTab()) + "?" + START_KEY + "=0&" + COUNT_KEY + "="
+ getId() + getUrlSuffix(getName()) + "?" + START_KEY + "=0&" + COUNT_KEY + "="
+ ITEMS_PER_PAGE));
}

View File

@ -7,6 +7,7 @@ import org.schabi.newpipe.extractor.StreamingService;
import org.schabi.newpipe.extractor.channel.ChannelTabExtractor;
import org.schabi.newpipe.extractor.downloader.Downloader;
import org.schabi.newpipe.extractor.exceptions.ExtractionException;
import org.schabi.newpipe.extractor.exceptions.ParsingException;
import org.schabi.newpipe.extractor.linkhandler.ChannelTabs;
import org.schabi.newpipe.extractor.linkhandler.ListLinkHandler;
import org.schabi.newpipe.extractor.services.soundcloud.SoundcloudParsingHelper;
@ -27,8 +28,8 @@ public class SoundcloudChannelTabExtractor extends ChannelTabExtractor {
userId = getLinkHandler().getId();
}
private String getEndpoint() {
switch (getTab()) {
private String getEndpoint() throws ParsingException {
switch (getName()) {
case ChannelTabs.TRACKS:
return "/tracks";
case ChannelTabs.PLAYLISTS:
@ -36,7 +37,7 @@ public class SoundcloudChannelTabExtractor extends ChannelTabExtractor {
case ChannelTabs.ALBUMS:
return "/albums";
}
throw new IllegalArgumentException("unsupported tab: " + getTab());
throw new ParsingException("unsupported tab: " + getName());
}
@Override

View File

@ -49,11 +49,11 @@ public class YoutubeChannelTabExtractor extends ChannelTabExtractor {
public YoutubeChannelTabExtractor(final StreamingService service,
final ListLinkHandler linkHandler) {
super(service, linkHandler);
usePlaylist = getTab().equals(ChannelTabs.SHORTS);
usePlaylist = getName().equals(ChannelTabs.SHORTS);
}
private String getParams() throws ParsingException {
switch (getTab()) {
switch (getName()) {
case ChannelTabs.PLAYLISTS:
return "EglwbGF5bGlzdHPyBgQKAkIA";
case ChannelTabs.LIVESTREAMS:
@ -63,7 +63,7 @@ public class YoutubeChannelTabExtractor extends ChannelTabExtractor {
case ChannelTabs.CHANNELS:
return "EghjaGFubmVsc_IGBAoCUgA%3D";
}
throw new ParsingException("tab " + getTab() + " not supported");
throw new ParsingException("tab " + getName() + " not supported");
}
@Override
@ -104,7 +104,7 @@ public class YoutubeChannelTabExtractor extends ChannelTabExtractor {
public String getUrl() throws ParsingException {
try {
return YoutubeChannelTabLinkHandlerFactory.getInstance().getUrl("channel/" + getId(),
Collections.singletonList(getTab()), "");
Collections.singletonList(getName()), "");
} catch (final ParsingException e) {
return super.getUrl();
}
@ -266,7 +266,7 @@ public class YoutubeChannelTabExtractor extends ChannelTabExtractor {
}
Optional<JsonObject> getTabData() throws ParsingException {
final String urlSuffix = YoutubeChannelTabLinkHandlerFactory.getUrlSuffix(getTab());
final String urlSuffix = YoutubeChannelTabLinkHandlerFactory.getUrlSuffix(getName());
final JsonArray tabs = initialData.getObject("contents")
.getObject("twoColumnBrowseResultsRenderer")

View File

@ -40,11 +40,6 @@ public class BandcampChannelTabExtractorTest {
assertEquals(ChannelTabs.TRACKS, extractor.getName());
}
@Test
public void testTab() {
assertEquals(ChannelTabs.TRACKS, extractor.getTab());
}
@Test
@Override
public void testId() throws ParsingException {
@ -98,11 +93,6 @@ public class BandcampChannelTabExtractorTest {
assertEquals(ChannelTabs.ALBUMS, extractor.getName());
}
@Test
public void testTab() {
assertEquals(ChannelTabs.ALBUMS, extractor.getTab());
}
@Test
@Override
public void testId() throws ParsingException {

View File

@ -44,11 +44,6 @@ public class PeertubeAccountTabExtractorTest {
assertEquals(ChannelTabs.VIDEOS, extractor.getName());
}
@Test
public void testTab() {
assertEquals(ChannelTabs.VIDEOS, extractor.getTab());
}
@Test
@Override
public void testId() throws ParsingException {
@ -113,11 +108,6 @@ public class PeertubeAccountTabExtractorTest {
assertEquals(ChannelTabs.CHANNELS, extractor.getName());
}
@Test
public void testTab() {
assertEquals(ChannelTabs.CHANNELS, extractor.getTab());
}
@Test
@Override
public void testId() throws ParsingException {

View File

@ -48,11 +48,6 @@ public class PeertubeChannelTabExtractorTest {
assertEquals(ChannelTabs.VIDEOS, extractor.getName());
}
@Test
public void testTab() throws ParsingException {
assertEquals(ChannelTabs.VIDEOS, extractor.getTab());
}
@Test
@Override
public void testId() throws ParsingException {
@ -123,11 +118,6 @@ public class PeertubeChannelTabExtractorTest {
assertEquals(ChannelTabs.PLAYLISTS, extractor.getName());
}
@Test
public void testTab() {
assertEquals(ChannelTabs.PLAYLISTS, extractor.getTab());
}
@Test
@Override
public void testId() throws ParsingException {
@ -182,11 +172,6 @@ public class PeertubeChannelTabExtractorTest {
assertEquals(ChannelTabs.CHANNELS, extractor.getName());
}
@Test
public void testTab() {
assertEquals(ChannelTabs.CHANNELS, extractor.getTab());
}
@Test
@Override
public void testId() throws ParsingException {

View File

@ -42,11 +42,6 @@ public class SoundcloudChannelTabExtractorTest {
assertEquals(ChannelTabs.TRACKS, extractor.getName());
}
@Test
public void testTab() {
assertEquals(ChannelTabs.TRACKS, extractor.getTab());
}
@Test
@Override
public void testId() throws Exception {
@ -112,11 +107,6 @@ public class SoundcloudChannelTabExtractorTest {
assertEquals(ChannelTabs.PLAYLISTS, extractor.getName());
}
@Test
public void testTab() {
assertEquals(ChannelTabs.PLAYLISTS, extractor.getTab());
}
@Test
@Override
public void testId() throws ParsingException {
@ -171,11 +161,6 @@ public class SoundcloudChannelTabExtractorTest {
assertEquals(ChannelTabs.ALBUMS, extractor.getName());
}
@Test
public void testTab() {
assertEquals(ChannelTabs.ALBUMS, extractor.getTab());
}
@Test
@Override
public void testId() throws ParsingException {

View File

@ -44,11 +44,6 @@ public class YouTubeChannelTabExtractorTest {
assertEquals(ChannelTabs.PLAYLISTS, extractor.getName());
}
@Test
public void testTab() {
assertEquals(ChannelTabs.PLAYLISTS, extractor.getTab());
}
@Test
@Override
public void testId() throws ParsingException {
@ -104,11 +99,6 @@ public class YouTubeChannelTabExtractorTest {
assertEquals(ChannelTabs.CHANNELS, extractor.getName());
}
@Test
public void testTab() {
assertEquals(ChannelTabs.CHANNELS, extractor.getTab());
}
@Test
@Override
public void testId() throws ParsingException {
@ -163,11 +153,6 @@ public class YouTubeChannelTabExtractorTest {
assertEquals(ChannelTabs.LIVESTREAMS, extractor.getName());
}
@Test
public void testTab() {
assertEquals(ChannelTabs.LIVESTREAMS, extractor.getTab());
}
@Test
@Override
public void testId() throws ParsingException {
@ -221,11 +206,6 @@ public class YouTubeChannelTabExtractorTest {
assertEquals(ChannelTabs.SHORTS, extractor.getName());
}
@Test
public void testTab() {
assertEquals(ChannelTabs.SHORTS, extractor.getTab());
}
@Test
@Override
public void testId() throws ParsingException {