teichmann@5861: /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde teichmann@5861: * Software engineering by Intevation GmbH teichmann@5861: * teichmann@5861: * This file is Free Software under the GNU AGPL (>=v3) teichmann@5861: * and comes with ABSOLUTELY NO WARRANTY! Check out the teichmann@5861: * documentation coming with Dive4Elements River for details. teichmann@5861: */ teichmann@5861: teichmann@5835: package org.dive4elements.river.client.shared.model; ingo@67: ingo@67: import java.io.Serializable; ingo@67: import java.util.List; felix@1435: import java.util.Map; ingo@67: ingo@67: ingo@67: /** ingo@67: * The CollectionItem interface that provides methods to get information about ingo@67: * artifacts and its output modes. ingo@67: * ingo@67: * @author Ingo Weinzierl ingo@67: */ ingo@67: public interface CollectionItem extends Serializable { ingo@67: ingo@67: /** ingo@67: * Returns the identifier of the wrapped artifact. ingo@67: * ingo@67: * @return the identifier of the wrapped artifact. ingo@67: */ ingo@67: String identifier(); ingo@67: ingo@67: ingo@67: /** ingo@87: * Returns the hash of the wrapped artifact. ingo@87: * ingo@87: * @return the hash of the wrapped artifact. ingo@87: */ ingo@87: String hash(); ingo@87: ingo@87: ingo@87: /** ingo@67: * Returns the output modes of the wrapped artifact. ingo@67: * ingo@67: * @return the output modes of the wrapped artifact. ingo@67: */ ingo@67: List getOutputModes(); ingo@67: ingo@67: ingo@67: /** ingo@67: * Returns the facets of the wrapped artifact for a specific output mode. ingo@67: * ingo@67: * @param outputmode The name of an output mode that is supported by this ingo@67: * item. ingo@67: * ingo@67: * @return the facets of the wrapped artifact for a specific output mode. ingo@67: */ ingo@67: List getFacets(String outputmode); felix@1435: felix@1435: felix@1435: /** felix@1435: * Returns data key/value map. felix@1435: * @return key/value data map felix@1435: */ felix@1435: Map getData(); ingo@67: } ingo@67: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :