2017-06-29 20:12:55 +02:00
|
|
|
package org.schabi.newpipe.extractor.playlist;
|
|
|
|
|
2017-07-10 00:43:04 +02:00
|
|
|
import org.schabi.newpipe.extractor.ListExtractor;
|
2017-08-06 22:20:15 +02:00
|
|
|
import org.schabi.newpipe.extractor.StreamingService;
|
2017-06-29 20:12:55 +02:00
|
|
|
import org.schabi.newpipe.extractor.exceptions.ParsingException;
|
2018-07-13 18:02:40 +02:00
|
|
|
import org.schabi.newpipe.extractor.linkhandler.ListLinkHandler;
|
2018-03-01 01:02:43 +01:00
|
|
|
import org.schabi.newpipe.extractor.stream.StreamInfoItem;
|
2017-06-29 20:12:55 +02:00
|
|
|
|
2020-05-09 09:52:24 +02:00
|
|
|
import javax.annotation.Nonnull;
|
|
|
|
|
2018-03-11 21:54:41 +01:00
|
|
|
public abstract class PlaylistExtractor extends ListExtractor<StreamInfoItem> {
|
2017-06-29 20:12:55 +02:00
|
|
|
|
2022-03-12 13:06:00 +01:00
|
|
|
public PlaylistExtractor(final StreamingService service, final ListLinkHandler linkHandler) {
|
2019-04-28 22:03:16 +02:00
|
|
|
super(service, linkHandler);
|
2017-08-06 22:20:15 +02:00
|
|
|
}
|
|
|
|
|
2017-06-29 20:12:55 +02:00
|
|
|
public abstract String getUploaderUrl() throws ParsingException;
|
|
|
|
public abstract String getUploaderName() throws ParsingException;
|
|
|
|
public abstract String getUploaderAvatarUrl() throws ParsingException;
|
2021-01-22 01:44:58 +01:00
|
|
|
public abstract boolean isUploaderVerified() throws ParsingException;
|
2017-08-11 03:23:09 +02:00
|
|
|
|
2017-08-06 22:20:15 +02:00
|
|
|
public abstract long getStreamCount() throws ParsingException;
|
2020-05-09 09:52:24 +02:00
|
|
|
|
2023-05-11 06:00:22 +02:00
|
|
|
public abstract String getDescription() throws ParsingException;
|
|
|
|
|
2022-03-12 13:06:00 +01:00
|
|
|
@Nonnull
|
|
|
|
public String getThumbnailUrl() throws ParsingException {
|
2022-08-15 05:49:40 +02:00
|
|
|
return "";
|
2022-03-12 13:06:00 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
@Nonnull
|
|
|
|
public String getBannerUrl() throws ParsingException {
|
|
|
|
// Banner can't be handled by frontend right now.
|
|
|
|
// Whoever is willing to implement this should also implement it in the frontend.
|
2022-08-15 05:49:40 +02:00
|
|
|
return "";
|
2022-03-12 13:06:00 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
@Nonnull
|
|
|
|
public String getSubChannelName() throws ParsingException {
|
2022-08-15 05:49:40 +02:00
|
|
|
return "";
|
2022-03-12 13:06:00 +01:00
|
|
|
}
|
2020-05-09 09:52:24 +02:00
|
|
|
|
2022-03-12 13:06:00 +01:00
|
|
|
@Nonnull
|
|
|
|
public String getSubChannelUrl() throws ParsingException {
|
2022-08-15 05:49:40 +02:00
|
|
|
return "";
|
2022-03-12 13:06:00 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
@Nonnull
|
|
|
|
public String getSubChannelAvatarUrl() throws ParsingException {
|
2022-08-15 05:49:40 +02:00
|
|
|
return "";
|
2022-03-12 13:06:00 +01:00
|
|
|
}
|
2022-02-02 19:12:36 +01:00
|
|
|
|
|
|
|
public PlaylistInfo.PlaylistType getPlaylistType() throws ParsingException {
|
|
|
|
return PlaylistInfo.PlaylistType.NORMAL;
|
|
|
|
}
|
2017-06-29 20:12:55 +02:00
|
|
|
}
|