aboutsummaryrefslogtreecommitdiff
path: root/server/src/Thermoprint/Server/Printer/Debug/Delayed.hs
diff options
context:
space:
mode:
Diffstat (limited to 'server/src/Thermoprint/Server/Printer/Debug/Delayed.hs')
-rw-r--r--server/src/Thermoprint/Server/Printer/Debug/Delayed.hs16
1 files changed, 16 insertions, 0 deletions
diff --git a/server/src/Thermoprint/Server/Printer/Debug/Delayed.hs b/server/src/Thermoprint/Server/Printer/Debug/Delayed.hs
new file mode 100644
index 0000000..c002d43
--- /dev/null
+++ b/server/src/Thermoprint/Server/Printer/Debug/Delayed.hs
@@ -0,0 +1,16 @@
1-- | A printer which blocks for a certain time and writes to log
2module Thermoprint.Server.Printer.Debug.Delayed
3 ( delayedDebugPrint
4 ) where
5
6import Control.Monad.IO.Class
7import Control.Applicative
8
9import Control.Concurrent (threadDelay)
10
11import Thermoprint.Server.Printer
12import Thermoprint.Server.Printer.Debug
13
14delayedDebugPrint :: Int -> PrinterMethod
15-- ^ Wait the given number of microseconds before invoking 'debugPrint'
16delayedDebugPrint wait = PM $ \po -> let (PM debugPrint') = debugPrint in liftIO (threadDelay wait) *> debugPrint' po