edomata.core
Members list
Type members
Classlikes
A monad transformer for ResponseD
A monad transformer for ResponseD
Type parameters
- A
-
output type
- E
-
domain event type
- F
-
effect type
- N
-
notification type
- R
-
rejection type
Attributes
- Companion
- object
- Source
- Action.scala
- Supertypes
Attributes
- Companion
- class
- Source
- Action.scala
- Supertypes
-
trait Producttrait Mirrortrait ActionCatsInstancestrait ActionConstructorsclass Objecttrait Matchableclass AnyShow all
- Self type
-
Action.type
Attributes
- Source
- Action.scala
- Supertypes
- Known subtypes
-
object Action.type
Attributes
- Source
- Action.scala
- Supertypes
- Known subtypes
-
object Action.type
Attributes
- Source
- CQRSModel.scala
- Supertypes
-
class AnyValtrait Matchableclass Any
Attributes
- Source
- CQRSDomainDSL.scala
- Supertypes
-
class AnyValtrait Matchableclass Any
Attributes
- Source
- CQRSModel.scala
- Supertypes
- Known subtypes
-
object TestCQRSModel.type
- Self type
-
Representation of a standard command message
Representation of a standard command message
Type parameters
- C
-
Command payload which is your command model
Attributes
- Companion
- object
- Source
- RequestContext.scala
- Supertypes
Attributes
- Companion
- class
- Source
- RequestContext.scala
- Supertypes
- Self type
-
CommandMessage.type
Represents programs that decide in an event driven context
Represents programs that decide in an event driven context
This is basically a simple state machine like the following:
[*] -> InDecisive
InDecisive -- event --> Accepted
InDecisive -- join --> InDecisive
InDecisive -- rejection --> Rejected (resets and terminates)
Accepted -- event --> Accepted (accumulates)
Accepted -- rejection --> Rejected (resets and terminates)
It forms a monad error and also is traversable.
Type parameters
- A
-
program output type
- E
-
event type
- R
-
rejection type
Attributes
- Companion
- object
- Source
- Decision.scala
- Supertypes
- Known subtypes
- Self type
-
Attributes
- Companion
- trait
- Source
- Decision.scala
- Supertypes
-
trait Sumtrait Mirrortrait DecisionCatsInstances0trait DecisionCatsInstances1trait DecisionConstructorsclass Objecttrait Matchableclass AnyShow all
- Self type
-
Decision.type
Attributes
- Source
- Decision.scala
- Supertypes
- Known subtypes
-
object Decision.type
Attributes
- Source
- Decision.scala
- Supertypes
- Known subtypes
-
trait DecisionCatsInstances0object Decision.type
Attributes
- Source
- Decision.scala
- Supertypes
- Known subtypes
-
object Decision.type
This is monad transformer for Decision
This is monad transformer for Decision
Type parameters
- A
-
program output type
- E
-
event type
- F
-
effect type
- R
-
rejection type
Attributes
- Companion
- object
- Source
- DecisionT.scala
- Supertypes
Attributes
- Companion
- class
- Source
- DecisionT.scala
- Supertypes
-
trait Producttrait Mirrortrait DecisionTCatsInstancestrait DecisionTConstructorsclass Objecttrait Matchableclass AnyShow all
- Self type
-
DecisionT.type
Attributes
- Source
- DecisionT.scala
- Supertypes
- Known subtypes
-
object DecisionT.type
Attributes
- Source
- DecisionT.scala
- Supertypes
- Known subtypes
-
object DecisionT.type
Attributes
- Source
- DomainDSL.scala
- Supertypes
-
class AnyValtrait Matchableclass Any
Attributes
- Source
- DomainCompiler.scala
- Supertypes
- Self type
-
DomainCompiler.type
Attributes
- Source
- DomainDSL.scala
- Supertypes
-
class AnyValtrait Matchableclass Any
A purely functional, event driven domain model
A purely functional, event driven domain model
Type parameters
- Event
-
domain events
- Rejection
-
domain error type
- State
-
state model of your program, a.k.a aggregate root
Attributes
- Source
- Model.scala
- Supertypes
- Known subtypes
-
object TestDomain.type
- Self type
-
Represents programs that are event driven state machines (a Mealy machine)
Represents programs that are event driven state machines (a Mealy machine)
these programs can use input to decide on a state transition, and optionally emit a sequence of notifications for communication.
Type parameters
- A
-
output type
- E
-
internal event type
- Env
-
input type
- F
-
effect type
- N
-
notification type, a.k.a external event, integration event
- R
-
rejection type
Attributes
- Companion
- object
- Source
- Edomaton.scala
- Supertypes
Attributes
- Companion
- class
- Source
- Edomaton.scala
- Supertypes
- Self type
-
Edomaton.type
Attributes
- Source
- Edomaton.scala
- Supertypes
- Known subtypes
-
object Edomaton.type
Attributes
- Source
- Edomaton.scala
- Supertypes
- Known subtypes
-
object Edomaton.type
Representation of the result of running an edomaton
Representation of the result of running an edomaton
Attributes
- Source
- DomainCompiler.scala
- Supertypes
-
trait Enumtrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Representation of a standard message metadata
Representation of a standard message metadata
Attributes
- Companion
- object
- Source
- RequestContext.scala
- Supertypes
Attributes
- Companion
- class
- Source
- RequestContext.scala
- Supertypes
- Self type
-
MessageMetadata.type
A type class that captures domain model
A type class that captures domain model
note that due to uniqueness requirements for this typeclass, it is sealed and the only way to create an instance is through implementing DomainModel.
so don't create several instances as it is a bad idea and may change your domain model behavior in different contexts!
Attributes
- Source
- Model.scala
- Supertypes
Attributes
- Companion
- object
- Source
- RaiseError.scala
- Supertypes
Attributes
- Companion
- trait
- Source
- RaiseError.scala
- Supertypes
- Self type
-
RaiseError.type
Representation of a standard input for an Edomaton
Representation of a standard input for an Edomaton
Type parameters
- C
-
Command type
- S
-
State model type
Attributes
- Source
- RequestContext.scala
- Supertypes
Attributes
- Source
- ResponseD.scala
- Supertypes
- Self type
-
ResponseD.type
Attributes
- Source
- ResponseE.scala
- Supertypes
- Self type
-
ResponseE.type
Representation of programs that decide and emit notifications
Representation of programs that decide and emit notifications
This adds capability of emiting notifications/integration events to effectful programs
Type parameters
- A
-
output type
- N
-
notification type
- R
-
rejection type
- RES
-
effect type
Attributes
- Companion
- object
- Source
- ResponseT.scala
- Supertypes
Attributes
- Companion
- class
- Source
- ResponseT.scala
- Supertypes
-
trait Producttrait Mirrortrait ResponseT2CatsInstances0trait ResponseT2CatsInstances1trait ResponseT2Constructorsclass Objecttrait Matchableclass AnyShow all
- Self type
-
ResponseT.type
Attributes
- Source
- ResponseT.scala
- Supertypes
- Known subtypes
-
object ResponseT.type
Attributes
- Source
- ResponseT.scala
- Supertypes
- Known subtypes
-
trait ResponseT2CatsInstances0object ResponseT.type
Attributes
- Source
- ResponseT.scala
- Supertypes
- Known subtypes
-
object ResponseT.type
Attributes
- Source
- CQRSModel.scala
- Supertypes
Attributes
- Companion
- object
- Source
- Stomaton.scala
- Supertypes
Attributes
- Companion
- class
- Source
- Stomaton.scala
- Supertypes
- Self type
-
Stomaton.type
Attributes
- Source
- Stomaton.scala
- Supertypes
- Known subtypes
-
object Stomaton.type
Attributes
- Source
- Stomaton.scala
- Supertypes
- Known subtypes
-
object Stomaton.type
Types
Attributes
- Source
- DomainCompiler.scala
Representation of programs that decide and emit notifications
Representation of programs that decide and emit notifications
This adds capability of emiting notifications/integration events to Decision programs
Type parameters
- A
-
output type
- E
-
domain event type
- N
-
notification type
- R
-
rejection type
Attributes
- Source
- ResponseD.scala
Representation of programs that decide and emit notifications
Representation of programs that decide and emit notifications
This adds capability of emiting notifications/integration events to cats.data.EitherNec programs
Type parameters
- A
-
output type
- N
-
notification type
- R
-
rejection type
Attributes
- Source
- ResponseE.scala
Deprecated types
Representation of programs that decide and emit notifications
Representation of programs that decide and emit notifications
This adds capability of emiting notifications/integration events to Decision programs
Type parameters
- A
-
output type
- E
-
domain event type
- N
-
notification type
- R
-
rejection type
Attributes
- Deprecated
- true
- Source
- Response.scala
Value members
Deprecated fields
Attributes
- Deprecated
- true
- Source
- Response.scala