faktory-1.1.2.0: library/Faktory/Settings/Queue.hs
module Faktory.Settings.Queue
( Queue(..)
, namespaceQueue
, queueArg
, defaultQueue
, Namespace(..)
) where
import Faktory.Prelude
import Data.Aeson
import Data.ByteString.Lazy (ByteString, fromStrict)
import Data.String
import Data.Text.Encoding (encodeUtf8)
import Faktory.Connection
newtype Queue = Queue Text
deriving stock (Eq, Show)
deriving newtype (IsString, FromJSON, ToJSON)
namespaceQueue :: Namespace -> Queue -> Queue
namespaceQueue (Namespace n) (Queue q) = Queue $ mappend n q
queueArg :: Queue -> ByteString
queueArg (Queue q) = fromStrict $ encodeUtf8 q
defaultQueue :: Queue
defaultQueue = "default"