Copyright | (c) 2016, Drew Hess |
---|---|
License | BSD3 |
Maintainer | Drew Hess <src@drewhess.com> |
Stability | experimental |
Portability | non-portable |
Safe Haskell | Safe |
Language | Haskell2010 |
In mellon-core
, controllers are the intermediary between the
mellon-core
state machine, the physical access device, and the user
who wants to control the device. The user interacts directly only with
the controller, not with the physical access device or the state
machine.
A controller provides two commands to the user: lock and unlock.
User lock commands are effective immediately, and the device remains
locked until the user runs a subsequent unlock command. User unlock
commands are effective immediately, but also take a UTCTime
argument
that specifies the date at which the controller will automatically
lock the device again.
A controller's behavior is determined by the mellon-core
state
machine. See the Mellon.StateMachine module for a detailed
description of the state machine's operation.
This module re-exports the default (and, currently, only) controller implementation.
Documentation
module Mellon.Controller.Async