package com.gapp.gvoa.datatype;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import android.os.Parcel;
import android.os.Parcelable;
public class RssItem implements Parcelable,Comparable<RssItem> {
public static Integer E_INIT=0;
public static Integer E_DOWN_TXT_OK=1;
public static Integer E_DOWN_TXT_FAIL=2;
public static Integer E_PARSE_TXT_FAIL=3;
public static Integer E_PARSE_TXT_OK=4;
public static Integer E_DOWN_MP3_FAIL=5;
public static Integer E_DOWN_MP3_OK=6;
private Integer id = 0;
private Integer feedID = null;
private String title = null;
private String pubDate = null;
private String link = null;
private String description = null;
private String fullText = null;
private String mp3url = null;
private String localmp3 = null;
private Integer status=E_INIT;
public RssItem() {
}
public RssItem(Integer id, Integer feedID, String title, String sdate,
String link, String description, String fullText, String mp3url, String localmp3,Integer status) {
super();
this.id = id;
this.feedID = feedID;
this.title = title;
this.pubDate = sdate;
this.link = link;
this.description = description;
this.fullText = fullText;
this.mp3url = mp3url;
this.localmp3 = localmp3;
this.status = status;
}
public static final Parcelable.Creator<RssItem> CREATOR = new Creator<RssItem>() {
public RssItem createFromParcel(Parcel source) {
RssItem rssItem = new RssItem(source);
return rssItem;
}
public RssItem[] newArray(int size) {
return new RssItem[size];
}
};
public void updateValues(RssItem newItem)
{
id=newItem.id;
feedID=newItem.feedID;
title = newItem.title;
pubDate = newItem.pubDate;
link = newItem.link;
description = newItem.description;
fullText = newItem.fullText;
mp3url = newItem.mp3url;
localmp3=newItem.localmp3;
status = newItem.status;
}
private RssItem(Parcel in) {
id = in.readInt();
feedID = in.readInt();
title = in.readString();
pubDate = in.readString();
link = in.readString();
description = in.readString();
fullText = in.readString();
mp3url = in.readString();
localmp3=in.readString();
status = in.readInt();
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public String getLink() {
return link;
}
public void setLink(String link) {
this.link = link;
}
public String getFullText() {
return fullText;
}
public void setFullText(String fullText) {
this.fullText = fullText;
}
public String getPubDate() {
return pubDate;
}
public void setPubDate(String sdate) {
this.pubDate = sdate;
}
public Integer getFeedID() {
return feedID;
}
public void setFeedID(Integer feedID) {
this.feedID = feedID;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String toString()
{
return id+","+pubDate+","+title+","+status;
}
public String getMp3url() {
return mp3url;
}
public void setMp3url(String mp3url) {
this.mp3url = mp3url;
}
public String getLocalmp3() {
return localmp3;
}
public void setLocalmp3(String localmp3) {
this.localmp3 = localmp3;
}
public Integer getStatus() {
return status;
}
public void setStatus(Integer status) {
this.status = status;
}
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeInt(id);
dest.writeInt(feedID);
dest.writeString(title);
dest.writeString(pubDate);
dest.writeString(link);
dest.writeString(description);
dest.writeString(fullText);
dest.writeString(mp3url);
dest.writeString(localmp3);
dest.writeInt(status);
}
@Override
public int compareTo(RssItem another) {
if(this.id==another.id
||this.link==another.link)
{
return 0;
}
SimpleDateFormat fmt =new SimpleDateFormat("yyyy-MM-dd");
try {
Date date1 = fmt.parse(this.pubDate);
Date date2 = fmt.parse(another.pubDate);
return date1.compareTo(date2);
} catch (ParseException e) {
e.printStackTrace();
}
return this.title.compareTo(another.title);
}
}