legion-discovery-0.2.1.0: src/Network/Legion/Discovery/HttpError.hs
{- |
This module contains a `ScottyError` error type that short-cuts to http
response types.
-}
module Network.Legion.Discovery.HttpError (
HttpError,
) where
import Data.Text (Text, pack)
import Data.Text.Lazy (fromStrict)
import Network.HTTP.Types (Status)
import Web.Scotty.Trans (ScottyError, stringError, showError)
data HttpError
= Transient Status Text
| Critical Text
instance ScottyError HttpError where
stringError = Critical . pack
showError (Transient _ msg) = fromStrict msg
showError (Critical msg) = fromStrict msg