summaryrefslogtreecommitdiff
path: root/src/Hakyll/Web/Preview/Interval.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Hakyll/Web/Preview/Interval.hs')
-rw-r--r--src/Hakyll/Web/Preview/Interval.hs36
1 files changed, 0 insertions, 36 deletions
diff --git a/src/Hakyll/Web/Preview/Interval.hs b/src/Hakyll/Web/Preview/Interval.hs
deleted file mode 100644
index 5ab90e5..0000000
--- a/src/Hakyll/Web/Preview/Interval.hs
+++ /dev/null
@@ -1,36 +0,0 @@
--- | Interval-based implementation of preview polling, for the platforms which
--- are not supported by inotify.
---
-module Hakyll.Web.Preview.Interval
- ( previewPoll
- ) where
-
-import Control.Applicative ((<$>))
-import Control.Concurrent (threadDelay)
-import Control.Monad (when)
-import System.Time (getClockTime)
-import Data.Set (Set)
-import qualified Data.Set as S
-import System.Directory (getModificationTime)
-
-import Hakyll.Core.Configuration
-import Hakyll.Core.Identifier
-import Hakyll.Core.ResourceProvider
-
--- | A preview thread that periodically recompiles the site.
---
-previewPoll :: HakyllConfiguration -- ^ Configuration
- -> Set Resource -- ^ Resources to watch
- -> IO () -- ^ Action called when something changes
- -> IO () -- ^ Can block forever
-previewPoll _ resources callback = do
- let files = map (toFilePath . unResource) $ S.toList resources
- time <- getClockTime
- loop files time
- where
- delay = 1000000
- loop files time = do
- threadDelay delay
- modified <- any (time <) <$> mapM getModificationTime files
- when modified callback
- loop files =<< getClockTime