For example if you want the aws/sns procedures to have an sns- prefix, so that create-topic is renamed to sns-create-topic:
|(require aws/keys)||package: aws|
file : path? = (build-path(find-system-path 'home-dir) ".aws-keys")
By default this file is ~/.aws-keys. You probably want to chmod the permissions of this file carefully.
|(require aws/exn)||package: aws|
(struct exn:fail:aws (http-code http-message aws-code aws-message) #:extra-constructor-name make-exn:fail:aws) http-code : exact-positive-integer? http-message : string? aws-code : string? aws-message : string?
(header&response->exn:fail:aws headers body ccm) → exn:fail:aws? headers : string? body : (or/c bytes? xexpr?) ccm : continuation-mark-set?
(check-response in headers)
→ (or/c string? (raise/c exn:fail:aws?)) in : input-port? headers : string?
Otherwise, read the XML response body from in and use the information to construct and raise exn:fail:aws.
Note: This does not close the input port in before raising an
exception. It assumes you are using call/requests,
call/input-request, or call/output-request from the
http/request library (or using dynamic-wind or other
exception handling, or a custodian—
This can be faster, especially for many small requests in a row.
In the following example, the first list-buckets request will leave the connection open for 30 seconds. As a result, the second list-buckets request will reuse the same connection. After another 30 seconds, the connection will be closed automatically.
(require http/request aws/s3) (parameterize ([current-pool-timeout 30]) (list-buckets) (list-buckets))