X-Git-Url: http://git.cielonegro.org/gitweb.cgi?a=blobdiff_plain;f=Main.hs;h=2ea8ef03d2d0091558e9e786f7b5869685878998;hb=b82b7cb90c3c3666ada1e2a2777c902850f831a2;hp=6621f58a11439ae334923349a75819ff8e042b64;hpb=656fdb2772ab4de5cd083cbe9e7c1610cccef73b;p=Rakka.git diff --git a/Main.hs b/Main.hs index 6621f58..2ea8ef0 100644 --- a/Main.hs +++ b/Main.hs @@ -4,11 +4,19 @@ import Data.List import Data.Maybe import Network import Network.HTTP.Lucu +import OpenSSL import Rakka.Environment +import Rakka.Resource.CheckAuth +import Rakka.Resource.DumpRepos import Rakka.Resource.Index import Rakka.Resource.JavaScript import Rakka.Resource.PageEntity import Rakka.Resource.Object +import Rakka.Resource.Render +import Rakka.Resource.Search +import Rakka.Resource.SystemConfig +-- import Rakka.Resource.TrackBack +import Rakka.Resource.Users import Rakka.Storage import Subversion import System.Console.GetOpt @@ -22,6 +30,8 @@ import System.Posix.Files import System.Posix.Types import System.Posix.User + +logger :: String logger = "Main" @@ -38,7 +48,7 @@ data CmdOpt defaultPort :: PortNumber -defaultPort = fromIntegral 8080 +defaultPort = toEnum 8080 defaultLocalStateDir :: FilePath defaultLocalStateDir = LOCALSTATEDIR -- replaced by CPP @@ -56,7 +66,7 @@ defaultLogLevel = NOTICE options :: [OptDescr CmdOpt] options = [ Option ['p'] ["port"] - (ReqArg (OptPortNum . fromIntegral . read) "NUM") + (ReqArg (OptPortNum . toEnum . read) "NUM") ("Port number to listen. (default: " ++ show defaultPort ++ ")") , Option ['d'] ["localstatedir"] @@ -97,7 +107,8 @@ printUsage = do putStrLn "Usage:" main :: IO () -main = withSubversion $ +main = withOpenSSL $ + withSubversion $ do (opts, nonOpts, errors) <- return . getOpt Permute options =<< getArgs when (not $ null errors) @@ -133,9 +144,18 @@ main = withSubversion $ resTree :: Environment -> ResTree resTree env - = mkResTree [ ([] , resIndex env) - , (["object"], resObject env) - , (["js" ], javaScript ) + = mkResTree [ ([] , resIndex env) + , (["checkAuth" ], resCheckAuth env) + , (["dumpRepos" ], resDumpRepos env) + , (["js" ], javaScript ) + , (["object" ], resObject env) + , (["render" ], resRender env) + , (["search" ], resSearch env) + , (["search.html" ], resSearch env) + , (["search.xml" ], resSearch env) + , (["systemConfig"], resSystemConfig env) + -- , (["trackback" ], resTrackBack env) + , (["users" ], resUsers env) ] @@ -220,4 +240,4 @@ rebuildIndexIfRequested env opts OptRebuildIndex -> True _ -> False) opts when rebuild - $ rebuildIndex (envStorage env) \ No newline at end of file + $ rebuildIndex (envStorage env)