001 package com.hammurapi.flow.runtime;
002
003 /**
004 * Runtime classes representing transitions shall implement this interface.
005 * @author Pavel Vlasov
006 * @param <S> Flow state type.
007 * @param <A> Argument type.
008 */
009 public interface Transition<S, A> extends FlowElement {
010
011 /**
012 * @return Invocable which represents transition start.
013 */
014 Invocable<S, A> getInvocable();
015
016 /**
017 * @return Invoker which represents transition end.
018 */
019 Invoker<S, A> getInvoker();
020
021 }