package com.marvinlabs.widget.floatinglabel.itempicker;
import java.util.Collection;
/**
* Created by Vincent Mimoun-Prat @ MarvinLabs, 29/08/2014.
*/
public interface ItemPrinter<ItemT> {
public String print(ItemT item);
public String printCollection(Collection<ItemT> items);
public static class ToStringItemPrinter<ItemT> implements ItemPrinter<ItemT> {
public String print(ItemT item) {
return item==null ? "" : item.toString();
}
public String printCollection(Collection<ItemT> items) {
if (items.size() == 0) return "";
StringBuilder sb = new StringBuilder();
boolean prependSeparator = false;
for (ItemT item : items) {
if (prependSeparator) {
sb.append(", ");
} else {
prependSeparator = true;
}
sb.append(print(item));
}
return sb.toString();
}
}
}