com.hammurapi.flow.runtime
Interface Node<P,K,S,A>

Type Parameters:
P - Pin type
K - Connect key type.
S - Flow state type.
A - Argument type.
All Superinterfaces:
FlowElement
All Known Subinterfaces:
Flow<N,T,P,K,S,A>

public interface Node<P,K,S,A>
extends FlowElement

Runtime classes representing nodes shall implements this interface.

Author:
Pavel Vlasov

Method Summary
 void addPin(String pinName, P pinConfig)
          Adds configured pin to the node.
 Invocable<S,A> getInvocable(String pinName, K connectKey)
           
 Invoker<S,A> getInvoker(String pinName, K connectKey)
           
 
Methods inherited from interface com.hammurapi.flow.runtime.FlowElement
afterConnect, beforeConnect
 

Method Detail

getInvoker

Invoker<S,A> getInvoker(String pinName,
                        K connectKey)
                        throws ConfigurationException
Parameters:
pinName - Pin name.
connectKey - Connection key (optional) to distinguish and configure different outbound transitions.
Returns:
Invoker to connect external invocable to.
Throws:
ConfigurationException

getInvocable

Invocable<S,A> getInvocable(String pinName,
                            K connectKey)
                            throws ConfigurationException
Parameters:
pinName - Pin name.
connectKey - Connection key (optional) to distinguish different outbound transitions.
Returns:
Invocable to connect external invoker to.
Throws:
ConfigurationException

addPin

void addPin(String pinName,
            P pinConfig)
Adds configured pin to the node.

Parameters:
pinName - Pin name.
pin - Pin configuration.