module Eternity.Potoki.Consume
where
import Eternity.Prelude hiding (fold)
import Potoki.Consume
import qualified Eternity.IO.FileNames as D
import qualified Potoki.Cereal.Transform as E
writeToFile :: Serialize event => FilePath -> Consume event (Either IOException ())
writeToFile =
transform E.encode . writeBytesToFile
writeToDir :: Serialize event => FilePath -> Consume event (Either IOException ())
writeToDir path =
liftIO (D.determineNextEventFilePath path) >>=
traverse (transform E.encode . writeBytesToFile) >>=
return . join