Common Lisp Package: MODLISP

README:

FUNCTION

Public

HEADER-VALUE (HEADER KEY)

Returns the value of a modlisp header

QUERY-TO-ALIST (POSTED-STRING &KEY (KEYWORD T))

Converts a posted string to an assoc list of keyword names and values, "a=1&bc=demo" => ((:a . "1") (:bc . "demo"))

Undocumented

MODLISP-START (&KEY (PORT +DEFAULT-MODLISP-PORT+) (PROCESSOR 'DEMO-MODLISP-COMMAND-PROCESSOR) (PROCESSOR-ARGS NIL) (CATCH-ERRORS T) TIMEOUT NUMBER-FIXED-WORKERS REMOTE-HOST-CHECKER)

MODLISP-STOP (SERVER)

MODLISP-STOP-ALL

OUTPUT-HTML-PAGE (STR &KEY HEADERS)

OUTPUT-XML-PAGE (STR &KEY HEADERS)

REDIRECT-TO-LOCATION (URL)

WRITE-HEADER-LINE (KEY VALUE)

Private

DEMO-MODLISP-COMMAND-PROCESSOR (COMMAND)

Sample function to process an modlisp command

MODLISP-COMMAND-ISSUER (*MODLISP-SOCKET* SERVER)

generates commands from modlisp, issues commands to processor-fun

Undocumented

FETCH-MOD-LISP-URL (SERVER URL &KEY (NUM-FETCH 1) (PORT 20123) CLOSE-SOCKET)

FIXED-HTML-STRING

FORMAT->STRING (FMT)

FORMAT-STRING (FMT HEADERS)

READ-MODLISP-COMMAND

READ-MODLISP-HEADER

READ-MODLISP-LINE

READ-REPLY (SOCKET)

WRITE-DEBUG-TABLE (COMMAND)

WRITE-PRECOMPUTED-PAGE

WRITE-REQUEST-COUNTS (S)

MACRO

Public

Undocumented

OUTPUT-ML-PAGE (FORMAT HTML &KEY HEADERS)

WITH-ML-PAGE ((&KEY (FORMAT HTML) (PRECOMPUTE T) HEADERS) &BODY BODY)

Private

Undocumented

WRITE-RESPONSE ((&KEY HEADERS LEN (STATUS 200 OK)) &BODY BODY)

SLOT-ACCESSOR

Private

Undocumented

PORT (OBJECT)

SETFPORT (NEW-VALUE OBJECT)

PROCESSOR (OBJECT)

SETFPROCESSOR (NEW-VALUE OBJECT)

PROCESSOR-ARGS (OBJECT)

SETFPROCESSOR-ARGS (NEW-VALUE OBJECT)

VARIABLE

Public

*CLOSE-MODLISP-SOCKET*

whether to close the modlisp socket at the end of this request

*ML-SERVER*

Current ml-server instance

*MODLISP-SOCKET*

the socket stream to modlisp

*NUMBER-SERVER-REQUESTS*

number of requests for the server

*NUMBER-WORKER-REQUESTS*

number of requests for this worker process

CLASS

Private

Undocumented

ML-SERVER

CONSTANT

Private

+DEFAULT-MODLISP-PORT+

Default port for listen