|
|
|
|
@ -4,6 +4,7 @@ import android.os.Parcel; |
|
|
|
|
import android.os.Parcelable; |
|
|
|
|
import android.text.Html; |
|
|
|
|
import android.text.TextUtils; |
|
|
|
|
import android.util.Log; |
|
|
|
|
import android.view.View; |
|
|
|
|
|
|
|
|
|
import androidx.annotation.Nullable; |
|
|
|
|
@ -26,6 +27,7 @@ import java.util.ArrayList; |
|
|
|
|
import java.util.Collections; |
|
|
|
|
import java.util.List; |
|
|
|
|
import java.util.Objects; |
|
|
|
|
import java.util.stream.IntStream; |
|
|
|
|
|
|
|
|
|
@Root(strict = false) |
|
|
|
|
public class Vod implements Parcelable, Diffable<Vod> { |
|
|
|
|
@ -115,19 +117,19 @@ public class Vod implements Parcelable, Diffable<Vod> { |
|
|
|
|
public Vod() { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public String getVodId() { |
|
|
|
|
public String getId() { |
|
|
|
|
return TextUtils.isEmpty(vodId) ? "" : vodId.trim(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public void setVodId(String vodId) { |
|
|
|
|
public void setId(String vodId) { |
|
|
|
|
this.vodId = vodId; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public String getVodName() { |
|
|
|
|
public String getName() { |
|
|
|
|
return TextUtils.isEmpty(vodName) ? "" : Html.fromHtml(vodName, Html.FROM_HTML_MODE_LEGACY).toString().trim(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public void setVodName(String vodName) { |
|
|
|
|
public void setName(String vodName) { |
|
|
|
|
this.vodName = vodName; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -135,59 +137,67 @@ public class Vod implements Parcelable, Diffable<Vod> { |
|
|
|
|
return TextUtils.isEmpty(typeName) ? "" : typeName.trim(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public String getVodPic() { |
|
|
|
|
public String getPic() { |
|
|
|
|
return TextUtils.isEmpty(vodPic) ? "" : vodPic.trim(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public void setVodPic(String vodPic) { |
|
|
|
|
public void setPic(String vodPic) { |
|
|
|
|
this.vodPic = vodPic; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public String getVodRemarks() { |
|
|
|
|
public String getRemarks() { |
|
|
|
|
return TextUtils.isEmpty(vodRemarks) ? "" : vodRemarks.trim(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public String getVodYear() { |
|
|
|
|
public String getYear() { |
|
|
|
|
return TextUtils.isEmpty(vodYear) ? "" : vodYear.trim(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public String getVodArea() { |
|
|
|
|
public String getArea() { |
|
|
|
|
return TextUtils.isEmpty(vodArea) ? "" : vodArea.trim(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public String getVodDirector() { |
|
|
|
|
public String getDirector() { |
|
|
|
|
return TextUtils.isEmpty(vodDirector) ? "" : vodDirector.trim(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public void setVodDirector(String vodDirector) { |
|
|
|
|
public void setDirector(String vodDirector) { |
|
|
|
|
this.vodDirector = vodDirector; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public String getVodActor() { |
|
|
|
|
public String getActor() { |
|
|
|
|
return TextUtils.isEmpty(vodActor) ? "" : vodActor.trim(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public String getVodContent() { |
|
|
|
|
public String getContent() { |
|
|
|
|
return TextUtils.isEmpty(vodContent) ? "" : Util.clean(vodContent); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public void setVodContent(String vodContent) { |
|
|
|
|
public void setContent(String vodContent) { |
|
|
|
|
this.vodContent = vodContent; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public String getVodPlayFrom() { |
|
|
|
|
public String getPlayFrom() { |
|
|
|
|
return TextUtils.isEmpty(vodPlayFrom) ? "" : vodPlayFrom; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public String getVodPlayUrl() { |
|
|
|
|
public void setPlayFrom(String vodPlayFrom) { |
|
|
|
|
this.vodPlayFrom = vodPlayFrom; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public String getPlayUrl() { |
|
|
|
|
return TextUtils.isEmpty(vodPlayUrl) ? "" : vodPlayUrl; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public String getVodWallpaper() { |
|
|
|
|
public void setPlayUrl(String vodPlayUrl) { |
|
|
|
|
this.vodPlayUrl = vodPlayUrl; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public String getWallpaper() { |
|
|
|
|
return TextUtils.isEmpty(vodWallpaper) ? "" : vodWallpaper; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public String getVodTag() { |
|
|
|
|
public String getTag() { |
|
|
|
|
return TextUtils.isEmpty(vodTag) ? "" : vodTag; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -215,11 +225,11 @@ public class Vod implements Parcelable, Diffable<Vod> { |
|
|
|
|
return ratio; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public List<Flag> getVodFlags() { |
|
|
|
|
public List<Flag> getFlags() { |
|
|
|
|
return vodFlags = vodFlags == null ? new ArrayList<>() : vodFlags; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public void setVodFlags(List<Flag> vodFlags) { |
|
|
|
|
public void setFlags(List<Flag> vodFlags) { |
|
|
|
|
this.vodFlags = vodFlags; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -244,19 +254,19 @@ public class Vod implements Parcelable, Diffable<Vod> { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public int getYearVisible() { |
|
|
|
|
return getSite() != null || getVodYear().length() < 4 ? View.GONE : View.VISIBLE; |
|
|
|
|
return getSite() != null || getYear().length() < 4 ? View.GONE : View.VISIBLE; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public int getNameVisible() { |
|
|
|
|
return getVodName().isEmpty() ? View.GONE : View.VISIBLE; |
|
|
|
|
return getName().isEmpty() ? View.GONE : View.VISIBLE; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public int getRemarkVisible() { |
|
|
|
|
return getVodRemarks().isEmpty() ? View.GONE : View.VISIBLE; |
|
|
|
|
return getRemarks().isEmpty() ? View.GONE : View.VISIBLE; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public boolean isFolder() { |
|
|
|
|
return "folder".equals(getVodTag()) || getCate() != null; |
|
|
|
|
return "folder".equals(getTag()) || getCate() != null; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public boolean isAction() { |
|
|
|
|
@ -267,14 +277,22 @@ public class Vod implements Parcelable, Diffable<Vod> { |
|
|
|
|
return getStyle() != null ? getStyle() : style != null ? style : Style.rect(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public String getVodPic(String pic) { |
|
|
|
|
if (getVodPic().isEmpty()) setVodPic(pic); |
|
|
|
|
return getVodPic(); |
|
|
|
|
public String getPic(String pic) { |
|
|
|
|
if (getPic().isEmpty()) setPic(pic); |
|
|
|
|
return getPic(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public String getVodName(String name) { |
|
|
|
|
if (getVodName().isEmpty()) setVodName(name); |
|
|
|
|
return getVodName(); |
|
|
|
|
public String getName(String name) { |
|
|
|
|
if (getName().isEmpty()) setName(name); |
|
|
|
|
return getName(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public Vod setFlags() { |
|
|
|
|
String[] playUrls = getPlayUrl().split("\\$\\$\\$"); |
|
|
|
|
String[] playFlags = getPlayFrom().split("\\$\\$\\$"); |
|
|
|
|
if (!getFlags().isEmpty()) for (Flag item : getFlags()) item.setEpisodes(item.getUrls()); |
|
|
|
|
else IntStream.range(0, playFlags.length).filter(i -> !playFlags[i].trim().isEmpty() && i < playUrls.length && !TextUtils.isEmpty(playUrls[i])).mapToObj(i -> Flag.create(playFlags[i].trim(), playUrls[i])).forEach(getFlags()::add); |
|
|
|
|
return this; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public Vod trans() { |
|
|
|
|
@ -289,31 +307,16 @@ public class Vod implements Parcelable, Diffable<Vod> { |
|
|
|
|
return this; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public void setVodFlags() { |
|
|
|
|
String[] playFlags = getVodPlayFrom().split("\\$\\$\\$"); |
|
|
|
|
String[] playUrls = getVodPlayUrl().split("\\$\\$\\$"); |
|
|
|
|
for (int i = 0; i < playFlags.length; i++) { |
|
|
|
|
if (playFlags[i].isEmpty() || i >= playUrls.length) continue; |
|
|
|
|
Flag item = Flag.create(playFlags[i].trim()); |
|
|
|
|
item.createEpisode(playUrls[i]); |
|
|
|
|
getVodFlags().add(item); |
|
|
|
|
} |
|
|
|
|
for (Flag item : getVodFlags()) { |
|
|
|
|
if (item.getUrls() == null) continue; |
|
|
|
|
item.createEpisode(item.getUrls()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public boolean equals(@Nullable Object obj) { |
|
|
|
|
if (this == obj) return true; |
|
|
|
|
if (!(obj instanceof Vod it)) return false; |
|
|
|
|
return !getVodId().isEmpty() && !it.getVodId().isEmpty() ? getVodId().equals(it.getVodId()) : getVodName().equals(it.getVodName()); |
|
|
|
|
return !getId().isEmpty() && !it.getId().isEmpty() ? getId().equals(it.getId()) : getName().equals(it.getName()); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public int hashCode() { |
|
|
|
|
return !getVodId().isEmpty() ? getVodId().hashCode() : getVodName().hashCode(); |
|
|
|
|
return !getId().isEmpty() ? getId().hashCode() : getName().hashCode(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
@ -389,6 +392,6 @@ public class Vod implements Parcelable, Diffable<Vod> { |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public boolean isSameContent(Vod other) { |
|
|
|
|
return getVodName().equals(other.getVodName()) && getVodPic().equals(other.getVodPic()) && getVodRemarks().equals(other.getVodRemarks()) && Objects.equals(getSite(), other.getSite()); |
|
|
|
|
return getName().equals(other.getName()) && getPic().equals(other.getPic()) && getRemarks().equals(other.getRemarks()) && Objects.equals(getSite(), other.getSite()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|