package com.vaguehope.onosendai.payload; import android.content.Context; import android.content.Intent; import com.vaguehope.onosendai.config.Account; import com.vaguehope.onosendai.model.Meta; import com.vaguehope.onosendai.model.MetaType; import com.vaguehope.onosendai.model.Tweet; import com.vaguehope.onosendai.ui.PostActivity; import com.vaguehope.onosendai.util.EqualHelper; public class AddCommentPayload extends Payload { private final Account account; public AddCommentPayload (final Account account, final Tweet ownerTweet) { super(ownerTweet, null, PayloadType.COMMENT); this.account = account; } @Override public String getTitle () { return "Add Comment"; //ES } @Override public boolean intentable () { return true; } @Override public Intent toIntent (final Context context) { final Intent intent = new Intent(context, PostActivity.class); intent.putExtra(PostActivity.ARG_ACCOUNT_ID, this.account.getId()); intent.putExtra(PostActivity.ARG_IN_REPLY_TO_UID, getOwnerTweet().getUid()); intent.putExtra(PostActivity.ARG_IN_REPLY_TO_SID, getOwnerTweet().getSid()); final Meta replyToId = getOwnerTweet().getFirstMetaOfType(MetaType.REPLYTO); if (replyToId != null) intent.putExtra(PostActivity.ARG_ALT_REPLY_TO_SID, replyToId.getData()); return intent; } @Override public int hashCode () { return this.account != null ? this.account.getId() != null ? this.account.getId().hashCode() : 0 : 0; } @Override public boolean equals (final Object o) { if (o == null) return false; if (o == this) return true; if (!(o instanceof AddCommentPayload)) return false; final AddCommentPayload that = (AddCommentPayload) o; return EqualHelper.equal(this.getOwnerTweet(), that.getOwnerTweet()) && EqualHelper.equal(this.account, that.account); } }