X-Git-Url: http://git.cielonegro.org/gitweb.cgi?a=blobdiff_plain;ds=sidebyside;f=Network%2FHTTP%2FLucu%2FImplant.hs;h=58e2b2e97e618f92dc77027ef1ba033edb9e9894;hb=97295ba;hp=f80ac99cfdbc768bcb0f931ed50f0058b1364129;hpb=cc074d0ce3f7df2544bc2baddca4e7730ecdf0a0;p=Lucu.git diff --git a/Network/HTTP/Lucu/Implant.hs b/Network/HTTP/Lucu/Implant.hs index f80ac99..58e2b2e 100644 --- a/Network/HTTP/Lucu/Implant.hs +++ b/Network/HTTP/Lucu/Implant.hs @@ -17,19 +17,19 @@ module Network.HTTP.Lucu.Implant where import Codec.Compression.GZip import Control.Applicative -import qualified Data.Ascii as A import qualified Data.ByteString.Lazy as L +import Data.Convertible.Base +import Data.Convertible.Instances.Ascii () import Data.Digest.Pure.SHA import Data.Maybe import Data.Time -import Data.Time.Clock.POSIX import Network.HTTP.Lucu.ETag import Network.HTTP.Lucu.MIMEType hiding (mimeType) import Network.HTTP.Lucu.MIMEType.DefaultExtensionMap import Network.HTTP.Lucu.MIMEType.Guess import Network.HTTP.Lucu.MIMEType.TH +import Network.HTTP.Lucu.Utils import Prelude.Unicode -import System.Posix.Files data Input = Input { @@ -77,13 +77,7 @@ openInput fpath ctype etag lastModified ∷ FilePath → IO UTCTime lastModified "-" = getCurrentTime -lastModified fpath = ( posixSecondsToUTCTime - ∘ fromRational - ∘ toRational - ∘ modificationTime - ) - <$> - getFileStatus fpath +lastModified fpath = getLastModified fpath openInputFile ∷ FilePath → IO L.ByteString openInputFile "-" = L.getContents @@ -94,5 +88,5 @@ guessType = guessTypeByFileName defaultExtensionMap mkETagFromInput ∷ L.ByteString → ETag mkETagFromInput input - = strongETag $ A.unsafeFromString + = strongETag $ convertUnsafe $ "SHA-1:" ⧺ showDigest (sha1 input)