Remove some deprecated methods from the Yesod class
This commit is contained in:
parent
e3bb03f9af
commit
f2926e60f0
@ -31,7 +31,6 @@ module Yesod.Core
|
|||||||
-- * Logging
|
-- * Logging
|
||||||
, defaultMakeLogger
|
, defaultMakeLogger
|
||||||
, defaultMessageLoggerSource
|
, defaultMessageLoggerSource
|
||||||
, defaultShouldLog
|
|
||||||
, defaultShouldLogIO
|
, defaultShouldLogIO
|
||||||
, formatLogMessage
|
, formatLogMessage
|
||||||
, LogLevel (..)
|
, LogLevel (..)
|
||||||
|
|||||||
@ -10,7 +10,7 @@ import Yesod.Core.Handler
|
|||||||
|
|
||||||
import Yesod.Routes.Class
|
import Yesod.Routes.Class
|
||||||
|
|
||||||
import Data.ByteString.Builder (Builder, toLazyByteString)
|
import Data.ByteString.Builder (Builder)
|
||||||
import Data.Text.Encoding (encodeUtf8Builder)
|
import Data.Text.Encoding (encodeUtf8Builder)
|
||||||
import Control.Arrow ((***), second)
|
import Control.Arrow ((***), second)
|
||||||
import Control.Exception (bracket)
|
import Control.Exception (bracket)
|
||||||
@ -24,7 +24,6 @@ import Control.Monad.Logger (LogLevel (LevelInfo, LevelO
|
|||||||
import Control.Monad.Trans.Resource (InternalState, createInternalState, closeInternalState)
|
import Control.Monad.Trans.Resource (InternalState, createInternalState, closeInternalState)
|
||||||
import qualified Data.ByteString.Char8 as S8
|
import qualified Data.ByteString.Char8 as S8
|
||||||
import qualified Data.ByteString.Lazy as L
|
import qualified Data.ByteString.Lazy as L
|
||||||
import qualified Data.ByteString.Lazy.Char8 as BL8
|
|
||||||
import Data.Aeson (object, (.=))
|
import Data.Aeson (object, (.=))
|
||||||
import Data.List (foldl', nub)
|
import Data.List (foldl', nub)
|
||||||
import qualified Data.Map as Map
|
import qualified Data.Map as Map
|
||||||
@ -37,7 +36,7 @@ import Data.Text.Lazy.Builder (toLazyText)
|
|||||||
import Data.Text.Lazy.Encoding (encodeUtf8)
|
import Data.Text.Lazy.Encoding (encodeUtf8)
|
||||||
import Data.Word (Word64)
|
import Data.Word (Word64)
|
||||||
import Language.Haskell.TH.Syntax (Loc (..))
|
import Language.Haskell.TH.Syntax (Loc (..))
|
||||||
import Network.HTTP.Types (encodePath, renderQueryText)
|
import Network.HTTP.Types (encodePath)
|
||||||
import qualified Network.Wai as W
|
import qualified Network.Wai as W
|
||||||
import Network.Wai.Parse (lbsBackEnd,
|
import Network.Wai.Parse (lbsBackEnd,
|
||||||
tempFileBackEnd)
|
tempFileBackEnd)
|
||||||
@ -99,12 +98,6 @@ class RenderRoute site => Yesod site where
|
|||||||
^{pageBody p}
|
^{pageBody p}
|
||||||
|]
|
|]
|
||||||
|
|
||||||
-- | Override the rendering function for a particular URL. One use case for
|
|
||||||
-- this is to offload static hosting to a different domain name to avoid
|
|
||||||
-- sending cookies.
|
|
||||||
urlRenderOverride :: site -> Route site -> Maybe Builder
|
|
||||||
urlRenderOverride _ _ = Nothing
|
|
||||||
|
|
||||||
-- | Override the rendering function for a particular URL and query string
|
-- | Override the rendering function for a particular URL and query string
|
||||||
-- parameters. One use case for this is to offload static hosting to a
|
-- parameters. One use case for this is to offload static hosting to a
|
||||||
-- different domain name to avoid sending cookies.
|
-- different domain name to avoid sending cookies.
|
||||||
@ -117,15 +110,7 @@ class RenderRoute site => Yesod site where
|
|||||||
-> Route site
|
-> Route site
|
||||||
-> [(T.Text, T.Text)] -- ^ query string
|
-> [(T.Text, T.Text)] -- ^ query string
|
||||||
-> Maybe Builder
|
-> Maybe Builder
|
||||||
urlParamRenderOverride y route params = addParams params <$> urlRenderOverride y route
|
urlParamRenderOverride _ _ _ = Nothing
|
||||||
where
|
|
||||||
addParams [] routeBldr = routeBldr
|
|
||||||
addParams nonEmptyParams routeBldr =
|
|
||||||
let routeBS = toLazyByteString routeBldr
|
|
||||||
qsSeparator = if BL8.elem '?' routeBS then "&" else "?"
|
|
||||||
valueToMaybe t = if t == "" then Nothing else Just t
|
|
||||||
queryText = map (id *** valueToMaybe) nonEmptyParams
|
|
||||||
in routeBldr `mappend` qsSeparator `mappend` renderQueryText False queryText
|
|
||||||
|
|
||||||
-- | Determine if a request is authorized or not.
|
-- | Determine if a request is authorized or not.
|
||||||
--
|
--
|
||||||
@ -276,22 +261,11 @@ class RenderRoute site => Yesod site where
|
|||||||
|
|
||||||
-- | Should we log the given log source/level combination.
|
-- | Should we log the given log source/level combination.
|
||||||
--
|
--
|
||||||
-- Default: the 'defaultShouldLog' function.
|
-- Default: the 'defaultShouldLogIO' function.
|
||||||
shouldLog :: site -> LogSource -> LogLevel -> Bool
|
|
||||||
shouldLog _ = defaultShouldLog
|
|
||||||
|
|
||||||
-- | Should we log the given log source/level combination.
|
|
||||||
--
|
|
||||||
-- Note that this is almost identical to @shouldLog@, except the result
|
|
||||||
-- lives in @IO@. This allows you to dynamically alter the logging level of
|
|
||||||
-- your application by having this result depend on, e.g., an @IORef@.
|
|
||||||
--
|
|
||||||
-- The default implementation simply uses @shouldLog@. Future versions of
|
|
||||||
-- Yesod will remove @shouldLog@ and use this method exclusively.
|
|
||||||
--
|
--
|
||||||
-- Since 1.2.4
|
-- Since 1.2.4
|
||||||
shouldLogIO :: site -> LogSource -> LogLevel -> IO Bool
|
shouldLogIO :: site -> LogSource -> LogLevel -> IO Bool
|
||||||
shouldLogIO a b c = return (shouldLog a b c)
|
shouldLogIO _ = defaultShouldLogIO
|
||||||
|
|
||||||
-- | A Yesod middleware, which will wrap every handler function. This
|
-- | A Yesod middleware, which will wrap every handler function. This
|
||||||
-- allows you to run code before and after a normal handler.
|
-- allows you to run code before and after a normal handler.
|
||||||
@ -328,7 +302,6 @@ class RenderRoute site => Yesod site where
|
|||||||
<h1>#{title}
|
<h1>#{title}
|
||||||
^{body}
|
^{body}
|
||||||
|]
|
|]
|
||||||
{-# DEPRECATED urlRenderOverride "Use urlParamRenderOverride instead" #-}
|
|
||||||
|
|
||||||
-- | Default implementation of 'makeLogger'. Sends to stdout and
|
-- | Default implementation of 'makeLogger'. Sends to stdout and
|
||||||
-- automatically flushes on each write.
|
-- automatically flushes on each write.
|
||||||
@ -365,15 +338,8 @@ defaultMessageLoggerSource ckLoggable logger loc source level msg = do
|
|||||||
-- above 'LevelInfo'.
|
-- above 'LevelInfo'.
|
||||||
--
|
--
|
||||||
-- Since 1.4.10
|
-- Since 1.4.10
|
||||||
defaultShouldLog :: LogSource -> LogLevel -> Bool
|
|
||||||
defaultShouldLog _ level = level >= LevelInfo
|
|
||||||
|
|
||||||
-- | A default implementation of 'shouldLogIO' that can be used with
|
|
||||||
-- 'defaultMessageLoggerSource'. Just uses 'defaultShouldLog'.
|
|
||||||
--
|
|
||||||
-- Since 1.4.10
|
|
||||||
defaultShouldLogIO :: LogSource -> LogLevel -> IO Bool
|
defaultShouldLogIO :: LogSource -> LogLevel -> IO Bool
|
||||||
defaultShouldLogIO a b = return $ defaultShouldLog a b
|
defaultShouldLogIO _ level = return $ level >= LevelInfo
|
||||||
|
|
||||||
-- | Default implementation of 'yesodMiddleware'. Adds the response header
|
-- | Default implementation of 'yesodMiddleware'. Adds the response header
|
||||||
-- \"Vary: Accept, Accept-Language\" and performs authorization checks.
|
-- \"Vary: Accept, Accept-Language\" and performs authorization checks.
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user