Loading .gitignore 0 → 100644 +2 −0 Original line number Diff line number Diff line .stack-work/ *.cabal README.md 0 → 100644 +1 −0 Original line number Diff line number Diff line # reliable-download Setup.hs 0 → 100644 +2 −0 Original line number Diff line number Diff line import Distribution.Simple main = defaultMain api/Main.hs 0 → 100644 +25 −0 Original line number Diff line number Diff line {-# LANGUAGE OverloadedStrings #-} module Main (main) where import Control.Monad.IO.Class (liftIO) import GHC.Exts (fromList) import Web.Scotty import Data.Aeson (Value(..), toJSON, object, (.=)) import RD.Lib (sha1sum) main :: IO () main = scotty 8082 $ do get "/" $ do json $ Object $ fromList [("ok", Bool True) ,("app", "reliable-download api")] get "/debug/t1" $ do sha1 <- liftIO $ sha1sum "/home/sylecn/persist/cache/ideaIC-2018.1.tar.gz" json $ object ["ok" .= True ,"sha1sum" .= sha1] get "/:word" $ do beam <- param "word" sha1 <- liftIO $ sha1sum beam html $ mconcat ["sha1sum for ", beam, " is ", sha1, "."] client/Main.hs 0 → 100644 +4 −0 Original line number Diff line number Diff line module Main (main) where main :: IO () main = putStrLn "rd command line tool" Loading
Setup.hs 0 → 100644 +2 −0 Original line number Diff line number Diff line import Distribution.Simple main = defaultMain
api/Main.hs 0 → 100644 +25 −0 Original line number Diff line number Diff line {-# LANGUAGE OverloadedStrings #-} module Main (main) where import Control.Monad.IO.Class (liftIO) import GHC.Exts (fromList) import Web.Scotty import Data.Aeson (Value(..), toJSON, object, (.=)) import RD.Lib (sha1sum) main :: IO () main = scotty 8082 $ do get "/" $ do json $ Object $ fromList [("ok", Bool True) ,("app", "reliable-download api")] get "/debug/t1" $ do sha1 <- liftIO $ sha1sum "/home/sylecn/persist/cache/ideaIC-2018.1.tar.gz" json $ object ["ok" .= True ,"sha1sum" .= sha1] get "/:word" $ do beam <- param "word" sha1 <- liftIO $ sha1sum beam html $ mconcat ["sha1sum for ", beam, " is ", sha1, "."]
client/Main.hs 0 → 100644 +4 −0 Original line number Diff line number Diff line module Main (main) where main :: IO () main = putStrLn "rd command line tool"