racket/collects/web-server/managers/none.rkt
2010-12-07 14:14:55 -07:00

44 lines
1.3 KiB
Racket

#lang racket/base
(require racket/contract)
(require "manager.rkt")
(require web-server/servlet/servlet-structs
web-server/http)
(provide/contract
[create-none-manager
(->
(or/c false/c
(request? . -> . can-be-response?))
manager?)])
(define-struct (none-manager manager) (instance-expiration-handler))
(define (create-none-manager
instance-expiration-handler)
(define (create-instance expire-fn)
0)
(define (adjust-timeout! instance-id secs)
(void))
(define (instance-lookup instance-id)
(raise (make-exn:fail:servlet-manager:no-instance
(format "No instance for id: ~a" instance-id)
(current-continuation-marks)
instance-expiration-handler)))
(define (clear-continuations! instance-id)
(instance-lookup instance-id))
(define (continuation-store! instance-id k expiration-handler)
(instance-lookup instance-id))
(define (continuation-lookup instance-id a-k-id a-salt)
(instance-lookup instance-id))
(make-none-manager create-instance
adjust-timeout!
clear-continuations!
continuation-store!
continuation-lookup
continuation-lookup
; Specific
instance-expiration-handler))