arbiter-orville-0.1.0.0
arbiter-orville
Safe HaskellNone
LanguageGHC2024

Arbiter.Orville.Worker

Description

Run a worker in OrvilleDb with its handlers and hooks written in the base monad:

import Arbiter.Orville.Worker qualified as ArbO
import Arbiter.Worker qualified as Worker

config <- Worker.manualWorkerConfig 5 (ArbO.orvilleBatchedHandler processJob)
let config' = config {Worker.observabilityHooks = ArbO.orvilleHooks appHooks}
Synopsis

Documentation

orvilleBatchedHandler :: forall jobs m payload result (registry :: JobPayloadRegistry). (jobs -> BatchCallbacks m payload result -> m ()) -> jobs -> BatchCallbacks (OrvilleDb registry m) payload result -> OrvilleDb registry m ()Source #

A batched or manual handler written in the base monad. Its callbacks run in the worker's own OrvilleDb env, on the handler's connection and inside any transaction the handler opens.

orvilleHooks :: forall (m :: Type -> Type) payload (registry :: JobPayloadRegistry). Monad m => ObservabilityHooks m payload -> ObservabilityHooks (OrvilleDb registry m) payloadSource #

Hooks written in the base monad.