7 #include "util/status.h" 16 class HttpsClientPool;
26 static const char* kRootDomain;
29 using ListObjectCb = std::function<void(
size_t, absl::string_view)>;
45 static bool SplitToBucketPath(absl::string_view input, absl::string_view* bucket,
46 absl::string_view* path);
48 static std::string ToFullPath(absl::string_view bucket, absl::string_view key_path);
72 const file::ReadonlyFile::Options& opts = file::ReadonlyFile::Options{});
86 StatusObject<file::WriteFile*> OpenS3WriteFile(
87 absl::string_view key_path,
const AWS& aws, http::HttpsClientPool* pool);
90 bool IsS3Path(absl::string_view path);
94 std::vector<std::string> ParseXmlListBuckets(absl::string_view xml_obj);
std::function< void(size_t, absl::string_view)> ListObjectCb
Called with (size, key_name) pairs.
ListObjectResult List(absl::string_view glob, bool fs_mode, ListObjectCb cb)
Lists objects for a particular bucket.
S3Bucket(const AWS &aws, http::HttpsClientPool *pool)