package org.getlantern.firetweet.adapter; import android.content.Context; import org.getlantern.firetweet.model.ParcelableStatus; import org.getlantern.firetweet.view.holder.StatusViewHolder; import java.util.List; /** * Created by mariotaku on 14/11/19. */ public class ParcelableStatusesAdapter extends AbsStatusesAdapter<List<ParcelableStatus>> { private List<ParcelableStatus> mData; public ParcelableStatusesAdapter(Context context, boolean compact) { super(context, compact); setHasStableIds(true); } @Override public boolean isGapItem(int position) { return getStatus(position).is_gap && position != getStatusesCount() - 1; } @Override protected void bindStatus(StatusViewHolder holder, int position) { holder.displayStatus(getStatus(position), isShowInReplyTo()); } @Override public ParcelableStatus getStatus(int position) { if (position == getStatusesCount()) return null; return mData.get(position); } @Override public int getStatusesCount() { if (mData == null) return 0; return mData.size(); } @Override public long getItemId(int position) { if (position == getStatusesCount()) return position; return mData.get(position).hashCode(); } @Override public long getStatusId(int position) { if (position == getStatusesCount()) return -1; return mData.get(position).id; } public void setData(List<ParcelableStatus> data) { mData = data; notifyDataSetChanged(); } public List<ParcelableStatus> getData() { return mData; } }