|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object akka.japi.pf.FSMStateFunctionBuilder<S,D>
S
- the state typeD
- the data type
This is an EXPERIMENTAL feature and is subject to change until it has received more real world testing.public class FSMStateFunctionBuilder<S,D>
Builder used to create a partial function for FSM.whenUnhandled(scala.PartialFunction
.
>)
Constructor Summary | |
---|---|
FSMStateFunctionBuilder()
|
Method Summary | ||
---|---|---|
FSMStateFunctionBuilder<S,D> |
anyEvent(FI.Apply2<java.lang.Object,D,FSM.State<S,D>> apply)
Add a case statement that matches on any type of event. |
|
scala.PartialFunction<FSM.Event<D>,FSM.State<S,D>> |
build()
Build a PartialFunction from this builder. |
|
|
event(java.lang.Class<P> eventType,
java.lang.Class<Q> dataType,
FI.Apply2<P,Q,FSM.State<S,D>> apply)
Add a case statement that matches on an event and data type. |
|
|
event(java.lang.Class<P> eventType,
java.lang.Class<Q> dataType,
FI.TypedPredicate2<P,Q> predicate,
FI.Apply2<P,Q,FSM.State<S,D>> apply)
Add a case statement that matches on an event and data type and a predicate. |
|
|
event(java.lang.Class<P> eventType,
FI.Apply2<P,D,FSM.State<S,D>> apply)
Add a case statement that matches if the event type and predicate matches. |
|
|
event(java.lang.Class<P> eventType,
FI.TypedPredicate2<P,D> predicate,
FI.Apply2<P,D,FSM.State<S,D>> apply)
Add a case statement that matches if the event type and predicate matches. |
|
FSMStateFunctionBuilder<S,D> |
event(FI.TypedPredicate2<java.lang.Object,D> predicate,
FI.Apply2<java.lang.Object,D,FSM.State<S,D>> apply)
Add a case statement that matches if the predicate matches. |
|
|
event(java.util.List<java.lang.Object> eventMatches,
java.lang.Class<Q> dataType,
FI.Apply2<java.lang.Object,Q,FSM.State<S,D>> apply)
Add a case statement that matches on the data type and if any of the event types in the list match or any of the event instances in the list compares equal. |
|
FSMStateFunctionBuilder<S,D> |
event(java.util.List<java.lang.Object> eventMatches,
FI.Apply2<java.lang.Object,D,FSM.State<S,D>> apply)
Add a case statement that matches if any of the event types in the list match or any of the event instances in the list compares equal. |
|
|
eventEquals(P event,
java.lang.Class<Q> dataType,
FI.Apply2<P,Q,FSM.State<S,D>> apply)
Add a case statement that matches on the data type and if the event compares equal. |
|
|
eventEquals(P event,
FI.Apply2<P,D,FSM.State<S,D>> apply)
Add a case statement that matches if event compares equal. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public FSMStateFunctionBuilder()
Method Detail |
---|
public final <P,Q> FSMStateFunctionBuilder<S,D> event(java.lang.Class<P> eventType, java.lang.Class<Q> dataType, FI.TypedPredicate2<P,Q> predicate, FI.Apply2<P,Q,FSM.State<S,D>> apply)
P
- the event type to match onQ
- the data type to match oneventType
- the event type to match ondataType
- the data type to match onpredicate
- a predicate to evaluate on the matched typesapply
- an action to apply to the event and state data if there is a match
public <P,Q> FSMStateFunctionBuilder<S,D> event(java.lang.Class<P> eventType, java.lang.Class<Q> dataType, FI.Apply2<P,Q,FSM.State<S,D>> apply)
P
- the event type to match onQ
- the data type to match oneventType
- the event type to match ondataType
- the data type to match onapply
- an action to apply to the event and state data if there is a match
public <P> FSMStateFunctionBuilder<S,D> event(java.lang.Class<P> eventType, FI.TypedPredicate2<P,D> predicate, FI.Apply2<P,D,FSM.State<S,D>> apply)
eventType
- the event type to match onpredicate
- a predicate that will be evaluated on the data and the eventapply
- an action to apply to the event and state data if there is a match
public <P> FSMStateFunctionBuilder<S,D> event(java.lang.Class<P> eventType, FI.Apply2<P,D,FSM.State<S,D>> apply)
eventType
- the event type to match onapply
- an action to apply to the event and state data if there is a match
public FSMStateFunctionBuilder<S,D> event(FI.TypedPredicate2<java.lang.Object,D> predicate, FI.Apply2<java.lang.Object,D,FSM.State<S,D>> apply)
predicate
- a predicate that will be evaluated on the data and the eventapply
- an action to apply to the event and state data if there is a match
public <Q> FSMStateFunctionBuilder<S,D> event(java.util.List<java.lang.Object> eventMatches, java.lang.Class<Q> dataType, FI.Apply2<java.lang.Object,Q,FSM.State<S,D>> apply)
Q
- the data type to match oneventMatches
- a list of types or instances to match againstdataType
- the data type to match onapply
- an action to apply to the event and state data if there is a match
public FSMStateFunctionBuilder<S,D> event(java.util.List<java.lang.Object> eventMatches, FI.Apply2<java.lang.Object,D,FSM.State<S,D>> apply)
eventMatches
- a list of types or instances to match againstapply
- an action to apply to the event and state data if there is a match
public <P,Q> FSMStateFunctionBuilder<S,D> eventEquals(P event, java.lang.Class<Q> dataType, FI.Apply2<P,Q,FSM.State<S,D>> apply)
Q
- the data type to match onevent
- an event to compare equal againstdataType
- the data type to match onapply
- an action to apply to the event and state data if there is a match
public <P> FSMStateFunctionBuilder<S,D> eventEquals(P event, FI.Apply2<P,D,FSM.State<S,D>> apply)
event
- an event to compare equal againstapply
- an action to apply to the event and state data if there is a match
public FSMStateFunctionBuilder<S,D> anyEvent(FI.Apply2<java.lang.Object,D,FSM.State<S,D>> apply)
apply
- an action to apply to the event and state data
public scala.PartialFunction<FSM.Event<D>,FSM.State<S,D>> build()
PartialFunction
from this builder.
After this call the builder will be reset.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |