]> git.immae.eu Git - github/fretlink/edi-parser.git/blob - scaffolder/src/Text/Edifact/Fetcher/Simples.hs
Release code as open source
[github/fretlink/edi-parser.git] / scaffolder / src / Text / Edifact / Fetcher / Simples.hs
1 {-# LANGUAGE OverloadedStrings #-}
2
3 module Text.Edifact.Fetcher.Simples
4 ( fetchSimples
5 , simplesDirectory
6 ) where
7
8 import Text.Edifact.Fetcher.Commons
9 import Text.Edifact.Scaffolder.Commons
10
11
12 import Data.Foldable (traverse_)
13 import Data.Text.Encoding as TE (decodeUtf8)
14 import Formatting
15
16 simplesDirectory :: FilePath
17 simplesDirectory = "simples"
18
19 fetchSimples :: [SimpleCode] -> Fetcher ()
20 fetchSimples = traverse_ (retry 3 . fetchSimple)
21
22 fetchSimple :: SimpleCode -> Fetcher ()
23 fetchSimple code = do
24 say ("Fetching simple " % fSimpleCode) code
25 url <- getUrl ("/uncl/uncl" % fSimpleCodeLower % ".htm") code
26 outputFile <- getOutputFile (fSimpleCodeLower % ".txt") simplesDirectory code
27 htmlToFile url TE.decodeUtf8 outputFile