packages feed

salvia-0.1: src/Network/Salvia/Handler/Counter.hs

module Network.Salvia.Handler.Counter (hCounter) where

import Control.Concurrent.STM
import Control.Monad.State
import Network.Salvia.Httpd

{- | This handler simply increases the request counter variable. -}

hCounter :: TVar Int -> Handler ()
hCounter c = lift $ atomically $ readTVar c >>= writeTVar c . (+1)