X-Git-Url: http://git.cielonegro.org/gitweb.cgi?a=blobdiff_plain;ds=sidebyside;f=Rakka%2FResource%2FObject.hs;fp=Rakka%2FResource%2FObject.hs;h=3a98b1e262810fdb403ac69c81fb7bb2fda9a7a6;hb=42f51754dea02201aececaacbf194d714cd58aaf;hp=d4db7db60e8c894ac77e4bf142411c7e76fa3996;hpb=98fd1cb53a837a9bda7145544c34872acb13a634;p=Rakka.git diff --git a/Rakka/Resource/Object.hs b/Rakka/Resource/Object.hs index d4db7db..3a98b1e 100644 --- a/Rakka/Resource/Object.hs +++ b/Rakka/Resource/Object.hs @@ -1,33 +1,35 @@ --- -*- Coding: utf-8 -*- +{-# LANGUAGE + UnicodeSyntax + #-} module Rakka.Resource.Object ( resObject ) where - import qualified Codec.Binary.UTF8.String as UTF8 +import Control.Monad.Unicode +import qualified Data.Text as T import Network.HTTP.Lucu +import Prelude.Unicode import Rakka.Environment import Rakka.Page import Rakka.Storage import Rakka.SystemConfig import System.FilePath.Posix - -resObject :: Environment -> ResourceDef +resObject ∷ Environment → ResourceDef resObject env = ResourceDef { resUsesNativeThread = False , resIsGreedy = True - , resGet = Just $ getPathInfo >>= handleGet env . toPageName + , resGet = Just $ getPathInfo ≫= handleGet env ∘ toPageName , resHead = Nothing , resPost = Nothing , resPut = Nothing , resDelete = Nothing } where - toPageName :: [String] -> PageName - toPageName = UTF8.decodeString . joinPath - + toPageName ∷ [String] → PageName + toPageName = T.pack ∘ UTF8.decodeString . joinPath handleGet :: Environment -> PageName -> Resource () handleGet env name