packages feed

keiro-dsl-0.2.0.0: test/conformance-newsurface/Generated/TransferRouting/HospitalTransferRouter/Router.hs

{-# LANGUAGE OverloadedStrings #-}

-- @generated by keiro-dsl; do not edit. Regenerated from the .keiro spec.
module Generated.TransferRouting.HospitalTransferRouter.Router (
    hospitalTransferRouterName,
    hospitalTransferRouterWorkerOptions,
) where

import Data.Text (Text)
import Keiro.ProcessManager (PoisonPolicy (..), RejectedCommandPolicy (..), WorkerOptions (..))
import Shibuya.Core.Ack (RetryDelay (..))

-- The STABLE router name. It participates in every target-keyed
-- deterministicRouterCommandId; renaming it re-keys replayed dispatches.
hospitalTransferRouterName :: Text
hospitalTransferRouterName = "hospital-transfer-router"

-- Runtime-owned dispatch id inputs: (name, key, sourceEventId,
-- targetStreamName, occurrence). Target-keyed, not positional.

-- Node-level worker policy lowered from the spec. Pass this value to
-- Keiro.Router.runRouterWorkerWith; do not silently use defaultWorkerOptions.
hospitalTransferRouterWorkerOptions :: WorkerOptions es msg
hospitalTransferRouterWorkerOptions =
    WorkerOptions
        { poisonPolicy = PoisonHalt
        , rejectedCommandPolicy = RejectedDeadLetter
        , transientRetryDelay = RetryDelay 5 -- matches defaultWorkerOptions; runtime tuning
        , metrics = Nothing -- runtime configuration; install at call site
        }