Common Lisp Package: ZS3

README:

FUNCTION

Public

ALL-BUCKETS (&KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

Return a vector of all BUCKET objects associated with *CREDENTIALS*.

ALL-KEYS (BUCKET &KEY PREFIX ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

Reutrn a vector of all KEY objects in BUCKET.

BUCKET-LIFECYCLE (BUCKET &KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

Return the bucket lifecycle rules for BUCKET. Signals NO-SUCH-LIFECYCLE-CONFIGURATION if the bucket has no lifecycle configuration.

SETFBUCKET-LIFECYCLE (RULES BUCKET &KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

Set the lifecycle configuration of BUCKET to RULES. RULES is coerced to a list if needed. If RULES is NIL, the lifecycle configuration is deleted with DELETE-BUCKET-LIFECYCLE.

BUCKET-LOCATION (BUCKET &KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

If BUCKET was created with a LocationConstraint, return its constraint.

COPY-OBJECT (&KEY FROM-BUCKET FROM-KEY TO-BUCKET TO-KEY WHEN-ETAG-MATCHES UNLESS-ETAG-MATCHES WHEN-MODIFIED-SINCE UNLESS-MODIFIED-SINCE (METADATA NIL METADATA-SUPPLIED-P) ACCESS-POLICY PUBLIC PRECONDITION-ERRORS (STORAGE-CLASS STANDARD) ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

Copy the object identified by FROM-BUCKET/FROM-KEY to TO-BUCKET/TO-KEY. If TO-BUCKET is NIL, uses FROM-BUCKET as the target. If TO-KEY is NIL, uses TO-KEY as the target. If METADATA is provided, it should be an alist of metadata keys and values to set on the new object. Otherwise, the source object's metadata is copied. Optional precondition variables are WHEN-ETAG-MATCHES, UNLESS-ETAG-MATCHES, WHEN-MODIFIED-SINCE, UNLESS-MODIFIED-SINCE. The etag variables use an etag as produced by the FILE-ETAG function, i.e. a lowercase hex representation of the file's MD5 digest, surrounded by quotes. The modified-since variables should use a universal time. If PUBLIC is T, the new object is visible to all users. Otherwise, a default ACL is present on the new object.

DELETE-ALL-OBJECTS (BUCKET &KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

Delete all objects in BUCKET.

DELETE-OBJECT (BUCKET KEY &KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

Delete one object from BUCKET identified by KEY.

DELETE-OBJECTS (BUCKET KEYS &KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

Delete the objects in BUCKET identified by the sequence KEYS.

DISABLE-LOGGING (BUCKET &KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

Disable the creation of access logs for BUCKET.

DISABLE-LOGGING-TO (BUCKET &KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

Configure the ACL of BUCKET to remove permissions for the log delivery group.

DISTRIBUTIONS-FOR-BUCKET (BUCKET-NAME)

Return a list of distributions that are associated with BUCKET-NAME.

ENABLE-LOGGING (BUCKET TARGET-BUCKET TARGET-PREFIX &KEY TARGET-GRANTS ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

Enable logging of requests to BUCKET, putting logfile objects into TARGET-BUCKET with a key prefix of TARGET-PREFIX.

ENABLE-LOGGING-TO (BUCKET &KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

Configure the ACL of BUCKET to accept logfile objects.

MAKE-POST-POLICY (&KEY EXPIRES CONDITIONS ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

Return an encoded HTTP POST policy string and policy signature as multiple values.

ME (&KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

Return a PERSON object corresponding to the current credentials. Cached.

OBJECT-METADATA (BUCKET KEY &KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

Return the metadata headers as an alist, with keywords for the keys.

PARAMETERS-ALIST (&REST ARGS &KEY &ALLOW-OTHER-KEYS)

Construct an ALIST based on all keyword arguments passed to the function. Keywords are converted to their lowercase symbol name and values are converted to strings.

SET-STORAGE-CLASS (BUCKET KEY STORAGE-CLASS &KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

Set the storage class of the object identified by BUCKET and KEY to STORAGE-CLASS.

Undocumented

ACL-EMAIL (ADDRESS)

ACL-PERSON (ID &OPTIONAL DISPLAY-NAME)

ALL-DISTRIBUTIONS (&KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

AUTHORIZED-URL (&KEY BUCKET KEY VHOST EXPIRES SSL SUB-RESOURCE ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

BUCKET-EXISTS-P (BUCKET &KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

CLEAR-REDIRECTS

CONTINUE-BUCKET-QUERY (RESPONSE)

CREATE-BUCKET (NAME &KEY ACCESS-POLICY PUBLIC LOCATION ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

CREATE-DISTRIBUTION (BUCKET-NAME &KEY CNAMES (ENABLED T) COMMENT)

DELETE-BUCKET (BUCKET &KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

FILE-CREDENTIALS (FILE)

FILE-ETAG (FILE)

GET-ACL (&KEY BUCKET KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

GET-FILE (BUCKET KEY FILE &KEY START END WHEN-MODIFIED-SINCE UNLESS-MODIFIED-SINCE WHEN-ETAG-MATCHES UNLESS-ETAG-MATCHES (IF-EXISTS SUPERSEDE) ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

GET-OBJECT (BUCKET KEY &KEY WHEN-MODIFIED-SINCE UNLESS-MODIFIED-SINCE WHEN-ETAG-MATCHES UNLESS-ETAG-MATCHES START END (OUTPUT VECTOR) (IF-EXISTS SUPERSEDE) (STRING-EXTERNAL-FORMAT UTF-8) ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

GET-STRING (BUCKET KEY &KEY START END (EXTERNAL-FORMAT UTF-8) WHEN-MODIFIED-SINCE UNLESS-MODIFIED-SINCE WHEN-ETAG-MATCHES UNLESS-ETAG-MATCHES (IF-EXISTS SUPERSEDE) ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

GET-VECTOR (BUCKET KEY &KEY START END WHEN-MODIFIED-SINCE UNLESS-MODIFIED-SINCE WHEN-ETAG-MATCHES UNLESS-ETAG-MATCHES (IF-EXISTS SUPERSEDE) ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

GRANT (PERMISSION &KEY TO)

INVALIDATE-PATHS (DISTRIBUTION PATHS)

LIFECYCLE-RULE (&KEY ID PREFIX (ENABLED T) DAYS DATE (ACTION EXPIRE))

LOGGING-SETUP (BUCKET &KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

MAKE-PRIVATE (&KEY BUCKET KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

MAKE-PUBLIC (&KEY BUCKET KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

NOW+ (DELTA)

NOW- (DELTA)

OBJECT-RESTORATION-STATUS (BUCKET KEY &KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

OCTET-VECTOR (&REST OCTETS)

PUT-ACL (OWNER GRANTS &KEY BUCKET KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

PUT-FILE (FILE BUCKET KEY &KEY START END ACCESS-POLICY PUBLIC METADATA CACHE-CONTROL CONTENT-DISPOSITION CONTENT-ENCODING (CONTENT-TYPE binary/octet-stream) EXPIRES STORAGE-CLASS ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

PUT-OBJECT (OBJECT BUCKET KEY &KEY ACCESS-POLICY PUBLIC METADATA (STRING-EXTERNAL-FORMAT UTF-8) CACHE-CONTROL CONTENT-ENCODING CONTENT-DISPOSITION EXPIRES CONTENT-TYPE (STORAGE-CLASS STANDARD) ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

PUT-STREAM (STREAM BUCKET KEY &KEY (START 0) END ACCESS-POLICY PUBLIC METADATA CACHE-CONTROL CONTENT-DISPOSITION CONTENT-ENCODING (CONTENT-TYPE binary/octet-stream) EXPIRES STORAGE-CLASS ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

PUT-STRING (STRING BUCKET KEY &KEY START END ACCESS-POLICY PUBLIC METADATA (EXTERNAL-FORMAT UTF-8) CACHE-CONTROL CONTENT-ENCODING CONTENT-DISPOSITION (CONTENT-TYPE text/plain) EXPIRES STORAGE-CLASS ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

PUT-VECTOR (VECTOR BUCKET KEY &KEY START END ACCESS-POLICY PUBLIC METADATA CACHE-CONTROL CONTENT-ENCODING CONTENT-DISPOSITION (CONTENT-TYPE binary/octet-stream) EXPIRES STORAGE-CLASS ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

QUERY-BUCKET (BUCKET &KEY PREFIX MARKER MAX-KEYS DELIMITER ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

RESOURCE-URL (&KEY BUCKET KEY VHOST SSL SUB-RESOURCE)

RESTORE-OBJECT (BUCKET KEY &KEY DAYS ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

Private

ALIST-TO-URL-ENCODED-STRING (ALIST)

ALIST is supposed to be an alist of name/value pairs where both names and values are strings. This function returns a string where this list is represented as for the content type `application/x-www-form-urlencoded', i.e. the values are URL-encoded using the external format EXTERNAL-FORMAT, the pairs are joined with a #\& character, and each name is separated from its value with a #\= character.

ATTRIBUTE (QNAME VALUE)

@arg[qname]{Qualified name, a string.} @arg[value]{Any value understood by @fun{unparse-attribute}, in particular strings.} @return{undocumented} Collects an attribute for the start tag that is currently being written. This function may only be called during the extent of a use of @fun{with-element} or @fun{with-element*}, and only before the first child node has been written. An attribute for the current element is recorded using the namespace prefix and local name specified by @var{qname}. The attribute's namespace prefix is resolved to a namespace URI using the bindings established by @fun{with-namespace},and that namespace URI is used for the attribute.

ATTRIBUTE* (PREFIX LNAME VALUE &OPTIONAL QNAME)

@arg[prefix]{Namespace prefix, a string.} @arg[lname]{Local name, a string.} @arg[value]{Any value understood by @fun{unparse-attribute}, in particular strings.} @return{undocumented} Collects an attribute for the start tag that is currently being written. This function may only be called during the extent of a use of @fun{with-element} or @fun{with-element*}, and only before the first child node has been written. An attribute for the current element is recorded using the namespace prefix and local name specified by arguments. @var{prefix} is resolved to a namespace URI using the bindings established by @fun{with-namespace}, and that namespace URI is used for the attribute.

BINDINGS-LIFECYCLE-RULES (BINDINGS)

Create a list of lifecycle rules from BINDINGS, which are obtained by xml-binding the LIFECYCLE-CONFIGURATION binder with a document.

CALL-WITH-LATEST (FUN DISTRIBUTION)

Call FUN on DISTRIBUTION; if there is an ETag-related error, retries after REFRESHing DISTRIBUTION. FUN should not have side effects on anything but the DISTRIBUTION itself, as it may be re-tried multiple times.

COLLECT-REST-ALIST (SOURCE)

Collect the rest of SOURCE, up to an un-nested closing tag, as an alist of element names and their character contents.

COPY-N-OCTETS (COUNT INPUT OUTPUT)

Copy the first N octets from the stream INPUT to the stream OUTPUT.

CREATE-ALIST-BINDER (KEY KK)

Return a function that returns the rest of SOURCE as an alist of element-name/element-content data.

CREATE-BINDER (FORM &OPTIONAL (K (CREATE-BINDINGS-RETURNER)))

Process FORM as an XML binder pattern and return a closure to process an XML source.

CREATE-BINDINGS-EXTENDER (KEY KK)

Return a function that extends BINDINGS with KEY and a value of whatever character data is pending in SOURCE.

CREATE-BINDINGS-RETURNER

Return a function that does nothing but return its BINDINGS, effectively ending matching.

CREATE-ELEMENT-END-MATCHER (ELEMENT-NAME KK)

Return a function that expects to see the end of ELEMENT-NAME next in SOURCE.

CREATE-ELEMENT-START-MATCHER (ELEMENT-NAME KK)

Return a function that expects to see the start of ELEMENT-NAME next in SOURCE.

CREATE-SEQUENCE-BINDER (KEY FORMS KK)

Return a function that creates a list of sub-bindings based on a sub-matcher, with KEY as the key.

CREATE-SKIPPER (ELEMENT-NAME KK)

Return a function that skips input in SOURCE until it sees a closing tag for ELEMENT-NAME. Nested occurrences of elements with the same ELEMENT-NAME are also skipped.

CREATE-SPECIAL-PROCESSOR (OPERATOR FORM K)

Handle special pattern processing forms like BIND, SKIP-REST, SEQUENCE, etc.

DELETE-BUCKET-LIFECYCLE (BUCKET &KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

Delete the lifecycle configuration of BUCKET.

DRAINED-STREAM-VECTOR (STREAM)

Read octets from STREAM until EOF and them as an octet vector.

HTTP-DATE-STRING (&OPTIONAL (TIME (GET-UNIVERSAL-TIME)))

Return a HTTP-style date string.

ISO8601-DATE-STRING (&OPTIONAL (TIME (GET-UNIVERSAL-TIME)))

Return a HTTP-style date string.

LAST-ENTRY (ARRAY)

If ARRAY has one ore more entries, return the last one. Otherwise, return NIL.

LIFECYCLE-DOCUMENT (RULES)

Return an XML document that can be posted as the lifecycle configuration of a bucket. See http://docs.amazonwebservices.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#intro-lifecycle-rules for details.

MERGE-FILE-BUFFERS (BUFFERS SIZE)

Create one big vector from BUFFERS and TRAILER.

MERGE-INTO (DISTRIBUTION NEW)

Copy slot values from NEW into DISTRIBUTION.

MODIFY-AND-SAVE (FUN DISTRIBUTION)

Call the modification function FUN with DISTRIBUTION as its only argument, and push the modified configuration to Cloudfront. May refresh DISTRIBUTION if needed. FUN should not have side effects on anything but the DISTRIBUTION itself, as it may be re-tried multiple times.

PARSE-AMAZON-TIMESTAMP (STRING)

Convert the ISO 8601-format STRING to a universal time.

PARTIAL-STREAM-VECTOR (STREAM N)

Read N octets from STREAM and return them in an octet vector.

PUT-CONFIG (DISTRIBUTION)

Post DISTRIBUTION's configuration to AWS. Signals an error and does not retry in the event of an etag match problem.

READ-COMPLETE-FILE-BUFFER (STREAM &OPTIONAL BUFFER)

Read a complete buffer of size *FILE-BUFFER-SIZE*.

READ-EXACTLY-N-OCTETS (STREAM N &OPTIONAL BUFFER)

Read exactly N octets from STREAM into BUFFER. If fewer than N octets are read, signal an CL:END-OF-FILE error. If BUFFER is not supplied or is NIL, create a fresh buffer of length N and return it.

SAVE (RESPONSE FILE)

Write a sequence of octets RESPONSE to FILE.

SKIP-STREAM-OCTETS (STREAM COUNT)

Read and discard COUNT octets from STREAM.

STRING-OCTETS (STRING)

Return the UTF-8 encoding of STRING as a vector of octets.

TEXT (DATA)

@arg[data]{String.} @return{undocumented} Writes a text node to the current output sink, using @code{data} as its contents. Note: It is currently the caller's responsibily to ensure that @code{data} does not contain characters forbidden for character data.

TRY-TO-XML-BIND (BINDER-NAME SOURCE)

Like XML-BIND, but catches any XML-BINDING-ERRORs; if any errors are caught, NIL is the primary value and the error object is the secondary value.

URL-ENCODE (STRING)

Returns a URL-encoded version of the string STRING using the LispWorks external format EXTERNAL-FORMAT.

Undocumented

%DELETE-DISTRIBUTION (DISTRIBUTION)

ACCESS-POLICY-HEADER (ACCESS-POLICY PUBLIC)

ALIST-GRANT (BINDINGS)

BFUN (KEY)

BINDINGS-DISTRIBUTION (BINDINGS)

BINDINGS-LOGGING-SETUP (BINDINGS)

BULK-DELETE-DOCUMENT (KEYS)

BVALUE (KEY BINDINGS)

CANNED-ACCESS-POLICY (ACCESS-POLICY)

CANONICAL-DISTRIBUTION-BUCKET-NAME (NAME)

CHECK-REQUEST-SUCCESS (RESPONSE)

COLLECT-CHARACTERS (SOURCE)

CREATE-ALTERNATE-BINDER (SUBFORMS KK)

CREATE-OPTIONAL-BINDER (SUBFORMS KK)

CREATE-SUB-BINDER-BINDER (BINDER-NAME KK)

DISTRIBUTION-DOCUMENT (DISTRIBUTION)

DISTRIBUTION-REQUEST (&KEY DISTRIBUTION (METHOD GET) PARAMETERS URL-SUFFIX CONTENT ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

DISTRIBUTION-REQUEST-HEADERS (DISTRIBUTION)

ENDS-WITH (SUFFIX STRING)

ENSURE-ACL-GROUP (URI)

ERROR-READER-NAME (SUFFIX)

FILE-MD5 (FILE)

FILE-MD5/B64 (FILE)

FILE-MD5/HEX (FILE)

FILE-SIZE (FILE)

FILE-SUBSET-VECTOR (FILE START END)

FIND-BINDER (NAME &OPTIONAL (ERRORP T))

GENERATE-CALLER-REFERENCE

INVALIDATION-BATCH-DOCUMENT (INVALIDATION)

INVALIDATION-REQUEST (INVALIDATION &KEY (URL-SUFFIX ) (METHOD GET) CONTENT)

KEY-BINDING-KEY (BINDING)

KEYWORDIFY (STRING-DESIGNATOR)

LATEST-VERSION (DISTRIBUTION)

LOCATION-CONSTRAINT-XML (LOCATION)

MAKE-BINDER (FORM)

MAKE-DIGESTER (KEY)

MAKE-FILE-BUFFER

MAKE-FILE-WRITER-HANDLER (FILE &KEY (IF-EXISTS SUPERSEDE))

MAKE-OCTET-VECTOR (SIZE)

MAKE-STRING-WRITER-HANDLER (EXTERNAL-FORMAT)

MAYBE-SIGNAL-DISTRIBUTION-ERROR (HTTP-STATUS-CODE CONTENT)

PERMISSION-KEYWORD (PERMISSION)

PERMISSION-NAME (PERMISSION)

POLICY-SIGNATURE (KEY POLICY)

POLICY-STRING64 (POLICY)

PURI-CANONICALIZED-PATH (PATH)

REDIRECT-KEY (ENDPOINT BUCKET &KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

REDIRECTED-ENDPOINT (ENDPOINT BUCKET &KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

SETFREDIRECTED-ENDPOINT (NEW-VALUE ENDPOINT BUCKET &KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

REPORT-REQUEST-ERROR (CONDITION STREAM)

REQUEST-RESPONSE (REQUEST &KEY BODY-STREAM KEEP-STREAM (HANDLER 'SPECIALIZE-RESPONSE))

RESTORE-REQUEST-DOCUMENT (DAYS)

SEND-FILE-CONTENT (FUN REQUEST)

SET-ELEMENT-CLASS (ELEMENT-NAME CLASS)

SIGN-STRING (KEY STRING)

SIMPLE-ELEMENT (NAME VALUE)

SKIP-CHARACTERS (SOURCE)

SKIP-DOCUMENT-START (SOURCE)

SPECIFIC-ERROR (AMAZON-CODE)

STARTS-WITH (PREFIX STRING)

STREAM-IDENTITY-HANDLER (RESPONSE)

STREAM-SUBSET-VECTOR (STREAM START END)

STRING64 (STRING)

STRINGIFY (THING)

SUBMIT-REQUEST (REQUEST &KEY BODY-STREAM KEEP-STREAM (HANDLER 'SPECIALIZE-RESPONSE))

UNIX-TIME (&OPTIONAL (UNIVERSAL-TIME (GET-UNIVERSAL-TIME)))

URL-DECODE (STRING)

VECTOR-MD5/B64 (VECTOR)

VECTOR-WRITER-HANDLER (RESPONSE)

XML-BIND (BINDER-NAME SOURCE)

XML-DOCUMENT-ELEMENT (SOURCE)

XML-SOURCE (SOURCE)

MACRO

Private

WITH-ELEMENT (QNAME &BODY BODY)

@arg[qname]{A string, evaluated.} @arg[body]{forms, an implicit progn} @return{The result of @code{body}.} Writes an element to the current output sink. This macro is a convenience wrapper around @fun{with-element*}. @var{qname} is parsed to determine the element's namespace prefix and local name. Then @fun{with-element*} is called on @var{body} using the resulting values.

WITH-SAVED-MODIFICATIONS ((VAR DISTRIBUTION) &BODY BODY)

Make a series of changes to DISTRIBUTION and push the final result to AWS. BODY should not have side-effects on anything but the DISTRIBUTION itself, as it may be re-tried multiple times.

Undocumented

ALIST-BIND (BINDINGS ALIST &BODY BODY)

CATCHING-XML-ERRORS (&BODY BODY)

DEFBINDER (NAME &BODY SOURCE)

DEFINE-SPECIFIC-DISTRIBUTION-ERROR (ERROR-XML-CODE ERROR-NAME)

DEFINE-SPECIFIC-ERROR ((CONDITION-NAME CODE) SUPERCLASSES SLOTS &REST OPTIONS)

WITH-XML-OUTPUT (&BODY BODY)

GENERIC-FUNCTION

Public

DISABLE (DISTRIBUTION)

Mark DISTRIBUTION as disabled. Like ENABLE, DISABLE may take some time to take effect.

ENABLE (DISTRIBUTION)

Mark DISTRIBUTION as enabled. Enabling can take time to take effect; the STATUS of DISTRIBUTION will change from "InProgress" to "Deployed" when fully enabled.

ENSURE-CNAME (DISTRIBUTION CNAME)

Add CNAME to DISTRIBUTION's list of CNAMEs, if not already present.

REFRESH (DISTRIBUTION)

Pull down the latest data from AWS for DISTRIBUTION and update its slots.

Undocumented

ACL-EQV (A B)

DELETE-DISTRIBUTION (DISTRIBUTION)

DISTRIBUTION-ERROR-CODE (CONDITION)

SETFDISTRIBUTION-ERROR-CODE (NEW-VALUE CONDITION)

DISTRIBUTION-ERROR-DETAIL (CONDITION)

SETFDISTRIBUTION-ERROR-DETAIL (NEW-VALUE CONDITION)

DISTRIBUTION-ERROR-HTTP-STATUS-CODE (CONDITION)

SETFDISTRIBUTION-ERROR-HTTP-STATUS-CODE (NEW-VALUE CONDITION)

DISTRIBUTION-ERROR-TYPE (CONDITION)

SETFDISTRIBUTION-ERROR-TYPE (NEW-VALUE CONDITION)

REMOVE-CNAME (DISTRIBUTION CNAME)

SET-COMMENT (DISTRIBUTION COMMENT)

Private

MERGE-BINDINGS (OBJECT BINDINGS)

Update OBJECT with the data from BINDINGS.

Undocumented

ACL-SERIALIZE (OBJECT)

ACTUAL (CONDITION)

SETFACTUAL (NEW-VALUE CONDITION)

ADD-LINE (STRING DIGESTER)

ADD-NEWLINE (DIGESTER)

ADD-STRING (STRING DIGESTER)

ALL-AMAZON-HEADERS (REQUEST)

AMAZON-HEADER-SIGNING-LINES (REQUEST)

DATE-STRING (REQUEST)

DIGEST64 (DIGESTER)

DISTRIBUTION-ERROR-MESSAGE (CONDITION)

SETFDISTRIBUTION-ERROR-MESSAGE (NEW-VALUE CONDITION)

DISTRIBUTION-ID (OBJECT)

DRAKMA-HEADERS (REQUEST)

ERROR-DATA-VALUE (NAME INSTANCE)

EXPECTED (CONDITION)

SETFEXPECTED (NEW-VALUE CONDITION)

GRANTEE-FOR-PRINT (GRANTEE)

HTTP-METHOD (REQUEST)

INITIALIZE-LAZY-CREDENTIALS (CREDENTIALS)

LINKED-URL (CONDITION)

LOG-SERIALIZE (OBJECT)

MAYBE-SIGNAL-ERROR (RESPONSE)

POLICY-SERIALIZE (OBJECT STREAM)

REQUEST-ERROR-BUCKET-NAME (CONDITION)

REQUEST-ERROR-CONDITION (CONDITION)

REQUEST-ERROR-DATA (CONDITION)

REQUEST-ERROR-ENDPOINT (CONDITION)

REQUEST-ERROR-KEY-NAME (CONDITION)

REQUEST-ERROR-REQUEST (CONDITION)

REQUEST-ERROR-RESPONSE (CONDITION)

REQUEST-ERROR-STRING-TO-SIGN (CONDITION)

REQUEST-PATH (REQUEST)

RESPONSE-SPECIALIZED-CLASS (NAME)

SEND (REQUEST &KEY WANT-STREAM)

SIGNAL-SPECIFIC-ERROR (RESPONSE CONDITION-NAME)

SIGNATURE (REQUEST)

SIGNED-PATH (REQUEST)

SPECIALIZE-RESPONSE (RESPONSE)

SPECIALIZED-INITIALIZE (OBJECT SOURCE)

SUCCESSIVE-MARKER (RESPONSE)

SUCCESSIVE-REQUEST (RESPONSE)

UNSUPPORTED-CREDENTIALS-OBJECT (CONDITION)

SETFUNSUPPORTED-CREDENTIALS-OBJECT (NEW-VALUE CONDITION)

URL (REQUEST)

XML-STRING (RESPONSE)

XSI-TYPE (GRANTEE)

SLOT-ACCESSOR

Public

DOMAIN-NAME (OBJECT)

Amazon's assigned domain name.

SETFDOMAIN-NAME (NEW-VALUE OBJECT)

Amazon's assigned domain name.

ENABLEDP (OBJECT)

Whether this distribution should be enabled at creation time or not.

SETFENABLEDP (NEW-VALUE OBJECT)

Whether this distribution should be enabled at creation time or not.

LAST-MODIFIED (OBJECT)

Assigned by Amazon.

SETFLAST-MODIFIED (NEW-VALUE OBJECT)

Assigned by Amazon.

ORIGIN-BUCKET (OBJECT)

The S3 bucket that acts as the source of objects for the distribution.

SETFORIGIN-BUCKET (NEW-VALUE OBJECT)

The S3 bucket that acts as the source of objects for the distribution.

STATUS (OBJECT)

Assigned by Amazon.

SETFSTATUS (NEW-VALUE OBJECT)

Assigned by Amazon.

Undocumented

ACCESS-KEY (CREDENTIALS)

SETFACCESS-KEY (NEW-VALUE OBJECT)

BUCKET-NAME (OBJECT)

SETFBUCKET-NAME (NEW-VALUE OBJECT)

CNAMES (OBJECT)

SETFCNAMES (NEW-VALUE OBJECT)

COMMENT (OBJECT)

SETFCOMMENT (NEW-VALUE OBJECT)

COMMON-PREFIXES (OBJECT)

SETFCOMMON-PREFIXES (NEW-VALUE OBJECT)

CREATION-DATE (OBJECT)

SETFCREATION-DATE (NEW-VALUE OBJECT)

DEFAULT-ROOT-OBJECT (OBJECT)

SETFDEFAULT-ROOT-OBJECT (NEW-VALUE OBJECT)

DELIMITER (OBJECT)

SETFDELIMITER (NEW-VALUE OBJECT)

ETAG (OBJECT)

SETFETAG (NEW-VALUE OBJECT)

KEYS (OBJECT)

SETFKEYS (NEW-VALUE OBJECT)

LOGGING-BUCKET (OBJECT)

SETFLOGGING-BUCKET (NEW-VALUE OBJECT)

LOGGING-PREFIX (OBJECT)

SETFLOGGING-PREFIX (NEW-VALUE OBJECT)

MARKER (OBJECT)

SETFMARKER (NEW-VALUE OBJECT)

NAME (OBJECT)

SETFNAME (NEW-VALUE OBJECT)

OWNER (OBJECT)

SETFOWNER (NEW-VALUE OBJECT)

PREFIX (OBJECT)

SETFPREFIX (NEW-VALUE OBJECT)

SECRET-KEY (CREDENTIALS)

SETFSECRET-KEY (NEW-VALUE OBJECT)

SIZE (OBJECT)

SETFSIZE (NEW-VALUE OBJECT)

STORAGE-CLASS (OBJECT)

SETFSTORAGE-CLASS (NEW-VALUE OBJECT)

TRUNCATEDP (OBJECT)

SETFTRUNCATEDP (NEW-VALUE OBJECT)

Private

ACTION (OBJECT)

The action of this rule; must be either :EXPIRE (the default) or :TRANSITION. :TRANSITION means matching objects will transition to Glacier storage.

SETFACTION (NEW-VALUE OBJECT)

The action of this rule; must be either :EXPIRE (the default) or :TRANSITION. :TRANSITION means matching objects will transition to Glacier storage.

AMZ-HEADERS (OBJECT)

An alist of extra Amazon request headers. These should be straight string key/value pairs, WITHOUT any "x-amz-" prefix.

SETFAMZ-HEADERS (NEW-VALUE OBJECT)

An alist of extra Amazon request headers. These should be straight string key/value pairs, WITHOUT any "x-amz-" prefix.

BUCKET (OBJECT)

A string naming the bucket to address in the request. If NIL, request is not directed at a specific bucket.

SETFBUCKET (NEW-VALUE OBJECT)

A string naming the bucket to address in the request. If NIL, request is not directed at a specific bucket.

CALLER-REFERENCE (OBJECT)

A unique value provided by the caller to prevent replays. See http://docs.amazonwebservices.com/AmazonCloudFront/2008-06-30/DeveloperGuide/index.html?AboutCreatingDistributions.html

SETFCALLER-REFERENCE (NEW-VALUE OBJECT)

A unique value provided by the caller to prevent replays. See http://docs.amazonwebservices.com/AmazonCloudFront/2008-06-30/DeveloperGuide/index.html?AboutCreatingDistributions.html

CREDENTIALS (OBJECT)

An object that has methods for ACCESS-KEY and SECRET-KEY. A list of two strings (the keys) suffices.

SETFCREDENTIALS (NEW-VALUE OBJECT)

An object that has methods for ACCESS-KEY and SECRET-KEY. A list of two strings (the keys) suffices.

DATE (OBJECT)

The date at [XXX after?] which the rule takes effect. One of DAYS or DATE must be provided.

SETFDATE (NEW-VALUE OBJECT)

The date at [XXX after?] which the rule takes effect. One of DAYS or DATE must be provided.

DAYS (OBJECT)

The number of days after which the rule action will take effect. Can be zero, meaning that it should take effect the next time Amazon's periodic transitioning process runs. One of DAYS or DATE must be provided.

SETFDAYS (NEW-VALUE OBJECT)

The number of days after which the rule action will take effect. Can be zero, meaning that it should take effect the next time Amazon's periodic transitioning process runs. One of DAYS or DATE must be provided.

EXTRA-HTTP-HEADERS (OBJECT)

An alist of extra HTTP headers to include in the request.

SETFEXTRA-HTTP-HEADERS (NEW-VALUE OBJECT)

An alist of extra HTTP headers to include in the request.

ID (OBJECT)

Amazon's assigned unique ID.

SETFID (NEW-VALUE OBJECT)

Amazon's assigned unique ID.

KEY (OBJECT)

A string naming the key to address in the request. If NIL, request is not directed at a specific key.

SETFKEY (NEW-VALUE OBJECT)

A string naming the key to address in the request. If NIL, request is not directed at a specific key.

METADATA (OBJECT)

An alist of Amazon metadata to attach to a request. These should be straight string key/value pairs, WITHOUT any "x-amz-meta-" prefix.

SETFMETADATA (NEW-VALUE OBJECT)

An alist of Amazon metadata to attach to a request. These should be straight string key/value pairs, WITHOUT any "x-amz-meta-" prefix.

METHOD (OBJECT)

e.g. :GET, :PUT, :DELETE

SETFMETHOD (NEW-VALUE OBJECT)

e.g. :GET, :PUT, :DELETE

PARAMETERS (OBJECT)

An alist of string key/value pairs to send as CGI-style GET parameters with the request. If SUB-RESOURCE is set, these must be NIL.

SETFPARAMETERS (NEW-VALUE OBJECT)

An alist of string key/value pairs to send as CGI-style GET parameters with the request. If SUB-RESOURCE is set, these must be NIL.

SUB-RESOURCE (OBJECT)

A sub-resource to address as part of the request, without a leading "?", e.g. "acl", "torrent". If PARAMETERS is set, this must be NIL.

SETFSUB-RESOURCE (NEW-VALUE OBJECT)

A sub-resource to address as part of the request, without a leading "?", e.g. "acl", "torrent". If PARAMETERS is set, this must be NIL.

Undocumented

ACL (OBJECT)

SETFACL (NEW-VALUE OBJECT)

BODY (OBJECT)

SETFBODY (NEW-VALUE OBJECT)

BUCKETS (OBJECT)

SETFBUCKETS (NEW-VALUE OBJECT)

CLOSURE (OBJECT)

SETFCLOSURE (NEW-VALUE OBJECT)

CODE (OBJECT)

SETFCODE (NEW-VALUE OBJECT)

CONDITIONS (OBJECT)

SETFCONDITIONS (NEW-VALUE OBJECT)

CONTENT (OBJECT)

SETFCONTENT (NEW-VALUE OBJECT)

CONTENT-LENGTH (RESPONSE)

SETFCONTENT-LENGTH (NEW-VALUE OBJECT)

CONTENT-MD5 (OBJECT)

SETFCONTENT-MD5 (NEW-VALUE OBJECT)

CONTENT-TYPE (OBJECT)

SETFCONTENT-TYPE (NEW-VALUE OBJECT)

CREATE-TIME (OBJECT)

SETFCREATE-TIME (NEW-VALUE OBJECT)

DISPLAY-NAME (OBJECT)

SETFDISPLAY-NAME (NEW-VALUE OBJECT)

DISTRIBUTION (OBJECT)

SETFDISTRIBUTION (NEW-VALUE OBJECT)

EMAIL (OBJECT)

SETFEMAIL (NEW-VALUE OBJECT)

ENDPOINT (OBJECT)

SETFENDPOINT (NEW-VALUE OBJECT)

ERROR-DATA (OBJECT)

SETFERROR-DATA (NEW-VALUE OBJECT)

EXPIRES (OBJECT)

SETFEXPIRES (NEW-VALUE OBJECT)

FILE (OBJECT)

SETFFILE (NEW-VALUE OBJECT)

GRANTEE (OBJECT)

SETFGRANTEE (NEW-VALUE OBJECT)

GRANTS (OBJECT)

SETFGRANTS (NEW-VALUE OBJECT)

HMAC (OBJECT)

SETFHMAC (NEW-VALUE OBJECT)

HTTP-CODE (OBJECT)

SETFHTTP-CODE (NEW-VALUE OBJECT)

HTTP-HEADERS (OBJECT)

SETFHTTP-HEADERS (NEW-VALUE OBJECT)

HTTP-PHRASE (OBJECT)

SETFHTTP-PHRASE (NEW-VALUE OBJECT)

LABEL (OBJECT)

SETFLABEL (NEW-VALUE OBJECT)

LOCATION (OBJECT)

SETFLOCATION (NEW-VALUE OBJECT)

MAX-KEYS (OBJECT)

SETFMAX-KEYS (NEW-VALUE OBJECT)

MESSAGE (OBJECT)

SETFMESSAGE (NEW-VALUE OBJECT)

NEWLINE (OBJECT)

SETFNEWLINE (NEW-VALUE OBJECT)

NEXT-MARKER (OBJECT)

SETFNEXT-MARKER (NEW-VALUE OBJECT)

PATHS (OBJECT)

SETFPATHS (NEW-VALUE OBJECT)

PERMISSION (OBJECT)

SETFPERMISSION (NEW-VALUE OBJECT)

REQUEST (OBJECT)

SETFREQUEST (NEW-VALUE OBJECT)

SETUP (OBJECT)

SETFSETUP (NEW-VALUE OBJECT)

SIGNED-STREAM (OBJECT)

SETFSIGNED-STREAM (NEW-VALUE OBJECT)

SIGNED-STRING (OBJECT)

SETFSIGNED-STRING (NEW-VALUE OBJECT)

SOURCE (OBJECT)

SETFSOURCE (NEW-VALUE OBJECT)

SSL (OBJECT)

SETFSSL (NEW-VALUE OBJECT)

TARGET-BUCKET (OBJECT)

SETFTARGET-BUCKET (NEW-VALUE OBJECT)

TARGET-GRANTS (OBJECT)

SETFTARGET-GRANTS (NEW-VALUE OBJECT)

TARGET-PREFIX (OBJECT)

SETFTARGET-PREFIX (NEW-VALUE OBJECT)

URI (OBJECT)

SETFURI (NEW-VALUE OBJECT)

VARIABLE

Public

*CREDENTIALS*

Used as the default initarg value of :CREDENTIALS when creating a request.

Undocumented

*ALL-USERS*

*AWS-USERS*

*LOG-DELIVERY*

*USE-SSL*

Private

*DISTRIBUTION-SPECIFIC-ERRORS*

This table is used to signal the most specific error possible for distribution request error responses.

*EMPTY-LOGGING-SETUP*

An empty logging setup; putting this into the logging setup of a bucket effectively disables logging.

*LOG-DELIVERY-GRANTS*

This list of grants is used to allow the Amazon log delivery group to write logfile objects into a particular bucket.

*ME-CACHE*

A cache for the result of the ME function. Keys are Amazon access key strings.

*PERMANENT-REDIRECTS*

Some bucket operations make permanent redirects to different endpoints. This table stores access-key/bucket redirects for use when creating requests.

*PUBLIC-READ-GRANT*

This grant is added to or removed from an ACL to grant or revoke read access for all users.

Undocumented

*BINDER-DEFINITIONS*

*CALLER-REFERENCE-COUNTER*

*CANNED-ACCESS-POLICIES*

*CANONICAL-BUCKET-NAME-SUFFIX*

*CLOUDFRONT-BASE-URL*

*DAYS*

*FILE-BUFFER-SIZE*

*MONTHS*

*PERMISSIONS*

*RESPONSE-ELEMENT-CLASSES*

*S3-ENDPOINT*

*SPECIFIC-ERRORS*

*USE-CONTENT-MD5*

*XSI*

+UNIX-TIME-DIFFERENCE+

CLASS

Public

LIFECYCLE-RULE (&KEY ID PREFIX (ENABLED T) DAYS DATE (ACTION EXPIRE))

A lifecycle rule. See http://docs.amazonwebservices.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#intro-lifecycle-rules.

Undocumented

ACL-EMAIL (ADDRESS)

ACL-PERSON (ID &OPTIONAL DISPLAY-NAME)

ALL-BUCKETS (&KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

FILE-CREDENTIALS (FILE)

GRANT (PERMISSION &KEY TO)

LOGGING-SETUP (BUCKET &KEY ((CREDENTIALS *CREDENTIALS*) *CREDENTIALS*))

Private

Undocumented

ACCESS-CONTROL-LIST

ACL-GROUP

ACL-RESPONSE

AMAZON-ERROR

BINDER

BUCKET (OBJECT)

BUCKET-LISTING

DIGESTER

DISTRIBUTION (OBJECT)

INVALIDATION

KEY (OBJECT)

LAZY-CREDENTIALS-MIXIN

LOCATION-CONSTRAINT

LOGGING

PERSON

POST-POLICY

REQUEST (OBJECT)

RESPONSE

URL-BASED-REQUEST

CONDITION

Public

Undocumented

ACCESS-DENIED

AMBIGUOUS-GRANT

BUCKET-EXISTS

BUCKET-NOT-EMPTY

CNAME-ALREADY-EXISTS

DISTRIBUTION-ERROR

DISTRIBUTION-NOT-DISABLED

INVALID-BUCKET-NAME

INVALID-LOGGING-TARGET

KEY-TOO-LONG

NO-SUCH-BUCKET

NO-SUCH-KEY

NO-SUCH-LIFECYCLE-CONFIGURATION

OPERATION-ABORTED

PRECONDITION-FAILED

REQUEST-TIME-SKEWED

RESTORE-ALREADY-IN-PROGRESS

SIGNATURE-MISMATCH

SLOW-DOWN

TOO-MANY-BUCKETS

TOO-MANY-DISTRIBUTIONS

Private

Undocumented

BUCKET-RESTRICTIONS

DISTRIBUTION-PRECONDITION-FAILED

INTERNAL-ERROR

INVALID-IF-MATCH-VERSION

LINKED

MALFORMED-XML

PERMANENT-REDIRECT

REDIRECT-ERROR

REQUEST-ERROR

TEMPORARY-REDIRECT

UNSUPPORTED-CREDENTIALS

XML-BINDING-ERROR