warp-static (empty) → 0.0.0
raw patch · 4 files changed
+79/−0 lines, 4 filesdep +basedep +cmdargsdep +wai-app-staticsetup-changed
Dependencies added: base, cmdargs, wai-app-static, warp
Files
- LICENSE +30/−0
- Setup.hs +2/−0
- warp-static.cabal +19/−0
- warp.hs +28/−0
+ LICENSE view
@@ -0,0 +1,30 @@+Copyright (c)2011, Michael Snoyman++All rights reserved.++Redistribution and use in source and binary forms, with or without+modification, are permitted provided that the following conditions are met:++ * Redistributions of source code must retain the above copyright+ notice, this list of conditions and the following disclaimer.++ * Redistributions in binary form must reproduce the above+ copyright notice, this list of conditions and the following+ disclaimer in the documentation and/or other materials provided+ with the distribution.++ * Neither the name of Michael Snoyman nor the names of other+ contributors may be used to endorse or promote products derived+ from this software without specific prior written permission.++THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ Setup.hs view
@@ -0,0 +1,2 @@+import Distribution.Simple+main = defaultMain
+ warp-static.cabal view
@@ -0,0 +1,19 @@+Name: warp-static+Version: 0.0.0+Synopsis: Static file server based on Warp and wai-app-static+Homepage: http://github.com/snoyberg/warp-static+License: BSD3+License-file: LICENSE+Author: Michael Snoyman+Maintainer: michael@snoyman.com+Category: Web+Build-type: Simple+Cabal-version: >=1.2+++Executable warp+ Main-is: warp.hs+ Build-depends: base >= 4 && < 5+ , warp >= 0.3 && < 0.4+ , wai-app-static >= 0.0 && < 0.1+ , cmdargs >= 0.6.7 && < 0.7
+ warp.hs view
@@ -0,0 +1,28 @@+{-# LANGUAGE DeriveDataTypeable, RecordWildCards #-}+import Network.Wai.Application.Static+ ( StaticSettings (..), staticApp, defaultMimeTypeByExt, defaultListing+ )+import Network.Wai.Handler.Warp (run)+import System.Environment (getArgs)+import System.Console.CmdArgs++data Args = Args+ { docroot :: FilePath+ , index :: [FilePath]+ , port :: Int+ , noindex :: Bool+ }+ deriving (Show, Data, Typeable)++defaultArgs = Args "." ["index.html", "index.htm"] 3000 False++main :: IO ()+main = do+ Args {..} <- cmdArgs defaultArgs+ args <- getArgs+ run port $ staticApp StaticSettings+ { ssFolder = docroot+ , ssIndices = if noindex then [] else index+ , ssListing = Just defaultListing+ , ssGetMimeType = return . defaultMimeTypeByExt+ }