packages feed

keiro-dsl-0.17.0.0: test/conformance-process-state-authority/Generated/IncidentResponse/Escalation/Domain.hs

{-# LANGUAGE TemplateHaskell #-}
-- @generated by keiro-dsl 0.17.0.0 (language keiro-dsl 6) from aggregate Escalation; do not edit.
module Generated.IncidentResponse.Escalation.Domain where

import GHC.Generics (Generic)
import Keiki.Core (RegFile (..))
import Generated.IncidentResponse.Nominals (IncidentId)
import Keiki.Generics.TH (deriveAggregateCtorsAll, deriveWireCtorsAll)

data EscalationVertex = EscalationOpen | EscalationDormant
  deriving stock (Generic, Eq, Ord, Show, Enum, Bounded)

data NoteRaisedData = NoteRaisedData
  { incidentId :: !IncidentId
  }
  deriving stock (Generic, Eq, Show)

data NoteAcknowledgedData = NoteAcknowledgedData
  { incidentId :: !IncidentId
  }
  deriving stock (Generic, Eq, Show)

data NoteIgnoredData = NoteIgnoredData
  { incidentId :: !IncidentId
  }
  deriving stock (Generic, Eq, Show)

data ActivateDormantData = ActivateDormantData
  { incidentId :: !IncidentId
  }
  deriving stock (Generic, Eq, Show)

data EscalationCommand = NoteRaised !NoteRaisedData
  | NoteAcknowledged !NoteAcknowledgedData
  | NoteIgnored !NoteIgnoredData
  | ActivateDormant !ActivateDormantData
  deriving stock (Generic, Eq, Show)

data RaisedNotedData = RaisedNotedData
  { incidentId :: !IncidentId
  }
  deriving stock (Generic, Eq, Show)

data AcknowledgedData = AcknowledgedData
  { incidentId :: !IncidentId
  }
  deriving stock (Generic, Eq, Show)

data DormantActivatedData = DormantActivatedData
  { incidentId :: !IncidentId
  }
  deriving stock (Generic, Eq, Show)

data EscalationEvent = RaisedNoted !RaisedNotedData
  | Acknowledged !AcknowledgedData
  | DormantActivated !DormantActivatedData
  deriving stock (Generic, Eq, Show)

type EscalationRegs =
  '[]

initialEscalationRegs :: RegFile EscalationRegs
initialEscalationRegs =
  RNil

$(deriveAggregateCtorsAll ''EscalationCommand ''EscalationRegs)



$(deriveWireCtorsAll ''EscalationEvent)