19 lines
425 B
Nim
19 lines
425 B
Nim
import pkg/chronos
|
|
import ../statemachine
|
|
import ../salesagent
|
|
import ./errorhandling
|
|
|
|
type
|
|
SaleIgnored* = ref object of ErrorHandlingState
|
|
|
|
method `$`*(state: SaleIgnored): string = "SaleIgnored"
|
|
|
|
method run*(state: SaleIgnored, machine: Machine): Future[?State] {.async.} =
|
|
let agent = SalesAgent(machine)
|
|
let context = agent.context
|
|
|
|
if onIgnored =? context.onIgnored:
|
|
onIgnored()
|
|
|
|
await agent.unsubscribe()
|