The tsession package

[ Tags: bsd3, library, web ] [ Propose Tags ]

The concept of this web transaction framework is influenced by sessions, transactions and software transactional memory. To web-developers it offers sessions with integrated transaction management that has an included server-side storage of key-value pairs. The transactions can be spanned over multiple web requests and only affect the database when a commit is instructed. Additionally, the sessions have access to the (not yet committed) key-value pairs and the status (e.g., the last requested page) of all other sessions that are active. As sessions have to be canceled after a given timeout, the framework has a garbage collector that safely cleans up the timed out sessions. The framework introduces a monad which encapsulates all the logic of the transactions and frees them of side effects. This is a concept known from the STM--monad and like in STM, the transactions cannot dead-lock each other.

For more information check my master thesis:

http://stud.micheler.net/master.pdf

Properties

Versions 0.1
Dependencies base (>4 && <5), containers (>0.4), mtl, time, transformers [details]
License BSD3
Copyright 2014 Florian Micheler
Author Florian Micheler <hackage@micheler.net>
Maintainer Florian Micheler <hackage@micheler.net>
Category Web
Uploaded Sun Jun 22 21:26:41 UTC 2014 by FlorianMicheler
Updated Sun Jun 22 21:56:07 UTC 2014 by FlorianMicheler to revision 2
Distributions NixOS:0.1
Downloads 326 total (4 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
Last success reported on 2015-05-21 [all 5 reports]
Hackage Matrix CI

Modules

  • Control
    • Control.TSession

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

For package maintainers and hackage trustees