]> gitweb @ CieloNegro.org - Rakka.git/blobdiff - Rakka/Environment.hs
wrote much code...
[Rakka.git] / Rakka / Environment.hs
index 881a9e69ef40fe3f8023fb81aafc80bb90f08b2f..015d37d43fda667574f42886fd7b9c2b8a3a4180 100644 (file)
@@ -1,28 +1,20 @@
 module Rakka.Environment
     ( Environment(..)
     , setupEnv
-
-    , getSiteName
-    , getSiteNameA
-
-    , getBaseURI
-    , getBaseURIA
     )
     where
 
-import           Control.Arrow.ArrowIO
-import qualified Data.ByteString.Char8 as C8
-import           Data.Maybe
 import           Network
 import qualified Network.HTTP.Lucu.Config as LC
-import           Network.URI
 import           Rakka.Storage
+import           Rakka.SystemConfig
 
 
 data Environment = Environment {
-      envLocalStateDir :: FilePath
-    , envLucuConf      :: LC.Config
-    , envStorage       :: Storage
+      envLocalStateDir :: !FilePath
+    , envLucuConf      :: !LC.Config
+    , envStorage       :: !Storage
+    , envSysConf       :: !SystemConfig
     }
 
 
@@ -31,38 +23,9 @@ setupEnv lsdir portNum
     = do let lucuConf = LC.defaultConfig {
                           LC.cnfServerPort = PortNumber portNum
                         }
-         storage <- mkStorage -- FIXME
          return $ Environment {
                       envLocalStateDir = lsdir
                     , envLucuConf      = lucuConf
-                    , envStorage       = storage
+                    , envStorage       = mkStorage
+                    , envSysConf       = mkSystemConfig lucuConf
                     }
-
-
-getSiteName :: Environment -> IO String
-getSiteName env
-    = return "Rakka" -- FIXME
-
-
-getSiteNameA :: ArrowIO a => Environment -> a b String
-getSiteNameA = arrIO0 . getSiteName
-
-
-getBaseURI :: Environment -> IO URI
-getBaseURI env
-    = do let conf = envLucuConf env
-             host = C8.unpack $ LC.cnfServerHost conf
-             port = case LC.cnfServerPort conf of
-                      PortNumber num -> fromIntegral num
-             
-             defaultURI
-                  = "http://" ++ host ++
-                    (if port == 80
-                     then ""
-                     else ':' : show port) ++ "/"
-
-         return $ fromJust $ parseURI defaultURI -- FIXME
-
-
-getBaseURIA :: ArrowIO a => Environment -> a b URI
-getBaseURIA = arrIO0 . getBaseURI
\ No newline at end of file