Package

scroll.internal

rpa

Permalink

package rpa

This package most notable provides the scroll.internal.rpa.RolePlayingAutomaton for implementing an automaton specifying compartment specific role lifecycle.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. rpa
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Visibility
  1. Public
  2. All

Type Members

  1. trait RolePlayingAutomaton extends Actor with LoggingFSM[RPAState, RPAData]

    Permalink

    Use this trait to implement your own scroll.internal.Compartment specific role playing automaton.

    Use this trait to implement your own scroll.internal.Compartment specific role playing automaton. Please read the documentation for akka.actor.FSM carefully, since the features from that are applicable for role playing automatons.

    Remember to call run() when you want to start this automaton in your scroll.internal.Compartment instance.

    This automaton will always start in state scroll.internal.rpa.RolePlayingAutomaton.Start, so hook in there.

    Final state is always scroll.internal.rpa.RolePlayingAutomaton.Stop, that will terminate the actor system for this akka.actor.FSM.

    Use the factory method RolePlayingAutomaton.Use to gain an instance of your specific FSM, e.g.:

    trait MyCompartment extends Compartment {
    // ... some roles and interaction
    
    // your specific RPA here
    class MyRolePlayingAutomaton extends RolePlayingAutomaton {
    // specific behavior here
    when(Start) {
    // ...
    }
    
    onTransition {
    // ...
    }
    
    run()
    }
    
    Use[MyRolePlayingAutomaton] For this
    }
    
    // start everything
    new MyCompartment {}

    Some predefined event types for messaging are available in the companion object. You may want to define your own states and event types. Simply use a companion object for this as well.

Value Members

  1. object RolePlayingAutomaton

    Permalink

    Companion object for the scroll.internal.rpa.RolePlayingAutomaton containing predefined states and data objects for messaging.

Inherited from AnyRef

Inherited from Any

Ungrouped