MESSAGE (TYPE BODY)
sends a message to the client
asserts that we're currently running in an environment which is sane for intercom requests/executions
CALL-REMOTE-PROCEDURE (RID NAME &REST ARGS)
calls the remote prodecure with name <name> and <args> as the arguments with <rid> as reference. assumes the special variable *store* exists
fetches and clears the messages in the mailbox
returns the remote procedure for <name> or nil if the procedure doesn't exist.
returns non-nil if we are currently in a remote procedure with an active rid.
returns <variable> from the session in *store*
MAKE-REMOTE-PROCEDURE-LAMBDA-FUNCTION (ARGUMENTS BODY)
builds the s-expression representation for the lambda function which can be called for the definition of a remote procedure. this handles the creation of the &key arguments.
closes the request for the rid.
performs an intercom request as described by <jsown-request>.
REGISTER-REMOTE-PROCEDURE (NAME FUNCTION)
registers the remote procedure for <name> to be <function>.
removes the <rid> from the list of active rids
returns non-nil iff <rid> is active for the current user.
sets <rid> to be active
SETFINTERCOM-VAR (VALUE VARIABLE)
DEFINE-REMOTE-PROCEDURE (NAME (&REST ARGUMENTS) &BODY BODY)
defines a remote procedure with <name> as the name to be called and <arguments> as the assumed arguments. if <name> is a symbol with only non- lower-case-p characters, then it is converted to lowercase.
IN-INTERCOM-SESSION (&BODY BODY)
executes a hunchentoot request in an environment in which *store* is bound to the current store.
WITH-SESSION-LOCK ((PROTECTION-SYMBOL) &BODY BODY)
executes <body> in a piece of code in which the session is locked
contains all intercom remote procedures, the keywords being the matched string and the values being the corresponding function.
variable which contains the request id in functions which represent the execution of a remote procedure.
contains a key-value store for the variables which *should* be in the session