Package

io.funcqrs

behavior

Permalink

package behavior

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. behavior
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. case class Actions[A <: AggregateLike](cmdHandlerInvokers: CommandToInvoker[ProtocolAliases.Protocol.ProtocolCommand, ProtocolAliases.Protocol.ProtocolEvent] = PartialFunction.empty, rejectCmdInvokers: CommandToInvoker[ProtocolAliases.Protocol.ProtocolCommand, ProtocolAliases.Protocol.ProtocolEvent] = PartialFunction.empty, eventHandlers: EventHandler[ProtocolAliases.Protocol.ProtocolEvent, A] = PartialFunction.empty) extends AggregateAliases with Product with Serializable

    Permalink
  2. type Behavior[A <: AggregateLike] = PartialFunction[State[A], Actions[A]]

    Permalink
  3. type BehaviorUnwrapped[A <: AggregateLike] = PartialFunction[A, Actions[A]]

    Permalink
  4. abstract class ClassTagExtractor[T] extends AnyRef

    Permalink

    extractor to convert a total function into a partial function internally _

  5. trait CommandHandlerInvoker[-C <: DomainCommand, E <: DomainEvent] extends AnyRef

    Permalink

    A CommandHandlerInvoker holds a PartialFunction from DomainCommand to F[immutable.Seq[DomainEvent]].

    A CommandHandlerInvoker holds a PartialFunction from DomainCommand to F[immutable.Seq[DomainEvent]]. F being the higher-kind wrapping the result of handling the command.

    Invokers are delayed execution of Command Handlers and abstract over the Functor that will be returned when handling the command. Fun.CQRS provides three CommandHandlerInvoker implementations: IdCommandHandlerInvoker (returns the Identity Functor), TryCommandHandlerInvoker and FutureCommandHandlerInvoker.

  6. type CommandToInvoker[C <: DomainCommand, E <: DomainEvent] = PartialFunction[C, CommandHandlerInvoker[C, E]]

    Permalink

    A CommandToInvoker is a PartialFunction from a DomainCommand to a CommandHandlerInvoker

  7. type EventHandler[E <: DomainEvent, A <: AggregateLike] = PartialFunction[E, A]

    Permalink

    An EventHandler is a PartialFunction from a DomainEvent to an Aggregate

    An EventHandler is a PartialFunction from a DomainEvent to an Aggregate

    Typically it is used to construct or update an aggregate. In case of update, an Aggregate instance must be in scope.

  8. case class FutureCommandHandlerInvoker[C <: DomainCommand, E <: DomainEvent](commandHandler: (C) ⇒ Future[Seq[E]]) extends CommandHandlerInvoker[C, E] with Product with Serializable

    Permalink

    A CommandHandlerInvoker which F type member is defined as Future

  9. case class IdCommandHandlerInvoker[C <: DomainCommand, E <: DomainEvent](commandHandler: (C) ⇒ Identity[Seq[E]]) extends CommandHandlerInvoker[C, E] with Product with Serializable

    Permalink

    A CommandHandlerInvoker which F type member is defined as Identity

  10. case class Initialized[A <: AggregateLike](aggregate: A) extends State[A] with Product with Serializable

    Permalink
  11. trait InvokerDirective[-F[_]] extends AnyRef

    Permalink
  12. trait InvokerListDirective[-F[_]] extends AnyRef

    Permalink
  13. trait InvokerSeqDirective[-F[_]] extends AnyRef

    Permalink
  14. sealed trait State[+A <: AggregateLike] extends AnyRef

    Permalink
  15. case class TryCommandHandlerInvoker[C <: DomainCommand, E <: DomainEvent](commandHandler: (C) ⇒ Try[Seq[E]]) extends CommandHandlerInvoker[C, E] with Product with Serializable

    Permalink

    A CommandHandlerInvoker which F type member is defined as Try

  16. case class Uninitialized[A <: AggregateLike](aggregateId: A.Id) extends State[A] with Product with Serializable

    Permalink

Value Members

  1. object Actions extends Serializable

    Permalink
  2. def Behavior[A <: AggregateLike](onCreation: ⇒ Actions[A])(postCreation: BehaviorUnwrapped[A]): Behavior[A]

    Permalink
  3. object InvokerDirective

    Permalink
  4. object InvokerListDirective

    Permalink
  5. object InvokerSeqDirective

    Permalink
  6. def action[A <: AggregateLike]: Actions[A]

    Permalink
  7. def actions[A <: AggregateLike]: Actions[A]

    Permalink

Inherited from AnyRef

Inherited from Any

Ungrouped