summaryrefslogtreecommitdiff
path: root/src/Hakyll/Core/Resource/Provider
diff options
context:
space:
mode:
authorJasper Van der Jeugt <jaspervdj@gmail.com>2011-04-06 09:30:24 +0200
committerJasper Van der Jeugt <jaspervdj@gmail.com>2011-04-06 09:30:24 +0200
commit3d2b2506d040546d74e83f6d9b8b4e0c45026f09 (patch)
tree60e5b351ac6e3b08fadce7b699aa734b1c6f1cbc /src/Hakyll/Core/Resource/Provider
parent015663657ceca7b168bf7d91fbc2fccc41c40904 (diff)
downloadhakyll-3d2b2506d040546d74e83f6d9b8b4e0c45026f09.tar.gz
Move modified cache to resource provider
Currently, it's kept twice: in Run and in the Provider. On the long term, it should be migrated entirely to the Provider, this can be done when the new dependency manager is finished.
Diffstat (limited to 'src/Hakyll/Core/Resource/Provider')
-rw-r--r--src/Hakyll/Core/Resource/Provider/File.hs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/Hakyll/Core/Resource/Provider/File.hs b/src/Hakyll/Core/Resource/Provider/File.hs
index a795fac..953d61c 100644
--- a/src/Hakyll/Core/Resource/Provider/File.hs
+++ b/src/Hakyll/Core/Resource/Provider/File.hs
@@ -5,6 +5,8 @@ module Hakyll.Core.Resource.Provider.File
) where
import Control.Applicative ((<$>))
+import Control.Concurrent (newMVar)
+import qualified Data.Map as M
import qualified Data.ByteString.Lazy as LB
@@ -22,9 +24,13 @@ fileResourceProvider configuration = do
list <- map parseIdentifier . filter (not . ignoreFile configuration) <$>
getRecursiveContents False "."
+ -- MVar for the cache
+ mvar <- newMVar M.empty
+
-- Construct a resource provider
return ResourceProvider
{ resourceList = map Resource list
, resourceString = readFile . toFilePath . unResource
, resourceLazyByteString = LB.readFile . toFilePath . unResource
+ , resourceModifiedCache = mvar
}