module Network.HTTP.Lucu.Config ( Config(..) , defaultConfig -- Config ) where import qualified Data.Map as M import Data.Map (Map) import Network import Network.BSD import Network.HTTP.Lucu.MIMEType import Network.HTTP.Lucu.MIMEType.DefaultExtensionMap import System.IO.Unsafe data Config = Config { cnfServerSoftware :: String , cnfServerHost :: HostName , cnfServerPort :: PortID , cnfMaxPipelineDepth :: Int , cnfMaxEntityLength :: Int , cnfMaxURILength :: Int , cnfMaxOutputChunkLength :: Int , cnfExtToMIMEType :: Map String MIMEType } defaultConfig = Config { cnfServerSoftware = "Lucu/1.0" , cnfServerHost = unsafePerformIO getHostName , cnfServerPort = Service "http" , cnfMaxPipelineDepth = 100 , cnfMaxEntityLength = 16 * 1024 * 1024 -- 16 MiB , cnfMaxURILength = 4 * 1024 -- 4 KiB , cnfMaxOutputChunkLength = 5 * 1024 * 1024 -- 5 MiB , cnfExtToMIMEType = defaultExtensionMap }