tim@52: /** tim@52: * tim@52: */ tim@52: package de.intevation.gnv.transition; tim@52: tim@74: import java.io.Serializable; tim@52: import java.util.Collection; tim@52: tim@52: import org.w3c.dom.Document; tim@52: import org.w3c.dom.Node; tim@52: tim@117: import de.intevation.artifacts.CallMeta; tim@57: import de.intevation.gnv.transition.exception.TransitionException; tim@57: tim@52: /** tim@52: * @author Tim Englich tim@171: * tim@52: */ tim@171: public interface Transition extends Serializable { tim@171: tim@52: public void setup(Node configuration); tim@171: tim@52: public Collection reachableTransitions(); tim@171: tim@58: public boolean isTransitionReachable(String transitionID); tim@171: tim@52: public String getID(); tim@171: tim@53: public String getDescription(); tim@171: tim@325: public void describe(Document document, Node rootNode, tim@325: CallMeta callMeta, String uuid); tim@171: tim@52: public void setParent(Transition transition); tim@171: tim@52: public Transition getParent(); tim@171: tim@55: public Collection getRequiredInputValues(); tim@171: tim@207: public void putInputData(Collection inputData, tim@325: String uuid)throws TransitionException; tim@171: tim@59: public Collection getInputData() throws TransitionException; tim@171: tim@171: public void advance(String uuid, CallMeta callMeta) tim@325: throws TransitionException; tim@325: public void initialize(String uuid, CallMeta callMeta) tim@325: throws TransitionException; tim@325: tim@171: tim@52: }