NewPipeExtractor/extractor/src/main/java/org/schabi/newpipe/extractor/services/soundcloud/extractors/SoundcloudChannelInfoItemEx...

53 lines
1.5 KiB
Java
Raw Normal View History

package org.schabi.newpipe.extractor.services.soundcloud.extractors;
import com.grack.nanojson.JsonObject;
2017-08-11 03:23:09 +02:00
import org.schabi.newpipe.extractor.channel.ChannelInfoItemExtractor;
2021-02-07 22:42:21 +01:00
import static org.schabi.newpipe.extractor.utils.Utils.EMPTY_STRING;
import static org.schabi.newpipe.extractor.utils.Utils.replaceHttpWithHttps;
2017-08-11 03:23:09 +02:00
public class SoundcloudChannelInfoItemExtractor implements ChannelInfoItemExtractor {
private final JsonObject itemObject;
public SoundcloudChannelInfoItemExtractor(final JsonObject itemObject) {
this.itemObject = itemObject;
}
@Override
2017-08-11 20:21:49 +02:00
public String getName() {
return itemObject.getString("username");
}
@Override
2017-08-11 20:21:49 +02:00
public String getUrl() {
return replaceHttpWithHttps(itemObject.getString("permalink_url"));
}
@Override
2017-08-11 20:21:49 +02:00
public String getThumbnailUrl() {
2020-04-16 16:08:14 +02:00
String avatarUrl = itemObject.getString("avatar_url", EMPTY_STRING);
// An avatar URL with a better resolution
return avatarUrl.replace("large.jpg", "crop.jpg");
}
@Override
public long getSubscriberCount() {
2020-06-13 20:25:38 +02:00
return itemObject.getLong("followers_count");
}
@Override
2017-08-06 22:20:15 +02:00
public long getStreamCount() {
2020-06-13 20:25:38 +02:00
return itemObject.getLong("track_count");
}
@Override
public boolean isVerified() {
return itemObject.getBoolean("verified");
}
@Override
public String getDescription() {
2020-04-16 16:08:14 +02:00
return itemObject.getString("description", EMPTY_STRING);
}
}