Skip to content

Commit bf24caa

Browse files
committed
Use media.ccc.de instead of api.media.ccc.de
1 parent c8abc1a commit bf24caa

17 files changed

Lines changed: 184 additions & 181 deletions

extractor/src/main/java/org/schabi/newpipe/extractor/services/media_ccc/MediaCCCService.java

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,12 @@
66
import org.schabi.newpipe.extractor.exceptions.ExtractionException;
77
import org.schabi.newpipe.extractor.kiosk.KioskExtractor;
88
import org.schabi.newpipe.extractor.kiosk.KioskList;
9-
import org.schabi.newpipe.extractor.linkhandler.*;
9+
import org.schabi.newpipe.extractor.linkhandler.LinkHandler;
10+
import org.schabi.newpipe.extractor.linkhandler.LinkHandlerFactory;
11+
import org.schabi.newpipe.extractor.linkhandler.ListLinkHandler;
12+
import org.schabi.newpipe.extractor.linkhandler.ListLinkHandlerFactory;
13+
import org.schabi.newpipe.extractor.linkhandler.SearchQueryHandler;
14+
import org.schabi.newpipe.extractor.linkhandler.SearchQueryHandlerFactory;
1015
import org.schabi.newpipe.extractor.playlist.PlaylistExtractor;
1116
import org.schabi.newpipe.extractor.search.SearchExtractor;
1217
import org.schabi.newpipe.extractor.services.media_ccc.extractors.MediaCCCConferenceExtractor;
@@ -21,19 +26,17 @@
2126
import org.schabi.newpipe.extractor.subscription.SubscriptionExtractor;
2227
import org.schabi.newpipe.extractor.suggestion.SuggestionExtractor;
2328

24-
import java.io.IOException;
25-
2629
import static java.util.Arrays.asList;
2730
import static org.schabi.newpipe.extractor.StreamingService.ServiceInfo.MediaCapability.AUDIO;
2831
import static org.schabi.newpipe.extractor.StreamingService.ServiceInfo.MediaCapability.VIDEO;
2932

