tim@335: /** tim@335: * tim@335: */ tim@335: package de.intevation.gnv.state; tim@335: tim@335: import java.io.Serializable; tim@335: import java.util.Collection; tim@335: tim@335: import org.w3c.dom.Document; tim@335: import org.w3c.dom.Node; tim@335: tim@335: import de.intevation.artifacts.CallMeta; tim@335: import de.intevation.gnv.state.exception.StateException; tim@335: tim@335: /** tim@335: * @author Tim Englich tim@335: * tim@335: */ tim@335: public interface State extends Serializable { tim@335: tim@335: public void setup(Node configuration); tim@335: tim@335: public String getID(); tim@335: tim@335: public String getDescription(); tim@335: tim@335: public void describe(Document document, Node rootNode, tim@335: CallMeta callMeta, String uuid); tim@335: tim@335: public void setParent(State state); tim@335: tim@335: public State getParent(); tim@335: tim@335: public Collection getRequiredInputValues(); tim@335: tim@335: public void putInputData(Collection inputData, tim@335: String uuid)throws StateException; tim@335: tim@335: public Collection getInputData() throws StateException; tim@335: tim@335: public void advance(String uuid, CallMeta callMeta) tim@335: throws StateException; tim@335: public void initialize(String uuid, CallMeta callMeta) tim@335: throws StateException; tim@335: tim@335: tim@335: }