This is the chillax Reference Manual, version 0.4.1, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Sep 15 03:38:36 2024 GMT+0.
chillax/chillax.asd
chillax.core/chillax.core.asd
chillax.yason/chillax.yason.asd
chillax/src/chillax.lisp
chillax.core/src/utils.lisp
chillax.core/src/core/package.lisp
chillax.core/src/core/server.lisp
chillax.core/src/core/database.lisp
chillax.core/src/core/document.lisp
chillax.core/src/core/design-document.lisp
chillax.yason/src/yason.lisp
The main system appears first, followed by any subsystem dependency.
chillax
CouchDB abstraction layer - Easy-load system with sane defaults
Kat Marchán <kzm@sykosomatic.org>
Kat Marchán <kzm@sykosomatic.org>
MIT
0.4.1
chillax.core
(system).
chillax.yason
(system).
src
(module).
chillax.core
CouchDB abstraction layer - core API and protocols.
Kat Marchán <kzm@sykosomatic.org>
Kat Marchán <kzm@sykosomatic.org>
MIT
alexandria
(system).
flexi-streams
(system).
drakma
(system).
src
(module).
chillax.yason
CouchDB abstraction layer - Implementation of protocols using Yason.
Kat Marchán <kzm@sykosomatic.org>
Kat Marchán <kzm@sykosomatic.org>
MIT
chillax.core
(system).
yason
(system).
src
(module).
Modules are listed depth-first from the system components tree.
chillax.core/src
chillax.core
(system).
utils.lisp
(file).
core
(module).
chillax.core/src/core
utils.lisp
(file).
src
(module).
package.lisp
(file).
server.lisp
(file).
database.lisp
(file).
document.lisp
(file).
design-document.lisp
(file).
chillax.yason/src
chillax.yason
(system).
yason.lisp
(file).
Files are sorted by type and then listed depth-first from the systems components trees.
chillax/chillax.asd
chillax.core/chillax.core.asd
chillax.yason/chillax.yason.asd
chillax/src/chillax.lisp
chillax.core/src/utils.lisp
chillax.core/src/core/package.lisp
chillax.core/src/core/server.lisp
chillax.core/src/core/database.lisp
chillax.core/src/core/document.lisp
chillax.core/src/core/design-document.lisp
chillax.yason/src/yason.lisp
chillax/src/chillax.lisp
src
(module).
*chillax-version*
(special variable).
chillax.core/src/utils.lisp
src
(module).
chillax.core/src/core/server.lisp
package.lisp
(file).
core
(module).
active-tasks
(function).
all-dbs
(function).
config-info
(function).
couch-request
(function).
couchdb-error
(condition).
data->json
(generic function).
get-uuids
(function).
json->data
(generic function).
make-db-object
(generic function).
replicate
(function).
server-host
(generic reader).
server-password
(generic reader).
server-port
(generic reader).
server-secure-p
(generic reader).
server-uri
(function).
server-username
(generic reader).
standard-server
(class).
stats
(function).
unexpected-response
(condition).
+status-codes+
(special variable).
+utf-8+
(special variable).
error-response
(reader method).
error-status-code
(reader method).
chillax.core/src/core/database.lisp
server.lisp
(file).
core
(module).
database-error
(condition).
database-name
(generic reader).
database-server
(generic reader).
db-already-exists
(condition).
db-changes
(function).
db-compact
(function).
db-connect
(function).
db-create
(function).
db-delete
(function).
db-info
(function).
db-not-found
(condition).
db-uri
(function).
ensure-db
(function).
initialize-instance
(method).
make-db-object
(method).
print-object
(method).
standard-database
(class).
database-error-uri
(reader method).
db-request
(function).
handle-request
(macro).
print-database
(function).
url-encode
(function).
chillax.core/src/core/document.lisp
database.lisp
(file).
core
(module).
all-documents
(function).
batch-get-documents
(function).
bulk-post-documents
(function).
copy-attachment
(function).
copy-document
(function).
delete-attachment
(function).
delete-document
(function).
document-conflict
(condition).
document-error
(condition).
document-not-found
(condition).
get-attachment
(function).
get-document
(function).
get-document-revision
(function).
post-document
(function).
put-attachment
(function).
put-document
(function).
conflicting-document
(reader method).
conflicting-document-id
(reader method).
document-404-db
(reader method).
document-404-id
(reader method).
chillax.core/src/core/design-document.lisp
document.lisp
(file).
core
(module).
compact-design-doc
(function).
design-doc-info
(function).
query-temporary-view
(function).
query-view
(function).
view-cleanup
(function).
build-view-params
(function).
view-404-db
(reader method).
view-404-design-document
(reader method).
view-404-view
(reader method).
view-not-found
(condition).
chillax.yason/src/yason.lisp
src
(module).
data->json
(method).
json->data
(method).
yason-server
(class).
parse-json-arrays-as-vectors-p
(generic reader).
parse-json-booleans-as-symbols-p
(generic reader).
parse-object-as-alist-p
(generic reader).
parse-object-key-fun
(generic reader).
Packages are listed by definition order.
chillax
chillax.core
.
chillax.yason
.
common-lisp
.
*chillax-version*
(special variable).
chillax.core
alexandria
.
chillax.utils
.
common-lisp
.
drakma
.
flexi-streams
.
active-tasks
(function).
all-dbs
(function).
all-documents
(function).
batch-get-documents
(function).
bulk-post-documents
(function).
compact-design-doc
(function).
config-info
(function).
copy-attachment
(function).
copy-document
(function).
couch-request
(function).
couchdb-error
(condition).
data->json
(generic function).
database-error
(condition).
database-name
(generic reader).
database-server
(generic reader).
db-already-exists
(condition).
db-changes
(function).
db-compact
(function).
db-connect
(function).
db-create
(function).
db-delete
(function).
db-info
(function).
db-not-found
(condition).
db-uri
(function).
delete-attachment
(function).
delete-document
(function).
design-doc-info
(function).
document-conflict
(condition).
document-error
(condition).
document-not-found
(condition).
ensure-db
(function).
get-attachment
(function).
get-document
(function).
get-document-revision
(function).
get-uuids
(function).
json->data
(generic function).
make-db-object
(generic function).
post-document
(function).
put-attachment
(function).
put-document
(function).
query-temporary-view
(function).
query-view
(function).
replicate
(function).
server-host
(generic reader).
server-password
(generic reader).
server-port
(generic reader).
server-secure-p
(generic reader).
server-uri
(function).
server-username
(generic reader).
standard-database
(class).
standard-server
(class).
stats
(function).
unexpected-response
(condition).
view-cleanup
(function).
+status-codes+
(special variable).
+utf-8+
(special variable).
build-view-params
(function).
conflicting-document
(generic reader).
conflicting-document-id
(generic reader).
database-error-uri
(generic reader).
db-request
(function).
document-404-db
(generic reader).
document-404-id
(generic reader).
error-response
(generic reader).
error-status-code
(generic reader).
handle-request
(macro).
print-database
(function).
url-encode
(function).
view-404-db
(generic reader).
view-404-design-document
(generic reader).
view-404-view
(generic reader).
view-not-found
(condition).
chillax.yason
chillax.core
.
common-lisp
.
yason-server
(class).
parse-json-arrays-as-vectors-p
(generic reader).
parse-json-booleans-as-symbols-p
(generic reader).
parse-object-as-alist-p
(generic reader).
parse-object-key-fun
(generic reader).
Definitions are sorted by export status, category, package, and then by lexicographic order.
Lists all the currently active tasks on SERVER.
Requests a list of all existing databases from SERVER.
Requests the _all_docs document. ALL-KEYS correspond to GET-DOCUMENT’s keyword arguments.
Uses _all_docs to quickly fetch the given DOC-IDs in a single request. Note that this function will NOT signal a DOCUMENT-NOT-FOUND error when one or more DOC-IDs are not found. Instead, the results will be returned, and it’s the user’s responsibility to deal with any missing docs.
Allows you to update or submit multiple documents at the same time, using CouchDB’s _bulk_docs API. In order to delete a document through this API, the document must have a _document attribute with JSON ’true’ as its value (note that what gets translated into ’true’ depends on the server).
DOCUMENTS must be a sequence or sequence-like (depending on what DATA->JSON will do to it).
If ALL-OR-NOTHING-P is true, the entire submission will fail if a single one fails.
Compaction can really help when you have very large views, very little space, or both.
Requests the current configuration from SERVER.
Copies data from the named attachment to OUTPUT-STREAM. Returns the number of bytes copied.
Copies a document’s content in-database.
Sends an HTTP request to the CouchDB server represented by SERVER. Most of the keyword arguments for drakma:http-request are available as kwargs for this message.
Returns the changes feed for DB
Triggers a database compaction.
Confirms that a particular CouchDB database exists. If so, returns a new database object that can be used to perform operations on it. Will signal a DB-NOT-FOUND error if the database does not already exist.
Creates a new CouchDB database. Returns a database object that can be used to operate on it. Will signal a DB-ALREADY-EXISTS error if there is already a database with the same NAME in SERVER.
Deletes a CouchDB database.
Fetches info about a given database from the CouchDB server.
Returns a string representing the full URI for DB.
Deletes an attachment from a document. DOC-REVISION must be the latest revision for the document.
Deletes an existing document.
Returns an object with various bits of status information. Refer to CouchDB documentation for specifics on each value.
Either connects to an existing database, or creates a new one. Returns two values: If a new database was created, (DB-OBJECT T) is returned. Otherwise, (DB-OBJECT NIL)
Returns 3 values:
1. STREAM - An open flexi-stream that can be READ. In order to read straight binary data, you must
first fetch the underlying stream with FLEXI-STREAMS:FLEXI-STREAM-STREAM.
2. MUST-CLOSE-P - A boolean. If TRUE, the user must CLOSE this stream themselves
once reading is done.
3. CONTENT-LENGTH - Declared content length for the incoming data.
Finds a CouchDB document in DB, named by ID. PARAMS should be an alist containing the parameters for the HTTP GET request. If ATTACHMENTSP is TRUE, the document’s attachments will be included in their entirety in their base64-encoded version. It is not recommended you use this unless you really know what you’re doing. If ERRORP is NIL, GET-DOCUMENT will simply return NIL on 404.
Quickly fetches the latest revision for DOC-ID. If ERRORP is NIL, this can be used to quickly test the existence of a document.
Returns a list of NUMBER unique IDs requested from SERVER. The UUIDs generated by the server are reasonably unique, but are not checked against existing UUIDs, so conflicts may still happen.
Convenience function for recursively accessing hash tables.
Uses the last key given to hashget to insert NEW-VALUE into the hash table
returned by the second-to-last key.
tl;dr: DWIM SETF function for HASHGET.
Convenience function for ‘literal’ hash table definition.
POSTs a document into DB. CouchDB will automatically assign a UUID if the document does not already exist. Note that using this function is discouraged in the CouchDB documentation, since it may result in duplicate documents because of proxies and other network intermediaries. If what you need is to create a new document with a generated id, consider using GET-UUIDS with PUT-DOCUMENT.
Adds DATA as an attachment. DATA can be a number of things:
* String or sequence of octets - DATA will be sent as-is directly to the server (using
EXTERNAL-FORMAT-OUT for strings).
* Stream - The stream will be read until EOF is reached.
* Pathname - The file the pathname denotes will be opened and its data uploaded.
* Function designator - The corresponding function will be called with one argument, the
stream to the server, to which it should send data.
If the document already exists, REV is required. This function can be used on non-existent
documents. If so, REV is not needed, and a document will be created automatically, and the
attachment associated with it.
The CONTENT-TYPE should be a string specifying the content type for DATA.
Puts a document into DB, using ID.
Queries a temporary view. These views are meant to be for testing and development purposes, and should _not_ be used in actual code.
Queries view named by VIEW-NAME in DESIGN-DOC-NAME. Keyword arguments correspond to CouchDB view
query arguments.
* key - Single key to search for.
* multi-keys - Multiple keys to search for.
* startkey - When searching for a range of keys, the key to start from.
* endkey - When searching for a range of keys, the key to end at. Whether this is inclusive or not
depends on inclusive-end-p (default: true)
* inclusive-end-p - If TRUE, endkey is included in the result. (default: true)
* startkey-docid - Like startkey, but keyed on the result documents’ doc-ids.
* endkey-docid - Like endkey, but keyed on the result documents’ doc-ids.
* limit - Maximum number of results to return.
* stalep - If TRUE, CouchDB will not refresh the view, even if it is stalled. (default: false)
* descendingp - If TRUE, will return reversed results. (default: false)
* skip - Number of documents to skip while querying.
* groupp - Controls whether the reduce function reduces to a set of distinct keys, or to a single
result row.
* group-level - It’s complicated. Google it!
* reducep - If FALSE, return the view without applying its reduce function (if any). (default: true)
* include-docs-p - If TRUE, includes the entire document with the result of the query. (default: false)
Replicates the database in SOURCE to TARGET. SOURCE and TARGET can both be either database names in the local server, or full URLs to local or remote databases. If CREATE-TARGET-P is true, the target database will automatically be created if it does not exist. If CONTINUOUSP is true, CouchDB will continue propagating any changes in SOURCE to TARGET.
Returns a string representation of the URL SERVER represents.
Requests general statistics from SERVER.
Invokes _view_cleanup on DB. Old view output will remain on disk until this is invoked.
Converts DATA to JSON suitable for sending to CouchDB.
yason-server
) data &key) ¶standard-server
) data &key) ¶Returns the URL-encoded name of the database, a string. Note that CouchDB accepts certain characters in database names -only- if they are URL-encoded (such as #/). It is up to individual implementations of DATABASE-NAME to implement this encoding.
standard-database
)) ¶automatically generated reader method
name
.
Returns the server object with which DATABASE is associated.
standard-database
)) ¶automatically generated reader method
Converts JSON to the desired data structure.
yason-server
) json &key) ¶standard-server
) json &key) ¶Creates an object which represents a database connection in SERVER. The object must conform to the database protocol.
standard-server
) name) ¶standard-server
)) ¶automatically generated reader method
host
.
standard-server
)) ¶automatically generated reader method
standard-server
)) ¶automatically generated reader method
port
.
standard-server
)) ¶automatically generated reader method
standard-server
)) ¶automatically generated reader method
standard-database
) &key name) ¶standard-database
) stream) ¶condition
.
:uri
This slot is read-only.
Minimal, class-based implementation of the database protocol.
Default implementation of the server protocol.
Initarg | Value |
---|---|
:host | 127.0.0.1 |
:port | 5984 |
:username | nil |
:password | nil |
:securep | nil |
:host
This slot is read-only.
:port
This slot is read-only.
:username
This slot is read-only.
:password
This slot is read-only.
:securep
This slot is read-only.
YASON-SERVERs use Yason’s JSON parser/encoder to automatically translate content going to/coming from the associated CouchDB server.
Initarg | Value |
---|---|
:array-as-vector-p | nil |
:boolean-as-symbol-p | nil |
:object-as-alist-p | nil |
:parse-object-key-fun | (function identity) |
:array-as-vector-p
This slot is read-only.
:boolean-as-symbol-p
This slot is read-only.
:object-as-alist-p
This slot is read-only.
:parse-object-key-fun
This slot is read-only.
A simple alist of keyword names for HTTP status codes, keyed by status code.
Provides a nice interface to the relatively manual, low-level status-code checking that Chillax uses to understand CouchDB’s responses. The format for EXPECTED-RESPONSES is the same as the CASE macro: The keys should be either keywords, or lists o keywords (not evaluated), which correspond to translated HTTP status code names. See +status-codes+ for all the currently-recognized keywords.
Sends a CouchDB request to DB.
Objects implementing the database protocol may use this function in their PRINT-OBJECT method.
document-conflict
)) ¶document-conflict
)) ¶database-error
)) ¶uri
.
document-not-found
)) ¶db
.
document-not-found
)) ¶id
.
unexpected-response
)) ¶unexpected-response
)) ¶yason-server
)) ¶automatically generated reader method
yason-server
)) ¶automatically generated reader method
yason-server
)) ¶automatically generated reader method
yason-server
)) ¶automatically generated reader method
view-not-found
)) ¶db
.
view-not-found
)) ¶view-not-found
)) ¶view
.
Jump to: | (
@
A B C D E F G H I J M P Q R S U V |
---|
Jump to: | (
@
A B C D E F G H I J M P Q R S U V |
---|
Jump to: | *
+
A B C D H I N O P R S U V |
---|
Jump to: | *
+
A B C D H I N O P R S U V |
---|
Jump to: | C D F M P S U V Y |
---|
Jump to: | C D F M P S U V Y |
---|