ingo@209: package de.intevation.artifactdatabase.state;
ingo@209:
ingo@226: import java.util.List;
ingo@226:
ingo@209:
ingo@209: /**
ingo@209: * @author Ingo Weinzierl
ingo@209: */
ingo@209: public interface Output {
ingo@209:
ingo@209: /**
ingo@209: * Retrieve the name of this output mode.
ingo@209: *
ingo@209: * @return the name of this output mode.
ingo@209: */
ingo@209: public String getName();
ingo@209:
ingo@209: /**
ingo@209: * Retrieve the description of an output.
ingo@209: *
ingo@209: * @return the description.
ingo@209: */
ingo@209: public String getDescription();
ingo@209:
ingo@209: /**
ingo@209: * Retrieve the mimetype used for the output.
ingo@209: *
ingo@209: * @return the mimetype.
ingo@209: */
ingo@209: public String getMimeType();
ingo@226:
ingo@290:
ingo@290: /**
ingo@290: * Returns the type of this output.
ingo@290: *
ingo@290: * @return the type.
ingo@290: */
ingo@290: public String getType();
ingo@290:
ingo@226: /**
ingo@226: * Retrieve the facets of this output.
ingo@226: *
ingo@226: * @return the facets of this output.
ingo@226: */
ingo@226: public List getFacets();
ingo@251:
ingo@251: /**
ingo@251: * Add a new facet to this output.
ingo@251: *
ingo@251: * @param facet The new facet.
ingo@251: */
ingo@251: public void addFacet(Facet facet);
ingo@296:
ingo@296: /**
ingo@296: * Add a list of facet to this output.
ingo@296: *
ingo@296: * @param facets A list of facets.
ingo@296: */
ingo@296: public void addFacets(List facets);
ingo@209: }
ingo@209: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :