tim@335: package de.intevation.gnv.state;
tim@335:
sascha@480: import de.intevation.artifacts.CallContext;
sascha@480:
sascha@480: import de.intevation.gnv.state.exception.StateException;
sascha@480:
tim@335: import java.io.OutputStream;
sascha@480:
tim@335: import java.util.Collection;
tim@335:
tim@335: import org.w3c.dom.Document;
tim@335:
tim@335: /**
sascha@780: * @author Tim Englich
sascha@778: *
tim@335: */
sascha@778: public interface OutputState
sascha@480: extends State
sascha@480: {
tim@335:
tim@335: /**
tim@335: * Returns the Rendered Result of an State.
sascha@778: *
tim@335: * @param outputMode
tim@335: * The Mode that should be produces (Chart, Map, ...)
tim@335: * @return The Bytecode of the Result
tim@335: * @throws StateException
tim@335: */
ingo@358: public void out(
sascha@480: Document format,
ingo@358: Collection inputData,
sascha@480: OutputStream outputStream,
sascha@480: String uuid,
sascha@480: CallContext callContext
ingo@358: ) throws StateException;
tim@335:
tim@335: /**
tim@335: * Delivers the provided OutputModes of an State
sascha@778: *
tim@335: * @return the provided OutputModes of an State
tim@335: */
tim@335: public Collection getOutputModes();
tim@335: }