package de.bsd.zwitscher.helper; import java.util.ArrayList; import java.util.Collections; import java.util.List; /** * List of stuff + some metadata * * @author Heiko W. Rupp */ public class MetaList<T> { /** The actual list */ private List<T> list = new ArrayList<T>(); /** Number of original (= received from server) items */ private int numOriginal; /** Number of items filled up */ private int numAdded; /** the last id the user has probably seen before */ public long oldLast; /** * Create a new empty MetaList with the list initialized */ public MetaList() { } /** * Create a new MetaList from the parameters passed * @param list The list to store * @param numOriginal Number of received items * @param numAdded Number of items added from DB */ public MetaList(List<T> list, int numOriginal, int numAdded) { if (list==null) this.list = Collections.emptyList(); else this.list = list; this.numOriginal = numOriginal; this.numAdded = numAdded; } public List<T> getList() { return list; } public int getNumOriginal() { return numOriginal; } public int getNumAdded() { return numAdded; } @Override public String toString() { final StringBuilder sb = new StringBuilder(); sb.append("MetaList"); sb.append("{listSize=").append(list.size()); sb.append(", numOriginal=").append(numOriginal); sb.append(", numAdded=").append(numAdded); sb.append('}'); return sb.toString(); } }