package com.jasonchen.microlang.beans;
import android.os.Parcel;
import android.os.Parcelable;
import android.text.Html;
import android.text.SpannableString;
import android.text.TextUtils;
import com.jasonchen.microlang.utils.ObjectToStringUtility;
import com.jasonchen.microlang.utils.TimeLineUtility;
import com.jasonchen.microlang.utils.TimeUtility;
/**
* jasonchen
* 2015/04/10
*/
public class CommentBean extends ItemBean implements Parcelable {
private String created_at;
private long id;
private String idstr;
private String text;
private String source;
private String mid;
private long mills;
private UserBean user;
private MessageBean status;
private CommentBean reply_comment;
private String sourceString;
private boolean isMiddleUnreadItem = false;
private transient SpannableString listViewSpannableString;
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeString(created_at);
dest.writeLong(id);
dest.writeString(idstr);
dest.writeString(text);
dest.writeString(source);
dest.writeString(mid);
dest.writeLong(mills);
dest.writeParcelable(user, flags);
dest.writeParcelable(status, flags);
dest.writeParcelable(reply_comment, flags);
dest.writeString(sourceString);
dest.writeBooleanArray(new boolean[]{this.isMiddleUnreadItem});
}
public static final Creator<CommentBean> CREATOR =
new Creator<CommentBean>() {
public CommentBean createFromParcel(Parcel in) {
CommentBean commentBean = new CommentBean();
commentBean.created_at = in.readString();
commentBean.id = in.readLong();
commentBean.idstr = in.readString();
commentBean.text = in.readString();
commentBean.source = in.readString();
commentBean.mid = in.readString();
commentBean.mills = in.readLong();
commentBean.user = in.readParcelable(UserBean.class.getClassLoader());
commentBean.status = in.readParcelable(MessageBean.class.getClassLoader());
commentBean.reply_comment = in
.readParcelable(CommentBean.class.getClassLoader());
commentBean.sourceString = in.readString();
boolean[] booleans = new boolean[1];
in.readBooleanArray(booleans);
commentBean.isMiddleUnreadItem = booleans[0];
return commentBean;
}
public CommentBean[] newArray(int size) {
return new CommentBean[size];
}
};
public CommentBean getReply_comment() {
return reply_comment;
}
public void setReply_comment(CommentBean reply_comment) {
this.reply_comment = reply_comment;
}
//comment timeline show comment
public SpannableString getListViewSpannableString() {
if (!TextUtils.isEmpty(listViewSpannableString)) {
return listViewSpannableString;
} else {
TimeLineUtility.addJustHighLightLinks(this);
return listViewSpannableString;
}
}
public void setListViewSpannableString(SpannableString listViewSpannableString) {
this.listViewSpannableString = listViewSpannableString;
}
public long getMills() {
if (mills == 0L) {
TimeUtility.dealMills(this);
}
return mills;
}
public void setMills(long mills) {
this.mills = mills;
}
public String getCreated_at() {
return created_at;
}
public String getListviewItemShowTime() {
return TimeUtility.getListTime(this);
}
public void setCreated_at(String created_at) {
this.created_at = created_at;
}
public String getId() {
return idstr;
}
public void setId(String id) {
this.idstr = id;
}
public long getIdLong() {
return this.id;
}
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
public String getSource() {
return source;
}
public void setSource(String source) {
this.source = source;
}
public String getSourceString() {
if (!TextUtils.isEmpty(sourceString)) {
return sourceString;
} else {
if (!TextUtils.isEmpty(source)) {
sourceString = Html.fromHtml(this.source).toString();
}
return sourceString;
}
}
public void setSourceString(String sourceString) {
this.sourceString = sourceString;
}
public String getMid() {
return mid;
}
public void setMid(String mid) {
this.mid = mid;
}
public UserBean getUser() {
return user;
}
@Override
public boolean isMiddleUnreadItem() {
return this.isMiddleUnreadItem;
}
public void setUser(UserBean user) {
this.user = user;
}
public MessageBean getStatus() {
return status;
}
public void setStatus(MessageBean status) {
this.status = status;
}
public void setMiddleUnreadItem(boolean isMiddleUnreadItem) {
this.isMiddleUnreadItem = isMiddleUnreadItem;
}
@Override
public String toString() {
return ObjectToStringUtility.toString(this);
}
}