Some fixes
This commit is contained in:
parent
2044a85b58
commit
9c476037ef
|
@ -61,6 +61,7 @@ import app.fedilab.fedilabtube.client.data.AccountData.Account;
|
||||||
import app.fedilab.fedilabtube.client.data.ChannelData.Channel;
|
import app.fedilab.fedilabtube.client.data.ChannelData.Channel;
|
||||||
import app.fedilab.fedilabtube.client.data.VideoData.Video;
|
import app.fedilab.fedilabtube.client.data.VideoData.Video;
|
||||||
import app.fedilab.fedilabtube.client.entities.Item;
|
import app.fedilab.fedilabtube.client.entities.Item;
|
||||||
|
import app.fedilab.fedilabtube.client.entities.ItemStr;
|
||||||
import app.fedilab.fedilabtube.client.entities.VideoParams;
|
import app.fedilab.fedilabtube.client.entities.VideoParams;
|
||||||
import app.fedilab.fedilabtube.helper.Helper;
|
import app.fedilab.fedilabtube.helper.Helper;
|
||||||
import app.fedilab.fedilabtube.viewmodel.ChannelsVM;
|
import app.fedilab.fedilabtube.viewmodel.ChannelsVM;
|
||||||
|
@ -93,8 +94,8 @@ public class PeertubeEditUploadActivity extends AppCompatActivity {
|
||||||
private VideoParams videoParams;
|
private VideoParams videoParams;
|
||||||
private Video video;
|
private Video video;
|
||||||
private String channelToSendId;
|
private String channelToSendId;
|
||||||
Item languageToSend, licenseToSend, privacyToSend, categoryToSend;
|
Item licenseToSend, privacyToSend, categoryToSend;
|
||||||
|
ItemStr languageToSend;
|
||||||
@Override
|
@Override
|
||||||
protected void onCreate(Bundle savedInstanceState) {
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
|
@ -271,10 +272,10 @@ public class PeertubeEditUploadActivity extends AppCompatActivity {
|
||||||
});
|
});
|
||||||
|
|
||||||
if (languageToSend == null) {
|
if (languageToSend == null) {
|
||||||
languageToSend = new Item();
|
languageToSend = new ItemStr();
|
||||||
LinkedHashMap<String, String> languages = new LinkedHashMap<>(peertubeInformation.getLanguages());
|
LinkedHashMap<String, String> languages = new LinkedHashMap<>(peertubeInformation.getLanguages());
|
||||||
Map.Entry<String, String> entryString = languages.entrySet().iterator().next();
|
Map.Entry<String, String> entryString = languages.entrySet().iterator().next();
|
||||||
languageToSend.setId(Long.parseLong(entryString.getKey()));
|
languageToSend.setId(entryString.getKey());
|
||||||
languageToSend.setLabel(entryString.getValue());
|
languageToSend.setLabel(entryString.getValue());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -449,7 +450,7 @@ public class PeertubeEditUploadActivity extends AppCompatActivity {
|
||||||
while (it.hasNext()) {
|
while (it.hasNext()) {
|
||||||
Map.Entry<String, String> pair = it.next();
|
Map.Entry<String, String> pair = it.next();
|
||||||
if (i == position) {
|
if (i == position) {
|
||||||
languageToSend.setId(Long.parseLong(pair.getKey()));
|
languageToSend.setId(pair.getKey());
|
||||||
languageToSend.setLabel(pair.getValue());
|
languageToSend.setLabel(pair.getValue());
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -490,7 +491,7 @@ public class PeertubeEditUploadActivity extends AppCompatActivity {
|
||||||
|
|
||||||
Item finalCategoryToSend = categoryToSend;
|
Item finalCategoryToSend = categoryToSend;
|
||||||
Item finalLicenseToSend = licenseToSend;
|
Item finalLicenseToSend = licenseToSend;
|
||||||
Item finalLanguageToSend = languageToSend;
|
ItemStr finalLanguageToSend = languageToSend;
|
||||||
Item finalPrivacyToSend = privacyToSend;
|
Item finalPrivacyToSend = privacyToSend;
|
||||||
set_upload_submit.setOnClickListener(v -> {
|
set_upload_submit.setOnClickListener(v -> {
|
||||||
String title1 = p_video_title.getText().toString().trim();
|
String title1 = p_video_title.getText().toString().trim();
|
||||||
|
@ -504,7 +505,7 @@ public class PeertubeEditUploadActivity extends AppCompatActivity {
|
||||||
videoParams.setCommentsEnabled(commentEnabled1);
|
videoParams.setCommentsEnabled(commentEnabled1);
|
||||||
videoParams.setCategory((int)finalCategoryToSend.getId());
|
videoParams.setCategory((int)finalCategoryToSend.getId());
|
||||||
videoParams.setLicence(String.valueOf(finalLicenseToSend.getId()));
|
videoParams.setLicence(String.valueOf(finalLicenseToSend.getId()));
|
||||||
videoParams.setLanguage((int) finalLanguageToSend.getId());
|
videoParams.setLanguage(finalLanguageToSend.getId());
|
||||||
videoParams.setChannelId(channelToSendId);
|
videoParams.setChannelId(channelToSendId);
|
||||||
videoParams.setPrivacy((int) finalPrivacyToSend.getId());
|
videoParams.setPrivacy((int) finalPrivacyToSend.getId());
|
||||||
List<String> tags = p_video_tags.getTags();
|
List<String> tags = p_video_tags.getTags();
|
||||||
|
@ -519,9 +520,9 @@ public class PeertubeEditUploadActivity extends AppCompatActivity {
|
||||||
set_upload_licenses.setSelection(licensePosition);
|
set_upload_licenses.setSelection(licensePosition);
|
||||||
set_upload_categories.setSelection(categoryPosition);
|
set_upload_categories.setSelection(categoryPosition);
|
||||||
|
|
||||||
String[] tags = video.getTags();
|
List<String> tags = video.getTags();
|
||||||
if (tags != null && tags.length > 0) {
|
if (tags != null && tags.size() > 0) {
|
||||||
p_video_tags.setTags(tags);
|
p_video_tags.setTags(tags.toArray(new String[0]));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,7 +26,7 @@ import app.fedilab.fedilabtube.client.data.NotificationData;
|
||||||
import app.fedilab.fedilabtube.client.data.PlaylistData;
|
import app.fedilab.fedilabtube.client.data.PlaylistData;
|
||||||
import app.fedilab.fedilabtube.client.data.VideoData;
|
import app.fedilab.fedilabtube.client.data.VideoData;
|
||||||
import app.fedilab.fedilabtube.client.entities.Error;
|
import app.fedilab.fedilabtube.client.entities.Error;
|
||||||
import app.fedilab.fedilabtube.client.entities.OverviewVideo;
|
import app.fedilab.fedilabtube.client.data.OverviewVideoData.OverviewVideo;
|
||||||
import app.fedilab.fedilabtube.client.entities.Rating;
|
import app.fedilab.fedilabtube.client.entities.Rating;
|
||||||
|
|
||||||
@SuppressWarnings({"unused", "RedundantSuppression"})
|
@SuppressWarnings({"unused", "RedundantSuppression"})
|
||||||
|
|
|
@ -23,13 +23,13 @@ import app.fedilab.fedilabtube.client.data.ChannelData;
|
||||||
import app.fedilab.fedilabtube.client.data.CommentData;
|
import app.fedilab.fedilabtube.client.data.CommentData;
|
||||||
import app.fedilab.fedilabtube.client.data.InstanceData;
|
import app.fedilab.fedilabtube.client.data.InstanceData;
|
||||||
import app.fedilab.fedilabtube.client.data.NotificationData;
|
import app.fedilab.fedilabtube.client.data.NotificationData;
|
||||||
|
import app.fedilab.fedilabtube.client.data.OverviewVideoData;
|
||||||
import app.fedilab.fedilabtube.client.data.PlaylistData;
|
import app.fedilab.fedilabtube.client.data.PlaylistData;
|
||||||
import app.fedilab.fedilabtube.client.data.VideoData;
|
import app.fedilab.fedilabtube.client.data.VideoData;
|
||||||
import app.fedilab.fedilabtube.client.entities.CaptionsParams;
|
import app.fedilab.fedilabtube.client.entities.CaptionsParams;
|
||||||
import app.fedilab.fedilabtube.client.entities.ChannelParams;
|
import app.fedilab.fedilabtube.client.entities.ChannelParams;
|
||||||
import app.fedilab.fedilabtube.client.entities.Oauth;
|
import app.fedilab.fedilabtube.client.entities.Oauth;
|
||||||
import app.fedilab.fedilabtube.client.entities.OauthParams;
|
import app.fedilab.fedilabtube.client.entities.OauthParams;
|
||||||
import app.fedilab.fedilabtube.client.entities.OverviewVideo;
|
|
||||||
import app.fedilab.fedilabtube.client.entities.PlaylistExist;
|
import app.fedilab.fedilabtube.client.entities.PlaylistExist;
|
||||||
import app.fedilab.fedilabtube.client.entities.PlaylistParams;
|
import app.fedilab.fedilabtube.client.entities.PlaylistParams;
|
||||||
import app.fedilab.fedilabtube.client.entities.Rating;
|
import app.fedilab.fedilabtube.client.entities.Rating;
|
||||||
|
@ -95,31 +95,31 @@ public interface PeertubeService {
|
||||||
//Timelines Authenticated
|
//Timelines Authenticated
|
||||||
//Subscriber timeline
|
//Subscriber timeline
|
||||||
@GET("users/me/subscriptions/videos?sort=-publishedAt")
|
@GET("users/me/subscriptions/videos?sort=-publishedAt")
|
||||||
Call<List<VideoData.Video>> getSubscriptionVideos(@Query("start") String maxId, @Query("languageOneOf") List<String> languageOneOf);
|
Call<VideoData> getSubscriptionVideos(@Query("start") String maxId, @Query("languageOneOf") List<String> languageOneOf);
|
||||||
|
|
||||||
//Overview videos
|
//Overview videos
|
||||||
@GET("overviews/videos")
|
@GET("overviews/videos")
|
||||||
Call<OverviewVideo> getOverviewVideos(@Query("start") String maxId, @Query("languageOneOf") List<String> languageOneOf);
|
Call<OverviewVideoData> getOverviewVideos(@Query("start") String maxId, @Query("languageOneOf") List<String> languageOneOf);
|
||||||
|
|
||||||
//Most liked videos
|
//Most liked videos
|
||||||
@GET("videos?sort=-likes")
|
@GET("videos?sort=-likes")
|
||||||
Call<List<VideoData.Video>> getMostLikedVideos(@Query("start") String maxId, @Query("languageOneOf") List<String> languageOneOf);
|
Call<VideoData> getMostLikedVideos(@Query("start") String maxId, @Query("languageOneOf") List<String> languageOneOf);
|
||||||
|
|
||||||
//Most liked videos
|
//Most liked videos
|
||||||
@GET("videos?sort=-trending")
|
@GET("videos?sort=-trending")
|
||||||
Call<List<VideoData.Video>> getTrendingVideos(@Query("start") String maxId, @Query("languageOneOf") List<String> languageOneOf);
|
Call<VideoData> getTrendingVideos(@Query("start") String maxId, @Query("languageOneOf") List<String> languageOneOf);
|
||||||
|
|
||||||
//Recently added videos
|
//Recently added videos
|
||||||
@GET("videos?sort=-publishedAt")
|
@GET("videos?sort=-publishedAt")
|
||||||
Call<List<VideoData.Video>> getRecentlyAddedVideos(@Query("start") String maxId, @Query("languageOneOf") List<String> languageOneOf);
|
Call<VideoData> getRecentlyAddedVideos(@Query("start") String maxId, @Query("languageOneOf") List<String> languageOneOf);
|
||||||
|
|
||||||
//Local videos
|
//Local videos
|
||||||
@GET("videos?sort=-publishedAt&filter=local")
|
@GET("videos?sort=-publishedAt&filter=local")
|
||||||
Call<List<VideoData.Video>> getLocalVideos(@Query("start") String maxId, @Query("languageOneOf") List<String> languageOneOf);
|
Call<VideoData> getLocalVideos(@Query("start") String maxId, @Query("languageOneOf") List<String> languageOneOf);
|
||||||
|
|
||||||
//History
|
//History
|
||||||
@GET("users/me/history/videos")
|
@GET("users/me/history/videos")
|
||||||
Call<List<VideoData.Video>> getHistory(@Query("start") String maxId);
|
Call<VideoData> getHistory(@Query("start") String maxId);
|
||||||
|
|
||||||
//Search
|
//Search
|
||||||
@GET("search/videos")
|
@GET("search/videos")
|
||||||
|
@ -136,7 +136,7 @@ public interface PeertubeService {
|
||||||
|
|
||||||
//Get my video
|
//Get my video
|
||||||
@GET("users/me/videos?sort=-publishedAt")
|
@GET("users/me/videos?sort=-publishedAt")
|
||||||
Call<List<VideoData.Video>> getMyVideo(@Header("Authorization") String credentials, @Query("start") String maxId);
|
Call<VideoData> getMyVideo(@Header("Authorization") String credentials, @Query("start") String maxId);
|
||||||
|
|
||||||
//Get my video
|
//Get my video
|
||||||
@GET("accounts/{name}/videos?sort=-publishedAt")
|
@GET("accounts/{name}/videos?sort=-publishedAt")
|
||||||
|
|
|
@ -41,6 +41,7 @@ import app.fedilab.fedilabtube.client.data.ChannelData;
|
||||||
import app.fedilab.fedilabtube.client.data.CommentData;
|
import app.fedilab.fedilabtube.client.data.CommentData;
|
||||||
import app.fedilab.fedilabtube.client.data.InstanceData;
|
import app.fedilab.fedilabtube.client.data.InstanceData;
|
||||||
import app.fedilab.fedilabtube.client.data.NotificationData;
|
import app.fedilab.fedilabtube.client.data.NotificationData;
|
||||||
|
import app.fedilab.fedilabtube.client.data.OverviewVideoData;
|
||||||
import app.fedilab.fedilabtube.client.data.PlaylistData;
|
import app.fedilab.fedilabtube.client.data.PlaylistData;
|
||||||
import app.fedilab.fedilabtube.client.data.VideoData;
|
import app.fedilab.fedilabtube.client.data.VideoData;
|
||||||
import app.fedilab.fedilabtube.client.entities.AccountCreation;
|
import app.fedilab.fedilabtube.client.entities.AccountCreation;
|
||||||
|
@ -49,7 +50,6 @@ import app.fedilab.fedilabtube.client.entities.Error;
|
||||||
import app.fedilab.fedilabtube.client.entities.InstanceParams;
|
import app.fedilab.fedilabtube.client.entities.InstanceParams;
|
||||||
import app.fedilab.fedilabtube.client.entities.Oauth;
|
import app.fedilab.fedilabtube.client.entities.Oauth;
|
||||||
import app.fedilab.fedilabtube.client.entities.OauthParams;
|
import app.fedilab.fedilabtube.client.entities.OauthParams;
|
||||||
import app.fedilab.fedilabtube.client.entities.OverviewVideo;
|
|
||||||
import app.fedilab.fedilabtube.client.entities.PeertubeInformation;
|
import app.fedilab.fedilabtube.client.entities.PeertubeInformation;
|
||||||
import app.fedilab.fedilabtube.client.entities.PlaylistParams;
|
import app.fedilab.fedilabtube.client.entities.PlaylistParams;
|
||||||
import app.fedilab.fedilabtube.client.entities.Rating;
|
import app.fedilab.fedilabtube.client.entities.Rating;
|
||||||
|
@ -248,35 +248,36 @@ public class RetrofitPeertubeAPI {
|
||||||
public APIResponse getTL(TimelineVM.TimelineType timelineType, String max_id) {
|
public APIResponse getTL(TimelineVM.TimelineType timelineType, String max_id) {
|
||||||
APIResponse apiResponse = new APIResponse();
|
APIResponse apiResponse = new APIResponse();
|
||||||
PeertubeService peertubeService = init();
|
PeertubeService peertubeService = init();
|
||||||
Call<List<VideoData.Video>> videoCall = null;
|
Call<VideoData> videoCall = null;
|
||||||
|
ArrayList<String> filter = selection!=null?new ArrayList<>(selection):null;
|
||||||
switch (timelineType) {
|
switch (timelineType) {
|
||||||
case MY_VIDEOS:
|
case MY_VIDEOS:
|
||||||
videoCall = peertubeService.getMyVideo(token, max_id);
|
videoCall = peertubeService.getMyVideo(token, max_id);
|
||||||
break;
|
break;
|
||||||
case SUBSCRIBTIONS:
|
case SUBSCRIBTIONS:
|
||||||
videoCall = peertubeService.getSubscriptionVideos(max_id, new ArrayList<>(selection));
|
videoCall = peertubeService.getSubscriptionVideos(max_id, filter);
|
||||||
break;
|
break;
|
||||||
case MOST_LIKED:
|
case MOST_LIKED:
|
||||||
videoCall = peertubeService.getMostLikedVideos(max_id, new ArrayList<>(selection));
|
videoCall = peertubeService.getMostLikedVideos(max_id, filter);
|
||||||
break;
|
break;
|
||||||
case LOCAL:
|
case LOCAL:
|
||||||
videoCall = peertubeService.getLocalVideos(max_id, new ArrayList<>(selection));
|
videoCall = peertubeService.getLocalVideos(max_id, filter);
|
||||||
break;
|
break;
|
||||||
case TRENDING:
|
case TRENDING:
|
||||||
videoCall = peertubeService.getTrendingVideos(max_id, new ArrayList<>(selection));
|
videoCall = peertubeService.getTrendingVideos(max_id, filter);
|
||||||
break;
|
break;
|
||||||
case HISTORY:
|
case HISTORY:
|
||||||
videoCall = peertubeService.getHistory(max_id);
|
videoCall = peertubeService.getHistory(max_id);
|
||||||
break;
|
break;
|
||||||
case RECENT:
|
case RECENT:
|
||||||
videoCall = peertubeService.getRecentlyAddedVideos(max_id, new ArrayList<>(selection));
|
videoCall = peertubeService.getRecentlyAddedVideos(max_id, filter);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (videoCall != null) {
|
if (videoCall != null) {
|
||||||
try {
|
try {
|
||||||
Response<List<VideoData.Video>> response = videoCall.execute();
|
Response<VideoData> response = videoCall.execute();
|
||||||
if (response.isSuccessful()) {
|
if (response.isSuccessful() && response.body() != null) {
|
||||||
apiResponse.setPeertubes(response.body());
|
apiResponse.setPeertubes(response.body().data);
|
||||||
} else {
|
} else {
|
||||||
Error error = new Error();
|
Error error = new Error();
|
||||||
error.setStatusCode(response.code());
|
error.setStatusCode(response.code());
|
||||||
|
@ -306,11 +307,12 @@ public class RetrofitPeertubeAPI {
|
||||||
public APIResponse getOverviewVideo(String max_id) {
|
public APIResponse getOverviewVideo(String max_id) {
|
||||||
APIResponse apiResponse = new APIResponse();
|
APIResponse apiResponse = new APIResponse();
|
||||||
PeertubeService peertubeService = init();
|
PeertubeService peertubeService = init();
|
||||||
Call<OverviewVideo> overviewVideoCall = peertubeService.getOverviewVideos(max_id, new ArrayList<>(selection));
|
ArrayList<String> filter = selection!=null?new ArrayList<>(selection):null;
|
||||||
|
Call<OverviewVideoData> overviewVideoCall = peertubeService.getOverviewVideos(max_id, filter);
|
||||||
try {
|
try {
|
||||||
Response<OverviewVideo> response = overviewVideoCall.execute();
|
Response<OverviewVideoData> response = overviewVideoCall.execute();
|
||||||
if (response.isSuccessful()) {
|
if (response.isSuccessful() && response.body() != null) {
|
||||||
apiResponse.setOverviewVideo(response.body());
|
apiResponse.setOverviewVideo(response.body().data);
|
||||||
} else {
|
} else {
|
||||||
Error error = new Error();
|
Error error = new Error();
|
||||||
error.setStatusCode(response.code());
|
error.setStatusCode(response.code());
|
||||||
|
@ -818,15 +820,10 @@ public class RetrofitPeertubeAPI {
|
||||||
* @param channelParams PlaylistParams
|
* @param channelParams PlaylistParams
|
||||||
* @return APIResponse
|
* @return APIResponse
|
||||||
*/
|
*/
|
||||||
public APIResponse createOrUpdateChannel(ChannelsVM.action apiAction, String channelId, ChannelParams channelParams, File thumbnail) {
|
public APIResponse createOrUpdateChannel(ChannelsVM.action apiAction, String channelId, ChannelParams channelParams) {
|
||||||
PeertubeService peertubeService = init();
|
PeertubeService peertubeService = init();
|
||||||
|
|
||||||
APIResponse apiResponse = new APIResponse();
|
APIResponse apiResponse = new APIResponse();
|
||||||
MultipartBody.Part body = null;
|
|
||||||
if (thumbnail != null) {
|
|
||||||
RequestBody requestFile = RequestBody.create(MediaType.parse("multipart/form-data"), thumbnail);
|
|
||||||
body = MultipartBody.Part.createFormData("image", thumbnail.getName(), requestFile);
|
|
||||||
}
|
|
||||||
try {
|
try {
|
||||||
if (apiAction == ChannelsVM.action.CREATE_CHANNEL) {
|
if (apiAction == ChannelsVM.action.CREATE_CHANNEL) {
|
||||||
Call<String> stringCall = peertubeService.addChannel(token, channelParams);
|
Call<String> stringCall = peertubeService.addChannel(token, channelParams);
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
package app.fedilab.fedilabtube.client.entities;
|
package app.fedilab.fedilabtube.client.data;
|
||||||
/* Copyright 2020 Thomas Schneider
|
/* Copyright 2020 Thomas Schneider
|
||||||
*
|
*
|
||||||
* This file is a part of TubeLab
|
* This file is a part of TubeLab
|
||||||
|
@ -18,40 +18,48 @@ import com.google.gson.annotations.SerializedName;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import app.fedilab.fedilabtube.client.data.ChannelData;
|
import app.fedilab.fedilabtube.client.entities.Item;
|
||||||
import app.fedilab.fedilabtube.client.data.VideoData;
|
|
||||||
|
|
||||||
public class OverviewVideo {
|
public class OverviewVideoData {
|
||||||
|
|
||||||
@SerializedName("categories")
|
@SerializedName("total")
|
||||||
private Categories categories;
|
public int total;
|
||||||
@SerializedName("channels")
|
@SerializedName("data")
|
||||||
private Channels channels;
|
public OverviewVideo data;
|
||||||
@SerializedName("tags")
|
|
||||||
private Tags tags;
|
|
||||||
|
|
||||||
public Categories getCategories() {
|
public static class OverviewVideo {
|
||||||
return categories;
|
@SerializedName("categories")
|
||||||
}
|
private Categories categories;
|
||||||
|
@SerializedName("channels")
|
||||||
|
private Channels channels;
|
||||||
|
@SerializedName("tags")
|
||||||
|
private Tags tags;
|
||||||
|
|
||||||
public void setCategories(Categories categories) {
|
public Categories getCategories() {
|
||||||
this.categories = categories;
|
return categories;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Channels getChannels() {
|
public void setCategories(Categories categories) {
|
||||||
return channels;
|
this.categories = categories;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setChannels(Channels channels) {
|
public Channels getChannels() {
|
||||||
this.channels = channels;
|
return channels;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setChannels(Channels channels) {
|
||||||
|
this.channels = channels;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Tags getTags() {
|
||||||
|
return tags;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTags(Tags tags) {
|
||||||
|
this.tags = tags;
|
||||||
|
}
|
||||||
|
|
||||||
public Tags getTags() {
|
|
||||||
return tags;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setTags(Tags tags) {
|
|
||||||
this.tags = tags;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class Categories {
|
public static class Categories {
|
|
@ -29,6 +29,8 @@ import java.util.List;
|
||||||
import app.fedilab.fedilabtube.client.data.AccountData.Account;
|
import app.fedilab.fedilabtube.client.data.AccountData.Account;
|
||||||
import app.fedilab.fedilabtube.client.entities.File;
|
import app.fedilab.fedilabtube.client.entities.File;
|
||||||
import app.fedilab.fedilabtube.client.entities.Item;
|
import app.fedilab.fedilabtube.client.entities.Item;
|
||||||
|
import app.fedilab.fedilabtube.client.entities.ItemStr;
|
||||||
|
import app.fedilab.fedilabtube.client.entities.StreamingPlaylists;
|
||||||
import app.fedilab.fedilabtube.helper.Helper;
|
import app.fedilab.fedilabtube.helper.Helper;
|
||||||
|
|
||||||
|
|
||||||
|
@ -41,17 +43,6 @@ public class VideoData {
|
||||||
public List<Video> data;
|
public List<Video> data;
|
||||||
|
|
||||||
public static class Video implements Parcelable {
|
public static class Video implements Parcelable {
|
||||||
public static final Creator<Video> CREATOR = new Creator<Video>() {
|
|
||||||
@Override
|
|
||||||
public Video createFromParcel(Parcel source) {
|
|
||||||
return new Video(source);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Video[] newArray(int size) {
|
|
||||||
return new Video[size];
|
|
||||||
}
|
|
||||||
};
|
|
||||||
@SerializedName("account")
|
@SerializedName("account")
|
||||||
private Account account;
|
private Account account;
|
||||||
@SerializedName("blacklisted")
|
@SerializedName("blacklisted")
|
||||||
|
@ -85,7 +76,7 @@ public class VideoData {
|
||||||
@SerializedName("isLocal")
|
@SerializedName("isLocal")
|
||||||
private boolean isLocal;
|
private boolean isLocal;
|
||||||
@SerializedName("language")
|
@SerializedName("language")
|
||||||
private Item language;
|
private ItemStr language;
|
||||||
@SerializedName("licence")
|
@SerializedName("licence")
|
||||||
private Item licence;
|
private Item licence;
|
||||||
@SerializedName("likes")
|
@SerializedName("likes")
|
||||||
|
@ -105,15 +96,15 @@ public class VideoData {
|
||||||
@SerializedName("state")
|
@SerializedName("state")
|
||||||
private Item state;
|
private Item state;
|
||||||
@SerializedName("streamingPlaylists")
|
@SerializedName("streamingPlaylists")
|
||||||
private String[] streamingPlaylists;
|
private List<StreamingPlaylists> streamingPlaylists;
|
||||||
@SerializedName("support")
|
@SerializedName("support")
|
||||||
private String support;
|
private String support;
|
||||||
@SerializedName("tags")
|
@SerializedName("tags")
|
||||||
private String[] tags;
|
private List<String> tags;
|
||||||
@SerializedName("thumbnailPath")
|
@SerializedName("thumbnailPath")
|
||||||
private String thumbnailPath;
|
private String thumbnailPath;
|
||||||
@SerializedName("trackerUrls")
|
@SerializedName("trackerUrls")
|
||||||
private String[] trackerUrls;
|
private List<String> trackerUrls;
|
||||||
@SerializedName("updatedAt")
|
@SerializedName("updatedAt")
|
||||||
private Date updatedAt;
|
private Date updatedAt;
|
||||||
@SerializedName("uuid")
|
@SerializedName("uuid")
|
||||||
|
@ -122,54 +113,13 @@ public class VideoData {
|
||||||
private int views;
|
private int views;
|
||||||
@SerializedName("waitTranscoding")
|
@SerializedName("waitTranscoding")
|
||||||
private boolean waitTranscoding;
|
private boolean waitTranscoding;
|
||||||
|
|
||||||
private String myRating;
|
private String myRating;
|
||||||
|
|
||||||
|
|
||||||
public Video() {
|
public Video() {
|
||||||
}
|
}
|
||||||
|
|
||||||
protected Video(Parcel in) {
|
|
||||||
this.account = in.readParcelable(Account.class.getClassLoader());
|
|
||||||
this.blacklisted = in.readByte() != 0;
|
|
||||||
this.blacklistedReason = in.readString();
|
|
||||||
this.category = in.readParcelable(Item.class.getClassLoader());
|
|
||||||
this.channel = in.readParcelable(ChannelData.Channel.class.getClassLoader());
|
|
||||||
this.commentsEnabled = in.readByte() != 0;
|
|
||||||
long tmpCreatedAt = in.readLong();
|
|
||||||
this.createdAt = tmpCreatedAt == -1 ? null : new Date(tmpCreatedAt);
|
|
||||||
this.description = in.readString();
|
|
||||||
this.descriptionPath = in.readString();
|
|
||||||
this.dislikes = in.readInt();
|
|
||||||
this.downloadEnabled = in.readByte() != 0;
|
|
||||||
this.duration = in.readInt();
|
|
||||||
this.embedPath = in.readString();
|
|
||||||
this.files = new ArrayList<>();
|
|
||||||
in.readList(this.files, File.class.getClassLoader());
|
|
||||||
this.id = in.readString();
|
|
||||||
this.isLocal = in.readByte() != 0;
|
|
||||||
this.language = in.readParcelable(Item.class.getClassLoader());
|
|
||||||
this.licence = in.readParcelable(Item.class.getClassLoader());
|
|
||||||
this.likes = in.readInt();
|
|
||||||
this.name = in.readString();
|
|
||||||
this.nsfw = in.readByte() != 0;
|
|
||||||
long tmpOriginallyPublishedAt = in.readLong();
|
|
||||||
this.originallyPublishedAt = tmpOriginallyPublishedAt == -1 ? null : new Date(tmpOriginallyPublishedAt);
|
|
||||||
this.previewPath = in.readString();
|
|
||||||
this.privacy = in.readParcelable(Item.class.getClassLoader());
|
|
||||||
long tmpPublishedAt = in.readLong();
|
|
||||||
this.publishedAt = tmpPublishedAt == -1 ? null : new Date(tmpPublishedAt);
|
|
||||||
this.state = in.readParcelable(Item.class.getClassLoader());
|
|
||||||
this.streamingPlaylists = in.createStringArray();
|
|
||||||
this.support = in.readString();
|
|
||||||
this.tags = in.createStringArray();
|
|
||||||
this.thumbnailPath = in.readString();
|
|
||||||
this.trackerUrls = in.createStringArray();
|
|
||||||
long tmpUpdatedAt = in.readLong();
|
|
||||||
this.updatedAt = tmpUpdatedAt == -1 ? null : new Date(tmpUpdatedAt);
|
|
||||||
this.uuid = in.readString();
|
|
||||||
this.views = in.readInt();
|
|
||||||
this.waitTranscoding = in.readByte() != 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getFileUrl(String resolution, Context context) {
|
public String getFileUrl(String resolution, Context context) {
|
||||||
|
|
||||||
|
@ -249,8 +199,8 @@ public class VideoData {
|
||||||
return category;
|
return category;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setCategory(Item item) {
|
public void setCategory(Item category) {
|
||||||
this.category = item;
|
this.category = category;
|
||||||
}
|
}
|
||||||
|
|
||||||
public ChannelData.Channel getChannel() {
|
public ChannelData.Channel getChannel() {
|
||||||
|
@ -333,14 +283,6 @@ public class VideoData {
|
||||||
this.files = files;
|
this.files = files;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getMyRating() {
|
|
||||||
return myRating;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setMyRating(String myRating) {
|
|
||||||
this.myRating = myRating;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getId() {
|
public String getId() {
|
||||||
return id;
|
return id;
|
||||||
}
|
}
|
||||||
|
@ -357,11 +299,11 @@ public class VideoData {
|
||||||
isLocal = local;
|
isLocal = local;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Item getLanguage() {
|
public ItemStr getLanguage() {
|
||||||
return language;
|
return language;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setLanguage(Item language) {
|
public void setLanguage(ItemStr language) {
|
||||||
this.language = language;
|
this.language = language;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -437,11 +379,11 @@ public class VideoData {
|
||||||
this.state = state;
|
this.state = state;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String[] getStreamingPlaylists() {
|
public List<StreamingPlaylists> getStreamingPlaylists() {
|
||||||
return streamingPlaylists;
|
return streamingPlaylists;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setStreamingPlaylists(String[] streamingPlaylists) {
|
public void setStreamingPlaylists(List<StreamingPlaylists> streamingPlaylists) {
|
||||||
this.streamingPlaylists = streamingPlaylists;
|
this.streamingPlaylists = streamingPlaylists;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -453,11 +395,11 @@ public class VideoData {
|
||||||
this.support = support;
|
this.support = support;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String[] getTags() {
|
public List<String> getTags() {
|
||||||
return tags;
|
return tags;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setTags(String[] tags) {
|
public void setTags(List<String> tags) {
|
||||||
this.tags = tags;
|
this.tags = tags;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -469,11 +411,11 @@ public class VideoData {
|
||||||
this.thumbnailPath = thumbnailPath;
|
this.thumbnailPath = thumbnailPath;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String[] getTrackerUrls() {
|
public List<String> getTrackerUrls() {
|
||||||
return trackerUrls;
|
return trackerUrls;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setTrackerUrls(String[] trackerUrls) {
|
public void setTrackerUrls(List<String> trackerUrls) {
|
||||||
this.trackerUrls = trackerUrls;
|
this.trackerUrls = trackerUrls;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -509,6 +451,15 @@ public class VideoData {
|
||||||
this.waitTranscoding = waitTranscoding;
|
this.waitTranscoding = waitTranscoding;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getMyRating() {
|
||||||
|
return myRating;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMyRating(String myRating) {
|
||||||
|
this.myRating = myRating;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int describeContents() {
|
public int describeContents() {
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -542,16 +493,74 @@ public class VideoData {
|
||||||
dest.writeParcelable(this.privacy, flags);
|
dest.writeParcelable(this.privacy, flags);
|
||||||
dest.writeLong(this.publishedAt != null ? this.publishedAt.getTime() : -1);
|
dest.writeLong(this.publishedAt != null ? this.publishedAt.getTime() : -1);
|
||||||
dest.writeParcelable(this.state, flags);
|
dest.writeParcelable(this.state, flags);
|
||||||
dest.writeStringArray(this.streamingPlaylists);
|
dest.writeList(this.streamingPlaylists);
|
||||||
dest.writeString(this.support);
|
dest.writeString(this.support);
|
||||||
dest.writeStringArray(this.tags);
|
dest.writeStringList(this.tags);
|
||||||
dest.writeString(this.thumbnailPath);
|
dest.writeString(this.thumbnailPath);
|
||||||
dest.writeStringArray(this.trackerUrls);
|
dest.writeStringList(this.trackerUrls);
|
||||||
dest.writeLong(this.updatedAt != null ? this.updatedAt.getTime() : -1);
|
dest.writeLong(this.updatedAt != null ? this.updatedAt.getTime() : -1);
|
||||||
dest.writeString(this.uuid);
|
dest.writeString(this.uuid);
|
||||||
dest.writeInt(this.views);
|
dest.writeInt(this.views);
|
||||||
dest.writeByte(this.waitTranscoding ? (byte) 1 : (byte) 0);
|
dest.writeByte(this.waitTranscoding ? (byte) 1 : (byte) 0);
|
||||||
|
dest.writeString(this.myRating);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected Video(Parcel in) {
|
||||||
|
this.account = in.readParcelable(Account.class.getClassLoader());
|
||||||
|
this.blacklisted = in.readByte() != 0;
|
||||||
|
this.blacklistedReason = in.readString();
|
||||||
|
this.category = in.readParcelable(Item.class.getClassLoader());
|
||||||
|
this.channel = in.readParcelable(ChannelData.Channel.class.getClassLoader());
|
||||||
|
this.commentsEnabled = in.readByte() != 0;
|
||||||
|
long tmpCreatedAt = in.readLong();
|
||||||
|
this.createdAt = tmpCreatedAt == -1 ? null : new Date(tmpCreatedAt);
|
||||||
|
this.description = in.readString();
|
||||||
|
this.descriptionPath = in.readString();
|
||||||
|
this.dislikes = in.readInt();
|
||||||
|
this.downloadEnabled = in.readByte() != 0;
|
||||||
|
this.duration = in.readInt();
|
||||||
|
this.embedPath = in.readString();
|
||||||
|
this.files = new ArrayList<>();
|
||||||
|
in.readList(this.files, File.class.getClassLoader());
|
||||||
|
this.id = in.readString();
|
||||||
|
this.isLocal = in.readByte() != 0;
|
||||||
|
this.language = in.readParcelable(ItemStr.class.getClassLoader());
|
||||||
|
this.licence = in.readParcelable(Item.class.getClassLoader());
|
||||||
|
this.likes = in.readInt();
|
||||||
|
this.name = in.readString();
|
||||||
|
this.nsfw = in.readByte() != 0;
|
||||||
|
long tmpOriginallyPublishedAt = in.readLong();
|
||||||
|
this.originallyPublishedAt = tmpOriginallyPublishedAt == -1 ? null : new Date(tmpOriginallyPublishedAt);
|
||||||
|
this.previewPath = in.readString();
|
||||||
|
this.privacy = in.readParcelable(Item.class.getClassLoader());
|
||||||
|
long tmpPublishedAt = in.readLong();
|
||||||
|
this.publishedAt = tmpPublishedAt == -1 ? null : new Date(tmpPublishedAt);
|
||||||
|
this.state = in.readParcelable(Item.class.getClassLoader());
|
||||||
|
this.streamingPlaylists = new ArrayList<>();
|
||||||
|
in.readList(this.streamingPlaylists, StreamingPlaylists.class.getClassLoader());
|
||||||
|
this.support = in.readString();
|
||||||
|
this.tags = in.createStringArrayList();
|
||||||
|
this.thumbnailPath = in.readString();
|
||||||
|
this.trackerUrls = in.createStringArrayList();
|
||||||
|
long tmpUpdatedAt = in.readLong();
|
||||||
|
this.updatedAt = tmpUpdatedAt == -1 ? null : new Date(tmpUpdatedAt);
|
||||||
|
this.uuid = in.readString();
|
||||||
|
this.views = in.readInt();
|
||||||
|
this.waitTranscoding = in.readByte() != 0;
|
||||||
|
this.myRating = in.readString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static final Creator<Video> CREATOR = new Creator<Video>() {
|
||||||
|
@Override
|
||||||
|
public Video createFromParcel(Parcel source) {
|
||||||
|
return new Video(source);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Video[] newArray(int size) {
|
||||||
|
return new Video[size];
|
||||||
|
}
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class VideoImport {
|
public static class VideoImport {
|
||||||
|
|
|
@ -0,0 +1,78 @@
|
||||||
|
package app.fedilab.fedilabtube.client.entities;
|
||||||
|
/* Copyright 2020 Thomas Schneider
|
||||||
|
*
|
||||||
|
* This file is a part of TubeLab
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify it under the terms of the
|
||||||
|
* GNU General Public License as published by the Free Software Foundation; either version 3 of the
|
||||||
|
* License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* TubeLab is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
|
||||||
|
* the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
|
||||||
|
* Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License along with TubeLab; if not,
|
||||||
|
* see <http://www.gnu.org/licenses>. */
|
||||||
|
|
||||||
|
import android.os.Parcel;
|
||||||
|
import android.os.Parcelable;
|
||||||
|
|
||||||
|
import com.google.gson.annotations.SerializedName;
|
||||||
|
|
||||||
|
@SuppressWarnings("unused")
|
||||||
|
public class ItemStr implements Parcelable {
|
||||||
|
|
||||||
|
@SerializedName("id")
|
||||||
|
private String id;
|
||||||
|
@SerializedName("label")
|
||||||
|
private String label;
|
||||||
|
|
||||||
|
public String getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(String id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public String getLabel() {
|
||||||
|
return label;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setLabel(String label) {
|
||||||
|
this.label = label;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int describeContents() {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void writeToParcel(Parcel dest, int flags) {
|
||||||
|
dest.writeString(this.id);
|
||||||
|
dest.writeString(this.label);
|
||||||
|
}
|
||||||
|
|
||||||
|
public ItemStr() {
|
||||||
|
}
|
||||||
|
|
||||||
|
protected ItemStr(Parcel in) {
|
||||||
|
this.id = in.readString();
|
||||||
|
this.label = in.readString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static final Creator<ItemStr> CREATOR = new Creator<ItemStr>() {
|
||||||
|
@Override
|
||||||
|
public ItemStr createFromParcel(Parcel source) {
|
||||||
|
return new ItemStr(source);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ItemStr[] newArray(int size) {
|
||||||
|
return new ItemStr[size];
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
|
@ -0,0 +1,96 @@
|
||||||
|
package app.fedilab.fedilabtube.client.entities;
|
||||||
|
/* Copyright 2020 Thomas Schneider
|
||||||
|
*
|
||||||
|
* This file is a part of TubeLab
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify it under the terms of the
|
||||||
|
* GNU General Public License as published by the Free Software Foundation; either version 3 of the
|
||||||
|
* License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* TubeLab is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
|
||||||
|
* the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
|
||||||
|
* Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License along with TubeLab; if not,
|
||||||
|
* see <http://www.gnu.org/licenses>. */
|
||||||
|
import com.google.gson.annotations.SerializedName;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@SuppressWarnings("unused")
|
||||||
|
public class StreamingPlaylists {
|
||||||
|
|
||||||
|
@SerializedName("id")
|
||||||
|
private String id;
|
||||||
|
@SerializedName("type")
|
||||||
|
private int type;
|
||||||
|
@SerializedName("playlistUrl")
|
||||||
|
private String playlistUrl;
|
||||||
|
@SerializedName("segmentsSha256Url")
|
||||||
|
private String segmentsSha256Url;
|
||||||
|
@SerializedName("files")
|
||||||
|
private List<File> files;
|
||||||
|
@SerializedName("redundancies")
|
||||||
|
private List<Redundancies> redundancies;
|
||||||
|
|
||||||
|
public String getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(String id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getType() {
|
||||||
|
return type;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setType(int type) {
|
||||||
|
this.type = type;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPlaylistUrl() {
|
||||||
|
return playlistUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPlaylistUrl(String playlistUrl) {
|
||||||
|
this.playlistUrl = playlistUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getSegmentsSha256Url() {
|
||||||
|
return segmentsSha256Url;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSegmentsSha256Url(String segmentsSha256Url) {
|
||||||
|
this.segmentsSha256Url = segmentsSha256Url;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<File> getFiles() {
|
||||||
|
return files;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFiles(List<File> files) {
|
||||||
|
this.files = files;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<Redundancies> getRedundancies() {
|
||||||
|
return redundancies;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRedundancies(List<Redundancies> redundancies) {
|
||||||
|
this.redundancies = redundancies;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static class Redundancies{
|
||||||
|
@SerializedName("baseUrl")
|
||||||
|
private String baseUrl;
|
||||||
|
|
||||||
|
public String getBaseUrl() {
|
||||||
|
return baseUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBaseUrl(String baseUrl) {
|
||||||
|
this.baseUrl = baseUrl;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -35,7 +35,7 @@ public class VideoParams {
|
||||||
@SerializedName("downloadEnabled")
|
@SerializedName("downloadEnabled")
|
||||||
private boolean downloadEnabled;
|
private boolean downloadEnabled;
|
||||||
@SerializedName("language")
|
@SerializedName("language")
|
||||||
private int language;
|
private String language;
|
||||||
@SerializedName("licence")
|
@SerializedName("licence")
|
||||||
private String licence;
|
private String licence;
|
||||||
@SerializedName("nsfw")
|
@SerializedName("nsfw")
|
||||||
|
@ -99,11 +99,11 @@ public class VideoParams {
|
||||||
this.downloadEnabled = downloadEnabled;
|
this.downloadEnabled = downloadEnabled;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getLanguage() {
|
public String getLanguage() {
|
||||||
return language;
|
return language;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setLanguage(int language) {
|
public void setLanguage(String language) {
|
||||||
this.language = language;
|
this.language = language;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -76,7 +76,7 @@ public class PeertubeAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
|
||||||
Helper.loadGiF(context, account.getAvatar().getPath(), holder.peertube_profile);
|
Helper.loadGiF(context, account.getAvatar().getPath(), holder.peertube_profile);
|
||||||
} else {
|
} else {
|
||||||
holder.peertube_account_name.setText(peertube.getChannel().getAcct());
|
holder.peertube_account_name.setText(peertube.getChannel().getAcct());
|
||||||
Helper.loadGiF(context, peertube.getChannel().getAvatar().getPath(), holder.peertube_profile);
|
Helper.loadGiF(context, peertube.getChannel().getAvatar()!=null?peertube.getChannel().getAvatar().getPath():null, holder.peertube_profile);
|
||||||
}
|
}
|
||||||
holder.peertube_title.setText(peertube.getName());
|
holder.peertube_title.setText(peertube.getName());
|
||||||
holder.peertube_duration.setText(Helper.secondsToString(peertube.getDuration()));
|
holder.peertube_duration.setText(Helper.secondsToString(peertube.getDuration()));
|
||||||
|
@ -101,9 +101,9 @@ public class PeertubeAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
|
||||||
}
|
}
|
||||||
|
|
||||||
if (peertube.getTags() != null) {
|
if (peertube.getTags() != null) {
|
||||||
String[] type = peertube.getTags();
|
List<String> type = peertube.getTags();
|
||||||
if (type.length > 0) {
|
if (type.size() > 0) {
|
||||||
holder.header_title.setText(String.format("#%s", peertube.getTags()[0]));
|
holder.header_title.setText(String.format("#%s", peertube.getTags().get(0)));
|
||||||
holder.header_title.setVisibility(View.VISIBLE);
|
holder.header_title.setVisibility(View.VISIBLE);
|
||||||
} else {
|
} else {
|
||||||
holder.header_title.setVisibility(View.GONE);
|
holder.header_title.setVisibility(View.GONE);
|
||||||
|
|
|
@ -224,9 +224,9 @@ public class DisplayChannelsFragment extends Fragment implements ChannelListAdap
|
||||||
}
|
}
|
||||||
new Thread(() -> {
|
new Thread(() -> {
|
||||||
if (oldChannelValues == null) {
|
if (oldChannelValues == null) {
|
||||||
new RetrofitPeertubeAPI(context).createOrUpdateChannel(ChannelsVM.action.CREATE_CHANNEL, null, channelCreation, null);
|
new RetrofitPeertubeAPI(context).createOrUpdateChannel(ChannelsVM.action.CREATE_CHANNEL, null, channelCreation);
|
||||||
} else {
|
} else {
|
||||||
new RetrofitPeertubeAPI(context).createOrUpdateChannel(ChannelsVM.action.UPDATE_CHANNEL, channelCreation.getName() + "@" + Helper.getLiveInstance(context), channelCreation, null);
|
new RetrofitPeertubeAPI(context).createOrUpdateChannel(ChannelsVM.action.UPDATE_CHANNEL, channelCreation.getName() + "@" + Helper.getLiveInstance(context), channelCreation);
|
||||||
}
|
}
|
||||||
Handler mainHandler = new Handler(Looper.getMainLooper());
|
Handler mainHandler = new Handler(Looper.getMainLooper());
|
||||||
Runnable myRunnable = () -> {
|
Runnable myRunnable = () -> {
|
||||||
|
|
Loading…
Reference in New Issue