]> gitweb @ CieloNegro.org - Lucu.git/commitdiff
Fixing examples...
authorPHO <pho@cielonegro.org>
Thu, 13 Oct 2011 13:56:44 +0000 (22:56 +0900)
committerPHO <pho@cielonegro.org>
Thu, 13 Oct 2011 13:56:44 +0000 (22:56 +0900)
Ditz-issue: 8959dadc07db1bd363283dee401073f6e48dc7fa

examples/HelloWorld.hs
examples/Implanted.hs
examples/ImplantedSmall.hs
examples/Makefile

index dacd4c363604b4694430c6dcf68e91e0ea91d7b9..7515347cfedfd2fd385f326f0dbf2d9941ab826a 100644 (file)
@@ -1,40 +1,42 @@
+{-# LANGUAGE
+    OverloadedStrings
+  , UnicodeSyntax
+  #-}
+import Control.Applicative
+import Control.Monad.Unicode
+import qualified Data.ByteString.Lazy.Char8 as Lazy
+import Data.Monoid.Unicode
 import Network.HTTP.Lucu
 
-main :: IO ()
+main  IO ()
 main = let config    = defaultConfig { cnfServerPort = "9999" }
-           resources = mkResTree [ ( []
-                                   , helloWorld )
-
-                                 , ( ["urandom"]
-                                   , staticFile "/dev/urandom" )
-
-                                 , ( ["inc"]
-                                   , staticDir "/usr/include" )
-                                 ]
-           fallbacks = [ \ path -> case path of
-                                     ["hello"] -> return $ Just helloWorld
-                                     _         -> return Nothing
+           resources = mkResTree
+                       [ ([]         , helloWorld               )
+                       , (["urandom"], staticFile "/dev/urandom")
+                       , (["inc"    ], staticDir "/usr/include" )
+                       ]
+           fallbacks = [ \ path → case path of
+                                     ["hello"] → return $ Just helloWorld
+                                     _         → return Nothing
                        ]
        in
          do putStrLn "Access http://localhost:9999/ with your browser."
             runHttpd config resources fallbacks
 
 
-helloWorld :: ResourceDef
+helloWorld  ResourceDef
 helloWorld
     = emptyResource {
         resGet
-          = Just $ do --time <- liftIO $ getClockTime
-                      --foundEntity (strongETag "abcde") time
-                      setContentType $ read "text/hello"
+          = Just $ do setContentType $ parseMIMEType "text/hello"
                       outputChunk "Hello, "
                       outputChunk "World!\n"
-                      outputChunk =<< getRemoteAddr'
+                      outputChunk =≪ Lazy.pack <$> getRemoteAddr'
                       
       , resPost
-          = Just $ do str1 <- inputChunk 3
-                      str2 <- inputChunk 3
-                      str3 <- inputChunk 3
-                      setContentType $ read "text/hello"
-                      output ("[" ++ str1 ++ " - " ++ str2 ++ "#" ++ str3 ++ "]")
+          = Just $ do str1  inputChunk 3
+                      str2  inputChunk 3
+                      str3  inputChunk 3
+                      setContentType $ parseMIMEType "text/hello"
+                      output ("[" ⊕ str1 ⊕ " - " ⊕ str2 ⊕ "#" ⊕ str3 ⊕ "]")
       }
\ No newline at end of file
index 68423086a2472ac51fa1d777ecf9ac412fbe2a97..82d98e74d4c7a683f255fca5b0e2565eb5945ec6 100644 (file)
@@ -1,10 +1,12 @@
+{-# LANGUAGE
+    UnicodeSyntax
+  #-}
 import MiseRafturai
 import Network.HTTP.Lucu
 
-main :: IO ()
+main  IO ()
 main = let config    = defaultConfig { cnfServerPort = "9999" }
            resources = mkResTree [ ([], miseRafturai) ]
        in
          do putStrLn "Access http://localhost:9999/ with your browser."
             runHttpd config resources []
-                                   
\ No newline at end of file
index af35b6320979db7d247649b90e3041e66ee1e4bb..a985cae482d20037d125cda916bd3dbef756f33b 100644 (file)
@@ -1,7 +1,10 @@
+{-# LANGUAGE
+    UnicodeSyntax
+  #-}
 import Network.HTTP.Lucu
 import SmallFile
 
-main :: IO ()
+main  IO ()
 main = let config    = defaultConfig { cnfServerPort = "9999" }
            resources = mkResTree [ ([], smallFile) ]
        in
index 26d6670f49a5c2d4df6cd5cbabf0e5c134f6f1a4..0902512ce6eba5e77918566db661895ee728266a 100644 (file)
@@ -1,29 +1,32 @@
 TARGETS = \
        HelloWorld \
-       MiseRafturai \
        Implanted \
        ImplantedSmall \
        Multipart \
        SSL \
        $(NULL)
 
+IMPLANT ?= ../dist/build/lucu-implant-file/lucu-implant-file
+
 build: $(TARGETS)
 
 %: %.hs
-       ghc --make $@ -threaded -O3 -Wall
+       ghc -Wall --make $@ -threaded -O3 -idist -odir dist -hidir dist
 
 run: build
        ./HelloWorld
 
 clean:
-       rm -f $(TARGETS) *.hi *.o MiseRafturai.hs SmallFile.hs
-
-MiseRafturai.hs: mise-rafturai.html
-       lucu-implant-file -m MiseRafturai -o $@ $<
+       rm -rf $(TARGETS) dist
 
-ImplantedSmall.hs: SmallFile.hs
+Implanted.hs: dist/MiseRafturai.hs
+dist/MiseRafturai.hs: mise-rafturai.html $(IMPLANT)
+       mkdir -p dist
+       $(IMPLANT) -m MiseRafturai -o $@ $<
 
-SmallFile.hs: small-file.txt
-       lucu-implant-file -m SmallFile -o $@ $<
+ImplantedSmall.hs: dist/SmallFile.hs
+dist/SmallFile.hs: small-file.txt $(IMPLANT)
+       mkdir -p dist
+       $(IMPLANT) -m SmallFile -o $@ $<
 
 .PHONY: build run clean