1--------------------------------------------------------------------------------
2module Hakyll.Core.Provider.MetadataCache
5 , resourceInvalidateMetadataCache
9--------------------------------------------------------------------------------
10import Hakyll.Core.Identifier
11import Hakyll.Core.Metadata
12import Hakyll.Core.Provider.Internal
13import Hakyll.Core.Provider.Metadata
14import qualified Hakyll.Core.Store as Store
17--------------------------------------------------------------------------------
18resourceMetadata :: Provider -> Identifier -> IO Metadata
19resourceMetadata p r = do
21 Store.Found md <- Store.get (providerStore p)
22 [name, toFilePath r, "metadata"]
26--------------------------------------------------------------------------------
27resourceBody :: Provider -> Identifier -> IO String
30 Store.Found bd <- Store.get (providerStore p)
31 [name, toFilePath r, "body"]
32 maybe (resourceString r) return bd
35--------------------------------------------------------------------------------
36resourceInvalidateMetadataCache :: Provider -> Identifier -> IO ()
37resourceInvalidateMetadataCache p r = do
38 Store.delete (providerStore p) [name, toFilePath r, "metadata"]
39 Store.delete (providerStore p) [name, toFilePath r, "body"]
42--------------------------------------------------------------------------------
43load :: Provider -> Identifier -> IO ()
45 mmd <- Store.get store mdk :: IO (Store.Result Metadata)
48 Store.Found _ -> return ()
51 (metadata, body) <- loadMetadata p r
52 Store.set store mdk metadata
53 Store.set store bk body
55 store = providerStore p
56 mdk = [name, toFilePath r, "metadata"]
57 bk = [name, toFilePath r, "body"]
60--------------------------------------------------------------------------------
62name = "Hakyll.Core.Resource.Provider.MetadataCache"
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list