package org.softeg.slartus.forpdaplus.video.api;
import android.os.Parcel;
import android.os.Parcelable;
import android.text.TextUtils;
import java.io.Serializable;
import java.util.ArrayList;
public class VideoItem implements Parcelable, Serializable {
private CharSequence id;
private CharSequence vId;
private CharSequence previewImgUrl;
private CharSequence channelUrl;
private CharSequence dateString;
private CharSequence channelTitle;
private CharSequence title;
private CharSequence url;
private ArrayList<Quality> qualities = new ArrayList<>();
private String defaultBitrate;
public VideoItem() {
}
public CharSequence getTitle() {
return title;
}
public void setTitle(CharSequence title) {
this.title = title;
}
public CharSequence getId() {
return id;
}
public void setId(CharSequence id) {
this.id = id;
}
public CharSequence getUrl() {
return url;
}
public void setUrl(CharSequence url) {
this.url = url;
}
public static final Creator<VideoItem> CREATOR
= new Creator<VideoItem>() {
public VideoItem createFromParcel(Parcel in) {
return new VideoItem(in);
}
public VideoItem[] newArray(int size) {
return new VideoItem[size];
}
};
protected VideoItem(Parcel parcel) {
id = parcel.readString();
vId = parcel.readString();
previewImgUrl = parcel.readString();
channelUrl = parcel.readString();
dateString = parcel.readString();
channelTitle = parcel.readString();
title = parcel.readString();
url = parcel.readString();
defaultBitrate = parcel.readString();
int arraysCount = parcel.readInt();
for (int i = 0; i < arraysCount; i++) {
qualities.add(new Quality(parcel));
}
}
@Override
public int describeContents() {
return 0;
}
public static String getValueOrEmpty(CharSequence str) {
if (str == null)
return null;
return str.toString();
}
@Override
public void writeToParcel(Parcel parcel, int i) {
parcel.writeString(getValueOrEmpty(id));
parcel.writeString(getValueOrEmpty(vId));
parcel.writeString(getValueOrEmpty(previewImgUrl));
parcel.writeString(getValueOrEmpty(channelUrl));
parcel.writeString(getValueOrEmpty(dateString));
parcel.writeString(getValueOrEmpty(channelTitle));
parcel.writeString(getValueOrEmpty(title));
parcel.writeString(getValueOrEmpty(url));
parcel.writeString(getValueOrEmpty(defaultBitrate));
parcel.writeInt(getQualities().size());
for (Quality item : getQualities()) {
item.writeToParcel(parcel, i);
}
}
public CharSequence getDefaultVideoUrl() {
return !TextUtils.isEmpty(defaultBitrate)?defaultBitrate: getQualities().get(0).getFileName();
}
public static String getFilePath(CharSequence fileName) {
return fileName.toString();
}
public ArrayList<Quality> getQualities() {
return qualities;
}
public CharSequence getvId() {
return vId;
}
public void setDefaultBitrate(String defaultBitrate) {
this.defaultBitrate = defaultBitrate;
}
}