teichmann@5835: package org.dive4elements.river.client.shared.model; ingo@3: ingo@67: import java.io.Serializable; ingo@3: import java.util.Date; ingo@809: import java.util.List; ingo@67: import java.util.Map; ingo@3: ingo@3: ingo@3: /** ingo@3: * The artifact collection. ingo@3: * ingo@3: * @author Ingo Weinzierl ingo@3: */ ingo@67: public interface Collection extends Serializable { ingo@3: ingo@5: public String identifier(); ingo@5: ingo@3: public String getName(); ingo@3: ingo@597: public void setName(String name); ingo@597: ingo@95: public Date getCreationTime(); ingo@95: felix@1430: /** TODO never called, trivial implementation. Can be removed? */ ingo@3: public Date getLastAccess(); ingo@17: ingo@587: public long getTTL(); ingo@587: ingo@597: public void setTTL(long ttl); ingo@597: ingo@67: public void addItem(CollectionItem item); ingo@17: ingo@67: public int getItemLength(); ingo@17: ingo@67: public CollectionItem getItem(int idx); ingo@67: felix@1544: public CollectionItem getItem(String uuid); felix@1544: ingo@67: public Map getOutputModes(); ingo@524: ingo@524: public ThemeList getThemeList(String outName); ingo@809: raimund@1439: public Settings getSettings(String outName); raimund@1439: raimund@1464: public void setSettings(Map settings); raimund@1464: raimund@1503: public void addSettings(String name, Settings settings); raimund@1503: felix@1435: /** Sets mapping outputname to ThemeList. */ felix@1435: public void setThemeLists(Map map); felix@1435: ingo@809: public List getRecommendations(); ingo@809: ingo@809: public void addRecommendation(Recommendation recommendation); ingo@809: ingo@809: public void addRecommendations(List recommendations); ingo@809: ingo@809: public boolean loadedRecommendation(Recommendation recommendation); bjoern@4660: bjoern@4660: public boolean hasItems(); bjoern@4689: bjoern@4689: /** bjoern@4689: * Returns the name which should be displayed in the client gui bjoern@4689: * @return String display name bjoern@4689: */ bjoern@4689: public String getDisplayName(); ingo@3: } ingo@3: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :