diff options
author | colin <colin@cicadas.surf> | 2022-12-28 12:56:20 -0800 |
---|---|---|
committer | colin <colin@cicadas.surf> | 2022-12-28 12:56:20 -0800 |
commit | ab0d667b3776786461d15112b648aafc3f00280f (patch) | |
tree | fe6224e48667f3a620033c5660e6bf63b34c5576 /dnd.lisp | |
parent | 72bcf7e66269af588d9daa9064de23d257cbd053 (diff) |
Refactor: to embrace the new dnd.api package more fully
The defendpoint* form installs the new endpoint into the default app,
which is just hte name of the package. In this case, the GET "/heroes"
endpoint is installed into the app called 'dnd.api:dnd.api
It is a bit wierd but that's the full name of the app that you'll need
to install into your http server instances.
I moved *dnd-arena* to the dnd package b/c the site/view app will also
be installed there. In addition, the conjure-arena function should
also be part of the "top level" dnd package.
In the package.lisp file, I reformatted the file a bit for
legibility. More importantly, I exported dnd.api and init-db from the
dnd.api package. In particular, the second export sends a clear signal
that the view/site code will not touch the model at all.
Diffstat (limited to 'dnd.lisp')
-rw-r--r-- | dnd.lisp | 16 |
1 files changed, 16 insertions, 0 deletions
@@ -1,3 +1,19 @@ ;;;; dnd.lisp (in-package #:dnd) + + +(defvar *dnd-arena* nil + "The instance of the HTTP server.") + +(defun conjure-arena () + (setf *dnd-arena* (lzb:create-server)) + (lzb:install-app + *dnd-arena* + (lzb:app 'dnd.api:dnd.api)) ; annoying but needed for now + (lzb:start-server *dnd-arena*)) + + +(defun start () + (api:init-db) + (conjure-arena)) |