)
where
-import Control.Monad.Trans
import Data.Maybe
import Network.HTTP.Lucu
import Rakka.Environment
import Text.XML.HXT.Arrow
+-- FIXME:
+-- GET /systemConfig ==> 全設定値を返す
+-- GET /systemConfig/siteName ==> siteName を返す
+-- PUT /systemConfig/siteName ==> siteName を設定
resSystemConfig :: Environment -> ResourceDef
resSystemConfig env
= ResourceDef {
-}
handleGet :: Environment -> Resource ()
handleGet env
- = do setContentType $ read "text/xml"
- [xmlStr] <- liftIO $ runX ( setErrorMsgHandler False fail
- >>>
- mkSystemConfigTree env
- >>>
- writeDocumentToString [ (a_indent, v_1) ]
- )
- output xmlStr
+ = runIdempotentA' $ proc ()
+ -> do tree <- mkSystemConfigTree env -< ()
+ returnA -< outputXml tree
mkSystemConfigTree :: (ArrowXml a, ArrowIO a) => Environment -> a b XmlTree