This is the clouchdb Reference Manual, version 0.0.12, generated automatically by Declt version 2.4 "Will Decker" on Wed Jun 20 11:35:07 2018 GMT+0.
• Systems: | The systems documentation | |
• Files: | The files documentation | |
• Packages: | The packages documentation | |
• Definitions: | The symbols documentation | |
• Indexes: | Concepts, functions, variables and data types |
The main system appears first, followed by any subsystem dependency.
• The clouchdb system: |
0.0.12
clouchdb.asd (file)
Files are sorted by type and then listed depth-first from the systems components trees.
• Lisp files: |
• The clouchdb.asd file: | ||
• The clouchdb/package.lisp file: | ||
• The clouchdb/clouchdb.lisp file: | ||
• The clouchdb/decoder.lisp file: | ||
• The clouchdb/encoder.lisp file: |
Next: The clouchdb/package<dot>lisp file, Previous: Lisp files, Up: Lisp files [Contents][Index]
clouchdb.asd
clouchdb (system)
*clouchdb-version* (special variable)
Next: The clouchdb/clouchdb<dot>lisp file, Previous: The clouchdb<dot>asd file, Up: Lisp files [Contents][Index]
Next: The clouchdb/decoder<dot>lisp file, Previous: The clouchdb/package<dot>lisp file, Up: Lisp files [Contents][Index]
package.lisp (file)
clouchdb (system)
clouchdb.lisp
Next: The clouchdb/encoder<dot>lisp file, Previous: The clouchdb/clouchdb<dot>lisp file, Up: Lisp files [Contents][Index]
clouchdb.lisp (file)
clouchdb (system)
decoder.lisp
json-to-document (function)
Previous: The clouchdb/decoder<dot>lisp file, Up: Lisp files [Contents][Index]
decoder.lisp (file)
clouchdb (system)
encoder.lisp
document-to-json (function)
Next: Definitions, Previous: Files, Up: Top [Contents][Index]
Packages are listed by definition order.
• The clouchdb-asd package: | ||
• The clouchdb package: |
Next: The clouchdb package, Previous: Packages, Up: Packages [Contents][Index]
clouchdb.asd
*clouchdb-version* (special variable)
Previous: The clouchdb-asd package, Up: Packages [Contents][Index]
package.lisp (file)
Definitions are sorted by export status, category, package, and then by lexicographic order.
• Exported definitions: | ||
• Internal definitions: |
Next: Internal definitions, Previous: Definitions, Up: Definitions [Contents][Index]
• Exported special variables: | ||
• Exported macros: | ||
• Exported functions: | ||
• Exported conditions: |
Next: Exported macros, Previous: Exported definitions, Up: Exported definitions [Contents][Index]
The current version of clouchdb
clouchdb.asd
A db struct object
clouchdb.lisp (file)
Next: Exported functions, Previous: Exported special variables, Up: Exported definitions [Contents][Index]
Create a view using parenscript
clouchdb.lisp (file)
Passed doc-or-id and attachment parameters to get-attachment-stream to open the input stream and ensures that the stream is automatically closed after execution of the statements in the body.
clouchdb.lisp (file)
Execute body in the context of the specified database connection information..
clouchdb.lisp (file)
Execute body in context of newly created, temporary database. Delete database before return.
clouchdb.lisp (file)
Next: Exported conditions, Previous: Exported macros, Up: Exported definitions [Contents][Index]
Execute query using an ad-hoc view.
clouchdb.lisp (file)
Attach content to a document identified by either the id or doc parameter. If the document does not already exist it will be created.
clouchdb.lisp (file)
Fetch a list of all documents that were updated and deleted, in the order these actions are done.
clouchdb.lisp (file)
Return specified document in a format used by bulk-document-update to indicate that the document should be deleted in the bulk operation.
clouchdb.lisp (file)
Convert a case-encoded symbol to a potentially mixed case string.
clouchdb.lisp (file)
Return value in a form that would be used to identify the car of a value in a document. For example, a value
clouchdb.lisp (file)
List attachments associated with document. If the document id is specified in the first parameter then this function will fetch the corresponding document from the server in order to get the attachment list, otherwise it will simply return the list of attachments in the specified document unless keyword parameter fetch is true.
clouchdb.lisp (file)
Return the name of an attachment, possibly converting from the keyword symbol of the clouchdb document to a string e.g. :|text.txt| to ’text.txt’, or the car of a single document attachment list element e.g, ’(:|text.txt| (:|stub| . T) (..)) to ’text.txt’.
clouchdb.lisp (file)
Update multiple documents in a single request. The <b>docs</b> parameter is a list of documents. Any document in the list that does not contain an :|_id| value is created with a CouchDb assigned ID. Documents that contain a ’(:|_deleted| . t) top-level property will be deleted. Documents that contain an :|_id| property will be updated. If all-or-nothing is true then all operations must succeed for any to succeed, default is false.
clouchdb.lisp (file)
Get document change activity from current database or database
specified in db parameter. The :feed keyword parameter value indicates
how to poll for changes. Valid values for this parameter
include :longpoll to block waiting for a single change
response, :continuous to poll for changes indefinately, or :normal to
not poll (the default) and instead return a document containing
changes. If specified, the :style keyword parameter may be either
:main-only (the default) or :all-docs for more revision information.
If specified, the notify-fn will be called as each change notification is recieved from the server. The notify-fn should return nil to signal that it no longer wishes to receive change notificaitons. At that point the stream will be closed and the changes function will return.
If :longpoll or :continuous is specified as the feed parameter but no notify-fn is provided, this function will return the feed stream. It is the caller’s responsibility to close the stream.
clouchdb.lisp (file)
Start compaction on current database, or specified database if supplied. The db parameter, if supplied, is either a local database name string or a db struct.
clouchdb.lisp (file)
Copy source document to destination. The source parameter may be
either a document ID or a document from which the ID will be
obtained. The destination parameter may also be a document ID or
document. If the destination document does not already exist it will
be created.
If the destination document does exist and the intention is to
overwrite that document, then the destination document revision must
be specified. If the destination parameter is a document then the
revision information will be taken from that document unless
the :revision parameter is specified. The revision parameter must be
the current revision of the destination document. Alternatively the
revision parameter may be the keyword
:current which will cause this function to fetch the current
revision number from the database.
clouchdb.lisp (file)
Return only CouchDb specific document properties (opposite of document-properties).
clouchdb.lisp (file)
Create database. The db parameter may be either a string which is the name of the database to create or an instance of a db structure. If db is unspecified, uses *couchdb*. If database already exists an error condition is raised. This condition can be avoided by specifying :ingore for if-exists. In this case no error condition is generated. Specify :recreate to potentially delete and create a new database.
clouchdb.lisp (file)
Create a new document, optionally specifying the new document ID.
clouchdb.lisp (file)
Create one or more views in the specified view document ID.
clouchdb.lisp (file)
Create a temporary database.
clouchdb.lisp (file)
Return a database name that’s probably unique.
clouchdb.lisp (file)
Create one or more views in the specified view document ID.
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
Delete (detach) an attachment. The attachment parameter is either the name of the file to remove from the document, which can be either a string or a keyword symbol (as obtained from the :|_attachments| value of a document) or it’s one element of the list of attachments in a document.
clouchdb.lisp (file)
Delete database. If db and db-name are unspecified, deletes
database named in *couchdb*. Normally deletion of non-existent databases
generates an error condition, but this can be avoided by
specifying :ignore in the if-missing parameter.
clouchdb.lisp (file)
Delete a document. The doc-or-id parameter may be either the document ID or the document itself. If the doc-or-id value is the document ID and no revision parameter is specified, then the document is fetched from the server to get the current revision, since the revision is necessary to complete the operation. If the doc-or-id value is a document then the revision value in the document is used unless a different revision is specified. At most one revision of the document will be deleted.
clouchdb.lisp (file)
Delete identified view document
clouchdb.lisp (file)
Convert a document to a hashtable if it isn’t one already. Document should be in the form of an associative list.
clouchdb.lisp (file)
Shortcut for getting the ID from the specified document. First checks for :|_id| property, then :|id|
clouchdb.lisp (file)
Return the document properties, filtering out any couchdb reserved properties (properties that start with an underscore).
clouchdb.lisp (file)
Get the value associated with the document property or nil if there is no associated value. Note that name may be either a keyword symbol, a regular symbol or a string. The <b>name</b> parameter may be either a single keyword identifier (document property identifier) or it may be a list of identifiers.
clouchdb.lisp (file)
(setf document-property) (function)
Allows setting of existing document properties in
place (destructively). The name paramter may be either a single
keyword identifier (document property identifier) or it may be a list
of identifiers. If the specified document property does not already
exist it is created.
clouchdb.lisp (file)
document-property (function)
Return the revision number for the document, identified by either the document ID, the actual document, or the result of an add or update that returns the revision as :|rev|
clouchdb.lisp (file)
Encode document to string with special support for detecting and handling associative lists.
encoder.lisp (file)
Get active tasks for database or nil.
clouchdb.lisp (file)
Get a listing of all documents in a database. This method implements the same keyword parameters as the view API.
clouchdb.lisp (file)
Get specified attachment as a stream. The caller is responsible for closing the stream. Return stream and HTTP status
clouchdb.lisp (file)
Get database configuration.
clouchdb.lisp (file)
Get information from the couchdb server.
clouchdb.lisp (file)
Get information for named database, return ((:|error|
. "not_found") (:|reason| . "no_db_file")) if database does not
exist. The db parameter, if supplied, is either a local database
name string or a db struct.
clouchdb.lisp (file)
Get a document by ID. Returns nil if the document does not exist. The revision property specifies an optional revision number, if unspecified, the most recent revision is returned. The revisions and revision-info parameters, if non-nil, request revision information about the document instead of the actual document contents. The revision-info option contains more revision information than revisions. All revision* options are mutually exclusive, specify only one.
clouchdb.lisp (file)
Returns one or more new UUID from the current database.
clouchdb.lisp (file)
Invoke a view by specifiying the document ID that contains the view and the name of the contained view. The key parameter specifies an optional value to match against the view’s mapped field. The start-key and end-key values specify the optional begin and end range of the mapped field(s) of each document to return. If descending is t, returns results in reverse order. If update is t, does not refresh view for query, use for higher performance but possible data inconsistency.
clouchdb.lisp (file)
decoder.lisp (file)
Return a list of all databases managed by the current CouchDb host.
clouchdb.lisp (file)
Create, populate and return a database structure from the current special variables and any supplied keyword parameters, the latter take precedence over the special variables.
clouchdb.lisp (file)
Post the document to the server, creating a new document. An existing _id in the document will be ignored, the server will create a new document and assign a new ID. Therefore this is an easy method for copying documents. The return value includes the document ID in the :ID property.
clouchdb.lisp (file)
Create a new document or update and existing one. If the document is new an ID must be specified (but see post-document). If the document has been fetched from the server (and still has its :_id property) then no ID need be specified. If an ID is specified and it differs from the existing :_id value, then a new document is created with the new ID and the non-special properties of the specified document, since the latter would generate a CouchDb error.
clouchdb.lisp (file)
Return a list of all values in the document matching the query. For
example, given the document:
((:values (((:a . 1) (:b . 2)) ((:a . 3) (:b . 4)))))
the query string ’(:values :a) will return (3 1), i.e. the value of
both :a associations.
One special query input value is :* which is a ’wildcard’. With the
document described above the query ’(:values :*) will return (4 3 2
1), or the values of all associations directly below :values. The
query ’(:* :*) on this document will also return (4 3 2 1).
Another special query input value is :**, which recursively matches
the next query input. For example, with the following document:
((:level1 . ((:level2 . (((:level3 . 1)))))))
The query ’(:** :level3) will return (1), the value
of :level3. Finally, functions can specified in the query. Functions
are called with the portion of the document matched to the previous
query element and can either return the document, return a different
document or null.
clouchdb.lisp (file)
Replicate current database to target, or source to target if source is specified. Source and target database values must either be strings or database structures. Use strings to specify simple local database names, use database structures to specify either local or remote databases. If true, create-target will cause the replication target to be created automatically, as of CouchDb version 0.11.
clouchdb.lisp (file)
Save specified attachement from specified document to path on file
system. The doc-or-id parameter must either be a document ID string or
the actual document. The attachment parameter is either the string
value of the attachment name, e.g. "file.jpg", a keyword symbol as
returned in the car of the list of attachments, .e.g. :|file.jsp|, or
one of the elements of a document’s attachment list,
e.g: (:|file.jsp| (:|stub| . T) (:|content_type|
. "image/jpeg") (:|length| . 3543434)).
If the path identifies a directory then the target file will be created in that directory with the same name as the attachment in the document. If the path ends with a file name the attachment will be created with that name.
clouchdb.lisp (file)
Set top-level connection information. The port may be specified as a string or number. As of CouchDb version 7.2 the default port is 5984, prior to that it was 8888.
clouchdb.lisp (file)
Set a property of a document. If the named property does not exist, add it to the document, otherwise change the existing value. Does not destructively modify input document, so be sure to use return value.
clouchdb.lisp (file)
Previous: Exported functions, Up: Exported definitions [Contents][Index]
Error raised when specified attachment is not found
clouchdb.lisp (file)
doc-error (condition)
:attachment-name
att-name (generic function)
:attachments
attachments (generic function)
clouchdb.lisp (file)
db-existential-error (condition)
clouchdb.lisp (file)
db-existential-error (condition)
clouchdb.lisp (file)
clouchdb-error (condition)
:uri
uri (generic function)
:db
db (generic function)
:result
result (generic function)
clouchdb.lisp (file)
clouchdb-error (condition)
:uri
text (generic function)
:reason
reason (generic function)
:id
id (generic function)
Error raised when no document matching ID is found
clouchdb.lisp (file)
doc-error (condition)
clouchdb.lisp (file)
doc-error (condition)
clouchdb.lisp (file)
doc-error (condition)
clouchdb.lisp (file)
db-existential-error (condition)
Previous: Exported definitions, Up: Definitions [Contents][Index]
• Internal constants: | ||
• Internal special variables: | ||
• Internal macros: | ||
• Internal functions: | ||
• Internal generic functions: | ||
• Internal conditions: | ||
• Internal structures: |
Next: Internal special variables, Previous: Internal definitions, Up: Internal definitions [Contents][Index]
Default external format for document content.
clouchdb.lisp (file)
Next: Internal macros, Previous: Internal constants, Up: Internal definitions [Contents][Index]
Parameters for the changes function.
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
Default database name
clouchdb.lisp (file)
CouchDb server host name
clouchdb.lisp (file)
The IANA assigned CouchDb port
clouchdb.lisp (file)
http or https
clouchdb.lisp (file)
decoder.lisp (file)
encoder.lisp (file)
decoder.lisp (file)
decoder.lisp (file)
decoder.lisp (file)
decoder.lisp (file)
decoder.lisp (file)
decoder.lisp (file)
The package where json-symbols are interned. Default keyword, nil = current package
decoder.lisp (file)
clouchdb.lisp (file)
Defined to instruct Drakma to treat json responses as text
clouchdb.lisp (file)
decoder.lisp (file)
clouchdb.lisp (file)
Definitions for how invoke-view keyword parameters are translated into CouchDb parameters
clouchdb.lisp (file)
Next: Internal functions, Previous: Internal special variables, Up: Internal definitions [Contents][Index]
Shorthand for (concatenate ’string)
clouchdb.lisp (file)
clouchdb.lisp (file)
A version of DEFCONSTANT for /strict/ CL implementations.
clouchdb.lisp (file)
Define a parenscript function in the object format used by CouchDb. Specifically, a property name associated with a lambda. E.g.: {’foo’ : function () {...}}
clouchdb.lisp (file)
Wrap request in code to check for errors due to non-existant data bases. This is necessary because in a document operation, CouchDb does not distinguish between an error due to a missing document and a missing database.
clouchdb.lisp (file)
Create a view using parenscript
clouchdb.lisp (file)
URL-encode a string. Use drakma’s url-encode since it’s exported now
clouchdb.lisp (file)
Next: Internal generic functions, Previous: Internal macros, Up: Internal definitions [Contents][Index]
Add an admin user.
clouchdb.lisp (file)
Add lists in list-defs to design document identified by design-doc-id. If the document does not exist, create it. If any list function definitions already exist in the document, update them.
clouchdb.lisp (file)
decoder.lisp (file)
Add CouchDb lists in list-defs to document identified by id. If the document does not exist, create it. If any list function definitions already exist in the document, update them.
clouchdb.lisp (file)
Add CouchDb lists in list-defs to document identified by id. If the document does not exist, create it. If any list function definitions already exist in the document, update them.
clouchdb.lisp (file)
Return true if expression is, or really looks like, an associative list. Dead giveaways include cons elements in the list that begin with a keyword. Returns the element that produced a positive result, or nil.
encoder.lisp (file)
Compact named view
clouchdb.lisp (file)
Convert string to specified encoding. This may be totally wrong and probably way too inefficient, but it seems to work.
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
Used by most Clouchdb APIs to make the actual REST request.
clouchdb.lisp (file)
Reads a json element from stream
decoder.lisp (file)
Only objects or arrays on top level, no junk afterwards.
decoder.lisp (file)
Convert a document in the form of a hash table into an associative list
clouchdb.lisp (file)
Encode document to stream with special support for detecting and handling associative lists.
encoder.lisp (file)
Optionally invoke specified function with supplied document, used to invoke user-specified hook functions.
clouchdb.lisp (file)
Wrap specified value in double quotes.
clouchdb.lisp (file)
encoder.lisp (file)
Encode the list of attachements, return them in an _attachments document fragment.
clouchdb.lisp (file)
Encode a file in the format suitable for CouchDb attachments
clouchdb.lisp (file)
Return specified design document, creating it if it does not already exist.
clouchdb.lisp (file)
Return "false" if value is nil, otherwise nil
clouchdb.lisp (file)
Get cookie based login user information.
clouchdb.lisp (file)
Get database statistics overview.
clouchdb.lisp (file)
clouchdb.lisp (file)
decoder.lisp (file)
decoder.lisp (file)
Read a json document from eiter a stream or a string. If the source is a stream close the stream before returning. Return a document.
clouchdb.lisp (file)
Return true if element is a list that begins with a keyword. This is used to help determine associative list-ness.
encoder.lisp (file)
Convert a keword symbol that may contain hyphen characters to a lower case string with any hyphens replaced by underscores: ’:all-the-best’ -> ’all_the_best’.
clouchdb.lisp (file)
encoder.lisp (file)
Logout cookie based session.
clouchdb.lisp (file)
Return user name password values or nil if no user name specified for db
clouchdb.lisp (file)
Make a database identifier from either a string or db structure.
clouchdb.lisp (file)
clouchdb.lisp (file)
Return a URI containing protocol://host:port/ and the concatenation of the remaining parameters.
clouchdb.lisp (file)
clouchdb.lisp (file)
decoder.lisp (file)
decoder.lisp (file)
decoder.lisp (file)
decoder.lisp (file)
decoder.lisp (file)
decoder.lisp (file)
decoder.lisp (file)
decoder.lisp (file)
Do cookie based login.
clouchdb.lisp (file)
Join list of strings into a single result. Strings are delimited by specified delimiter. If ignore-nil is true, then nil strings in the list are skipped, and no delimiter is output.
clouchdb.lisp (file)
Use a keyword transformation table to traslate between function keyword parameter names and values, and URL parameter names and values.
clouchdb.lisp (file)
Transform each keyword parameter using the specified set of options, use only those transformations that return a non-nil result.
clouchdb.lisp (file)
Return "true" if value is non-nil, otherwise nil
clouchdb.lisp (file)
Validation for ps-view definition
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
Clean up old view data
clouchdb.lisp (file)
General function called by view functions
clouchdb.lisp (file)
encoder.lisp (file)
encoder.lisp (file)
encoder.lisp (file)
encoder.lisp (file)
encoder.lisp (file)
encoder.lisp (file)
Next: Internal conditions, Previous: Internal functions, Up: Internal definitions [Contents][Index]
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
clouchdb.lisp (file)
Next: Internal structures, Previous: Internal generic functions, Up: Internal definitions [Contents][Index]
clouchdb.lisp (file)
clouchdb-error (condition)
:result
result (generic function)
:db
db (generic function)
:uri
uri (generic function)
:text
text (generic function)
The base type of all errors signaled by clouchdb
clouchdb.lisp (file)
error (condition)
clouchdb.lisp (file)
doc-error (condition)
clouchdb.lisp (file)
doc-error (condition)
value (method)
:value
value (generic function)
clouchdb.lisp (file)
doc-error (condition)
id-value (method)
:id-value
id-value (generic function)
clouchdb.lisp (file)
clouchdb-error (condition)
:input
input (generic function)
:description
description (generic function)
decoder.lisp (file)
error (condition)
Error raised for invalid ps-view definition
clouchdb.lisp (file)
clouchdb-error (condition)
ps-view-def (method)
:ps-view-def
ps-view-def (generic function)
Previous: Internal conditions, Up: Internal definitions [Contents][Index]
clouchdb.lisp (file)
structure-object (structure)
db-host (function)
(setf db-host) (function)
db-port (function)
(setf db-port) (function)
db-name (function)
(setf db-name) (function)
db-protocol (function)
(setf db-protocol) (function)
db-user (function)
(setf db-user) (function)
db-password (function)
(setf db-password) (function)
db-document-fetch-fn (function)
(setf db-document-fetch-fn) (function)
db-document-update-fn (function)
(setf db-document-update-fn) (function)
Previous: Definitions, Up: Top [Contents][Index]
• Concept index: | ||
• Function index: | ||
• Variable index: | ||
• Data type index: |
Next: Function index, Previous: Indexes, Up: Indexes [Contents][Index]
Jump to: | C F L |
---|
Jump to: | C F L |
---|
Next: Variable index, Previous: Concept index, Up: Indexes [Contents][Index]
Jump to: | (
A B C D E F G I J K L M N P Q R S T U V W |
---|
Jump to: | (
A B C D E F G I J K L M N P Q R S T U V W |
---|
Next: Data type index, Previous: Function index, Up: Indexes [Contents][Index]
Jump to: | *
+
A C D H I N P R S T U V |
---|
Jump to: | *
+
A C D H I N P R S T U V |
---|
Previous: Variable index, Up: Indexes [Contents][Index]
Jump to: | A C D I J P S |
---|
Jump to: | A C D I J P S |
---|