uk.gov.hmrc.play

# fsm

#### package fsm

Visibility

1. Public
2. All

### Type Members

1. #### trait JourneyController[RequestContext] extends AnyRef

   Controller mixin for journeys implementing Finite State Machine.

   Controller mixin for journeys implementing Finite State Machine.

   Provides 3 main extension points:

   - getCallFor: what is the endpoint representing given state
   - renderState: how to render given state
   - context: custom request context to carry over to the service layer

   and actions DSL

2. #### trait JourneyIdSupport[RequestContext] extends AnyRef

3. #### trait JourneyModel extends AnyRef

   JourneyModel is an abstract base of a process diagram definition in terms of Finite State Machine pattern.

   JourneyModel is an abstract base of a process diagram definition in terms of Finite State Machine pattern.

   See also

     https://brilliant.org/wiki/finite-state-machines/

4. #### trait JourneyService[RequestContext] extends AnyRef

   JourneyService is an abstract base of components exposing journey to the application (controller)

5. #### trait JsonStateFormats[State] extends AnyRef

   Utility to generate Play JSON Format for multi-value State

   Utility to generate Play JSON Format for multi-value State

   State

     state values base type

6. #### trait PersistentJourneyService[RequestContext] extends JourneyService[RequestContext]

   This trait enhances JourneyService with StateAndBreadcrumbs persistence abstractions.

### Value Members

1. #### object OptionalFormOps

### Ungrouped