aboutsummaryrefslogtreecommitdiff
path: root/src/package.lisp
blob: ca8c1b089ae67a3fac8bc36ebc27b27f50523f30 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
;;;; package.lisp

;; any backend must implement functions for these
;; use the hunchentoot backend as a reference 
(defpackage #:lazybones-backend
  (:export
   ;; request functions
   #:request-url
   #:request-path
   #:request-host
   #:request-port
   #:request-query-string
   #:request-parameter
   #:request-parameters
   #:request-headers 
   #:request-header
   #:request-method
   #:request-body
   #:request-cookie
   ;; resposne functions
   #:response-header
   #:response-code
   #:set-response-cookie
   #:response-cookie
   #:http-respond
   ;; server functions
   #:install-app
   #:uninstall-app
   #:create-server
   #:server-domain
   #:start-server
   #:stop-server
   #:canned-response
   #:set-canned-response
   ;; special variables
   #:*allowed-keywords*
   ))

;; the symbols exported here are available for end users to use in the
;; building of their apps
(defpackage #:lazybones
  (:use #:cl #:lazybones-backend)
  (:local-nicknames (#:a #:alexandria)
                    (#:re #:cl-ppcre))
  (:export
   #:*app*
   #:*request*
   #:*response*
   #:*debugging*
   #:*allowed-keywords*
   #:http-error
   #:provision-app
   #:app
   #:canned-response
   #:set-canned-response
   #:create-server
   #:defendpoint
   #:defendpoint*
   #:endpoint
   #:endpoint-method
   #:endpoint-route
   #:endpoint-params
   #:endpoint-content-type
   #:endpoint-dispatch-pattern
   #:endpoint-route-variables
   #:endpoint-body-variables
   #:app-endpoints
   #:let-parameters
   #:map-parameters
   #:http-err
   #:http-redirect
   #:http-respond
   #:install-app
   #:request-body
   #:request-cookie
   #:request-header
   #:request-headers 
   #:request-host
   #:request-method
   #:request-parameter
   #:request-parameters
   #:request-path
   #:request-port
   #:request-query-string
   #:request-url
   #:response-code
   #:set-response-cookie
   #:response-cookie
   #:response-header
   #:start-server
   #:stop-server
   #:uninstall-app
   #:set-definition
   #:drop-definition
   #:add-class-to-definitions
   #:ext->mimetype
   #:dictionary))