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: /** ingo@796: * This is the interface description of an output state. Currently, there are ingo@796: * two methods defined:<br> ingo@796: * <ol> ingo@796: * <li>out(): To start an output of the current state.</li> ingo@796: * <li>getOutputModes(): To retrieve a list of possible output modes.</li> ingo@796: * </ol> sascha@803: * sascha@780: * @author <a href="mailto:tim.englich@intevation.de">Tim Englich</a> 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: * ingo@796: * @param format ingo@796: * @param inputData ingo@796: * @param outputStream sascha@803: * @param uuid ingo@796: * @param callContext tim@335: * @throws StateException tim@335: */ ingo@358: public void out( sascha@480: Document format, ingo@358: Collection<InputData> 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<OutputMode> getOutputModes(); tim@335: } sascha@836: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :