package aws-s3-lwt

  1. Overview
  2. Docs

Lwt aware S3 commands. For API documentation

  • see ../../../aws-s3/Aws_s3/S3/Make/index.html

    (Aws_s3.S3.Make)

    Lwt uses a default buffer size of 4096 bytes, which means that on high speed connections lwt will make needlessly many read / write system calls.

    When transferring data over high speed connections, it is recommended to increase the global channel buffer size e.g: Lwt_io.set_default_buffer_size (128*1024).

    Each operation will allocate at least 2*default_buffer_size.

include sig ... end
type error =
  1. | Redirect of Aws_s3.Region.endpoint
  2. | Throttled
  3. | Unknown of int * string
  4. | Failed of exn
  5. | Forbidden
  6. | Not_found
type etag = string
type storage_class =
  1. | Standard
  2. | Standard_ia
  3. | Onezone_ia
  4. | Reduced_redundancy
  5. | Glacier
type content = {
  1. storage_class : storage_class;
  2. size : int;
  3. last_modified : float;
  4. key : string;
  5. etag : etag;
  6. meta_headers : (string * string) list option;
}
type nonrec 'a result = ('a, error) result Io.Deferred.t
type !'a command = ?credentials:Aws_s3.Credentials.t -> ?connect_timeout_ms:int -> ?confirm_requester_pays:bool -> endpoint:Aws_s3.Region.endpoint -> 'a
module Ls : sig ... end
module Delete_multi : sig ... end
type range = {
  1. first : int option;
  2. last : int option;
}
val put : (?content_type:string -> ?content_encoding:string -> ?acl:string -> ?cache_control:string -> ?expect:bool -> ?meta_headers:(string * string) list -> bucket:string -> key:string -> data:string -> unit -> etag result) command
val get : (?range:range -> bucket:string -> key:string -> unit -> string result) command
val head : (bucket:string -> key:string -> unit -> content result) command
val delete : (bucket:string -> key:string -> unit -> unit result) command
val delete_multi : (bucket:string -> objects:Delete_multi.objekt list -> unit -> Delete_multi.result result) command
val ls : (?start_after:string -> ?continuation_token:string -> ?prefix:string -> ?max_keys:int -> bucket:string -> unit -> Ls.t) command
module Stream : sig ... end
module Multipart_upload : sig ... end
val retry : endpoint:Aws_s3.Region.endpoint -> retries:int -> f:(endpoint:Aws_s3.Region.endpoint -> unit -> 'a result) -> unit -> 'a result