3033
public class MediaCCCService extends StreamingService {
31-
public MediaCCCService(int id) {
34+
public MediaCCCService(final int id) {
3235
super(id, "MediaCCC", asList(AUDIO, VIDEO));
3336
}
3437

3538
@Override
36-
public SearchExtractor getSearchExtractor(SearchQueryHandler query) {
39+
public SearchExtractor getSearchExtractor(final SearchQueryHandler query) {
3740
return new MediaCCCSearchExtractor(this, query);
3841
}
3942

@@ -58,17 +61,17 @@ public SearchQueryHandlerFactory getSearchQHFactory() {
5861
}
5962

6063
@Override
61-
public StreamExtractor getStreamExtractor(LinkHandler linkHandler) {
64+
public StreamExtractor getStreamExtractor(final LinkHandler linkHandler) {
6265
return new MediaCCCStreamExtractor(this, linkHandler);
6366
}
6467

6568
@Override
66-
public ChannelExtractor getChannelExtractor(ListLinkHandler linkHandler) {
69+
public ChannelExtractor getChannelExtractor(final ListLinkHandler linkHandler) {
6770
return new MediaCCCConferenceExtractor(this, linkHandler);
6871
}
6972

7073
@Override
71-
public PlaylistExtractor getPlaylistExtractor(ListLinkHandler linkHandler) {
74+
public PlaylistExtractor getPlaylistExtractor(final ListLinkHandler linkHandler) {
7275
return null;
7376
}
7477

@@ -85,9 +88,9 @@ public KioskList getKioskList() throws ExtractionException {
8588
try {
8689
list.addKioskEntry(new KioskList.KioskExtractorFactory() {
8790
@Override
88-
public KioskExtractor createNewKiosk(StreamingService streamingService,
89-
String url,
90-
String kioskId) throws ExtractionException, IOException {
91+
public KioskExtractor createNewKiosk(final StreamingService streamingService,
92+
final String url, final String kioskId)
93+
throws ExtractionException {
9194
return new MediaCCCConferenceKiosk(MediaCCCService.this,
9295
new MediaCCCConferencesListLinkHandlerFactory().fromUrl(url), kioskId);
9396
}
@@ -111,8 +114,7 @@ public ListLinkHandlerFactory getCommentsLHFactory() {
111114
}
112115

113116
@Override
114-
public CommentsExtractor getCommentsExtractor(ListLinkHandler linkHandler)
115-
throws ExtractionException {
117+
public CommentsExtractor getCommentsExtractor(final ListLinkHandler linkHandler) {
116118
return null;
117119
}
118120

extractor/src/main/java/org/schabi/newpipe/extractor/services/media_ccc/extractors/MediaCCCConferenceExtractor.java

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import com.grack.nanojson.JsonObject;
55
import com.grack.nanojson.JsonParser;
66
import com.grack.nanojson.JsonParserException;
7+
78
import org.schabi.newpipe.extractor.StreamingService;
89
import org.schabi.newpipe.extractor.channel.ChannelExtractor;
910
import org.schabi.newpipe.extractor.downloader.Downloader;
@@ -14,45 +15,46 @@
1415
import org.schabi.newpipe.extractor.stream.StreamInfoItem;
1516
import org.schabi.newpipe.extractor.stream.StreamInfoItemsCollector;
1617

17-
import javax.annotation.Nonnull;
1818
import java.io.IOException;
1919

20-
public class MediaCCCConferenceExtractor extends ChannelExtractor {
20+
import javax.annotation.Nonnull;
2121

22+
public class MediaCCCConferenceExtractor extends ChannelExtractor {
2223
private JsonObject conferenceData;
2324

24-
public MediaCCCConferenceExtractor(StreamingService service, ListLinkHandler linkHandler) {
25+
public MediaCCCConferenceExtractor(final StreamingService service,
26+
final ListLinkHandler linkHandler) {
2527
super(service, linkHandler);
2628
}
2729

2830
@Override
29-
public String getAvatarUrl() throws ParsingException {
31+
public String getAvatarUrl() {
3032
return conferenceData.getString("logo_url");
3133
}
3234

3335
@Override
34-
public String getBannerUrl() throws ParsingException {
36+
public String getBannerUrl() {
3537
return conferenceData.getString("logo_url");
3638
}
3739

3840
@Override
39-
public String getFeedUrl() throws ParsingException {
41+
public String getFeedUrl() {
4042
return null;
4143
}
4244

4345
@Override
44-
public long getSubscriberCount() throws ParsingException {
46+
public long getSubscriberCount() {
4547
return -1;
4648
}
4749

4850
@Override
49-
public String getDescription() throws ParsingException {
51+
public String getDescription() {
5052
return null;
5153
}
5254

5355
@Nonnull
5456
@Override
55-
public InfoItemsPage<StreamInfoItem> getInitialPage() throws IOException, ExtractionException {
57+
public InfoItemsPage<StreamInfoItem> getInitialPage() {
5658
StreamInfoItemsCollector collector = new StreamInfoItemsCollector(getServiceId());
5759
JsonArray events = conferenceData.getArray("events");
5860
for (int i = 0; i < events.size(); i++) {
@@ -62,17 +64,18 @@ public InfoItemsPage<StreamInfoItem> getInitialPage() throws IOException, Extrac
6264
}
6365

6466
@Override
65-
public String getNextPageUrl() throws IOException, ExtractionException {
67+
public String getNextPageUrl() {
6668
return null;
6769
}
6870

6971
@Override
70-
public InfoItemsPage<StreamInfoItem> getPage(String pageUrl) throws IOException, ExtractionException {
72+
public InfoItemsPage<StreamInfoItem> getPage(final String pageUrl) {
7173
return null;
7274
}
7375

7476
@Override
75-
public void onFetchPage(@Nonnull Downloader downloader) throws IOException, ExtractionException {
77+
public void onFetchPage(@Nonnull final Downloader downloader)
78+
throws IOException, ExtractionException {
7679
try {
7780
conferenceData = JsonParser.object().from(downloader.get(getUrl()).responseBody());
7881
} catch (JsonParserException jpe) {
@@ -88,7 +91,7 @@ public String getName() throws ParsingException {
8891

8992
@Nonnull
9093
@Override
91-
public String getOriginalUrl() throws ParsingException {
94+
public String getOriginalUrl() {
9295
return "https://media.ccc.de/c/" + conferenceData.getString("acronym");
9396
}
9497
}

extractor/src/main/java/org/schabi/newpipe/extractor/services/media_ccc/extractors/MediaCCCConferenceKiosk.java

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import com.grack.nanojson.JsonObject;
55
import com.grack.nanojson.JsonParser;
66
import com.grack.nanojson.JsonParserException;
7+
78
import org.schabi.newpipe.extractor.StreamingService;
89
import org.schabi.newpipe.extractor.channel.ChannelInfoItem;
910
import org.schabi.newpipe.extractor.channel.ChannelInfoItemsCollector;
@@ -14,22 +15,22 @@
1415
import org.schabi.newpipe.extractor.linkhandler.ListLinkHandler;
1516
import org.schabi.newpipe.extractor.services.media_ccc.extractors.infoItems.MediaCCCConferenceInfoItemExtractor;
1617

17-
import javax.annotation.Nonnull;
1818
import java.io.IOException;
1919

20-
public class MediaCCCConferenceKiosk extends KioskExtractor<ChannelInfoItem> {
20+
import javax.annotation.Nonnull;
2121

22+
public class MediaCCCConferenceKiosk extends KioskExtractor<ChannelInfoItem> {
2223
private JsonObject doc;
2324

24-
public MediaCCCConferenceKiosk(StreamingService streamingService,
25-
ListLinkHandler linkHandler,
26-
String kioskId) {
25+
public MediaCCCConferenceKiosk(final StreamingService streamingService,
26+
final ListLinkHandler linkHandler,
27+
final String kioskId) {
2728
super(streamingService, linkHandler, kioskId);
2829
}
2930

3031
@Nonnull
3132
@Override
32-
public InfoItemsPage<ChannelInfoItem> getInitialPage() throws IOException, ExtractionException {
33+
public InfoItemsPage<ChannelInfoItem> getInitialPage() {
3334
JsonArray conferences = doc.getArray("conferences");
3435
ChannelInfoItemsCollector collector = new ChannelInfoItemsCollector(getServiceId());
3536
for (int i = 0; i < conferences.size(); i++) {
@@ -40,18 +41,20 @@ public InfoItemsPage<ChannelInfoItem> getInitialPage() throws IOException, Extra
4041
}
4142

4243
@Override
43-
public String getNextPageUrl() throws IOException, ExtractionException {
44+
public String getNextPageUrl() {
4445
return "";
4546
}
4647

4748
@Override
48-
public InfoItemsPage<ChannelInfoItem> getPage(String pageUrl) throws IOException, ExtractionException {
49+
public InfoItemsPage<ChannelInfoItem> getPage(final String pageUrl) {
4950
return InfoItemsPage.emptyPage();
5051
}
5152

5253
@Override
53-
public void onFetchPage(@Nonnull Downloader downloader) throws IOException, ExtractionException {
54-
String site = downloader.get(getLinkHandler().getUrl(), getExtractorLocalization()).responseBody();
54+
public void onFetchPage(@Nonnull final Downloader downloader)
55+
throws IOException, ExtractionException {
56+
final String site = downloader.get(getLinkHandler().getUrl(), getExtractorLocalization())
57+
.responseBody();
5558
try {
5659
doc = JsonParser.object().from(site);
5760
} catch (JsonParserException jpe) {

extractor/src/main/java/org/schabi/newpipe/extractor/services/media_ccc/extractors/MediaCCCParsingHelper.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,10 @@
77
import java.util.Calendar;
88
import java.util.Date;
99

10-
public class MediaCCCParsingHelper {
11-
private MediaCCCParsingHelper() {
12-
}
10+
public final class MediaCCCParsingHelper {
11+
private MediaCCCParsingHelper() { }
1312

14-
public static Calendar parseDateFrom(String textualUploadDate) throws ParsingException {
13+
public static Calendar parseDateFrom(final String textualUploadDate) throws ParsingException {
1514
Date date;
1615
try {
1716
date = new SimpleDateFormat("yyyy-MM-dd").parse(textualUploadDate);

extractor/src/main/java/org/schabi/newpipe/extractor/services/media_ccc/extractors/MediaCCCSearchExtractor.java

Lines changed: 25 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -4,31 +4,34 @@
44
import com.grack.nanojson.JsonObject;
55
import com.grack.nanojson.JsonParser;
66
import com.grack.nanojson.JsonParserException;
7+
78
import org.schabi.newpipe.extractor.InfoItem;
89
import org.schabi.newpipe.extractor.StreamingService;
910
import org.schabi.newpipe.extractor.channel.ChannelInfoItem;
1011
import org.schabi.newpipe.extractor.channel.ChannelInfoItemExtractor;
1112
import org.schabi.newpipe.extractor.downloader.Downloader;
1213
import org.schabi.newpipe.extractor.exceptions.ExtractionException;
13-
import org.schabi.newpipe.extractor.exceptions.ParsingException;
1414
import org.schabi.newpipe.extractor.linkhandler.SearchQueryHandler;
1515
import org.schabi.newpipe.extractor.search.InfoItemsSearchCollector;
1616
import org.schabi.newpipe.extractor.search.SearchExtractor;
1717
import org.schabi.newpipe.extractor.services.media_ccc.extractors.infoItems.MediaCCCStreamInfoItemExtractor;
1818
import org.schabi.newpipe.extractor.services.media_ccc.linkHandler.MediaCCCConferencesListLinkHandlerFactory;
1919

20-
import javax.annotation.Nonnull;
2120
import java.io.IOException;
2221
import java.util.List;
2322

24-
import static org.schabi.newpipe.extractor.services.media_ccc.linkHandler.MediaCCCSearchQueryHandlerFactory.*;
23+
import javax.annotation.Nonnull;
2524

26-
public class MediaCCCSearchExtractor extends SearchExtractor {
25+
import static org.schabi.newpipe.extractor.services.media_ccc.linkHandler.MediaCCCSearchQueryHandlerFactory.ALL;
26+
import static org.schabi.newpipe.extractor.services.media_ccc.linkHandler.MediaCCCSearchQueryHandlerFactory.CONFERENCES;
27+
import static org.schabi.newpipe.extractor.services.media_ccc.linkHandler.MediaCCCSearchQueryHandlerFactory.EVENTS;
2728

29+
public class MediaCCCSearchExtractor extends SearchExtractor {
2830
private JsonObject doc;
2931
private MediaCCCConferenceKiosk conferenceKiosk;
3032

31-
public MediaCCCSearchExtractor(StreamingService service, SearchQueryHandler linkHandler) {
33+
public MediaCCCSearchExtractor(final StreamingService service,
34+
final SearchQueryHandler linkHandler) {
3235
super(service, linkHandler);
3336
try {
3437
conferenceKiosk = new MediaCCCConferenceKiosk(service,
@@ -40,13 +43,13 @@ public MediaCCCSearchExtractor(StreamingService service, SearchQueryHandler link
4043
}
4144

4245
@Override
43-
public String getSearchSuggestion() throws ParsingException {
46+
public String getSearchSuggestion() {
4447
return null;
4548
}
4649

4750
@Nonnull
4851
@Override
49-
public InfoItemsPage<InfoItem> getInitialPage() throws IOException, ExtractionException {
52+
public InfoItemsPage<InfoItem> getInitialPage() {
5053
final InfoItemsSearchCollector searchItems = new InfoItemsSearchCollector(getServiceId());
5154

5255
if (getLinkHandler().getContentFilters().contains(CONFERENCES)
@@ -70,17 +73,18 @@ public InfoItemsPage<InfoItem> getInitialPage() throws IOException, ExtractionEx
7073
}
7174

7275
@Override
73-
public String getNextPageUrl() throws IOException, ExtractionException {
76+
public String getNextPageUrl() {
7477
return "";
7578
}
7679

7780
@Override
78-
public InfoItemsPage<InfoItem> getPage(String pageUrl) throws IOException, ExtractionException {
81+
public InfoItemsPage<InfoItem> getPage(final String pageUrl) {
7982
return InfoItemsPage.emptyPage();
8083
}
8184

8285
@Override
83-
public void onFetchPage(@Nonnull Downloader downloader) throws IOException, ExtractionException {
86+
public void onFetchPage(@Nonnull final Downloader downloader)
87+
throws IOException, ExtractionException {
8488
if (getLinkHandler().getContentFilters().contains(EVENTS)
8589
|| getLinkHandler().getContentFilters().contains(ALL)
8690
|| getLinkHandler().getContentFilters().isEmpty()) {
@@ -95,44 +99,45 @@ public void onFetchPage(@Nonnull Downloader downloader) throws IOException, Extr
9599
}
96100
if (getLinkHandler().getContentFilters().contains(CONFERENCES)
97101
|| getLinkHandler().getContentFilters().contains(ALL)
98-
|| getLinkHandler().getContentFilters().isEmpty())
102+
|| getLinkHandler().getContentFilters().isEmpty()) {
99103
conferenceKiosk.fetchPage();
104+
}
100105
}
101106

102-
private void searchConferences(String searchString,
103-
List<ChannelInfoItem> channelItems,
104-
InfoItemsSearchCollector collector) {
107+
private void searchConferences(final String searchString,
108+
final List<ChannelInfoItem> channelItems,
109+
final InfoItemsSearchCollector collector) {
105110
for (final ChannelInfoItem item : channelItems) {
106111
if (item.getName().toUpperCase().contains(
107112
searchString.toUpperCase())) {
108113
collector.commit(new ChannelInfoItemExtractor() {
109114
@Override
110-
public String getDescription() throws ParsingException {
115+
public String getDescription() {
111116
return item.getDescription();
112117
}
113118

114119
@Override
115-
public long getSubscriberCount() throws ParsingException {
120+
public long getSubscriberCount() {
116121
return item.getSubscriberCount();
117122
}
118123

119124
@Override
120-
public long getStreamCount() throws ParsingException {
125+
public long getStreamCount() {
121126
return item.getStreamCount();
122127
}
123128

124129
@Override
125-
public String getName() throws ParsingException {
130+
public String getName() {
126131
return item.getName();
127132
}
128133

129134
@Override
130-
public String getUrl() throws ParsingException {
135+
public String getUrl() {
131136
return item.getUrl();
132137
}
133138

134139
@Override
135-
public String getThumbnailUrl() throws ParsingException {
140+
public String getThumbnailUrl() {
136141
return item.getThumbnailUrl();
137142
}
138143
});

0 commit comments

Comments
 (0)