|
Haio 0.2.X
Homebrew Asset IO/CDN
|
#include <haio_cdn.hpp>#include <boost/asio/awaitable.hpp>#include <list>#include <map>#include <memory>#include <optional>#include <stdexcept>#include <string>#include <vector>

Go to the source code of this file.
Classes | |
| struct | Haio::Cdn::Bucket::Failure |
| struct | Haio::Cdn::Bucket::ZipEntry |
| struct | Haio::Cdn::Bucket::ZipIndex |
| struct | Haio::Cdn::Bucket::ZipPath |
| class | Haio::Cdn::Bucket::ZipArchives |
| struct | Haio::Cdn::Bucket::ZipArchives::Archive |
Namespaces | |
| namespace | Haio |
| namespace | Haio::Cdn |
| namespace | Haio::Cdn::Bucket |
Typedefs | |
| using | Haio::Cdn::Bucket::Headers = std::map<std::string, std::string> |
Functions | |
| Blob | Haio::Cdn::Bucket::fetchFile (const BucketConfig &bucket, std::string path) |
| boost::asio::awaitable< Blob > | Haio::Cdn::Bucket::fetchHttp (const BucketConfig &bucket, std::string path) |
| boost::asio::awaitable< Blob > | Haio::Cdn::Bucket::fetchUrlWith (std::string url, std::string pathForFormat, Headers headers) |
| boost::asio::awaitable< Blob > | Haio::Cdn::Bucket::fetchS3 (const BucketConfig &bucket, std::string path) |
| std::string | Haio::Cdn::Bucket::awsSignatureV4 (std::string_view secret, std::string_view date, std::string_view region, std::string_view service, std::string_view stringToSign) |
| Result< ZipIndex > | Haio::Cdn::Bucket::readZipIndex (Bytes data) |
| Result< std::vector< uint8_t > > | Haio::Cdn::Bucket::readZipEntry (Bytes data, const ZipEntry &entry, size_t maxSize) |
| std::optional< ZipPath > | Haio::Cdn::Bucket::splitZipPath (std::string_view path) |
| boost::asio::awaitable< Blob > | Haio::Cdn::Bucket::fetchInsideZip (const BucketConfig &bucket, const ZipPath &path, const SecurityConfig &security, ZipArchives &archives) |
| struct Haio::Cdn::Bucket::ZipEntry |
where one file sits inside an archive, as the zip's own directory records it
Definition at line 63 of file bucket.hpp.
| Class Members | ||
|---|---|---|
| uint32_t | at = 0 | |
| uint32_t | compressed = 0 | |
| uint16_t | method = 0 | |
| uint32_t | uncompressed = 0 | |
| struct Haio::Cdn::Bucket::ZipIndex |
Definition at line 70 of file bucket.hpp.
| Class Members | ||
|---|---|---|
| map< string, ZipEntry > | entries | |
| struct Haio::Cdn::Bucket::ZipPath |
"pack.zip/logo.png" split into the archive and the name inside it, or nothing when the path names no archive. the split is on the first ".zip/", so an archive inside an archive is read as a file inside the outer one rather than opened again.
Definition at line 82 of file bucket.hpp.
| Class Members | ||
|---|---|---|
| string | archive | |
| string | inside | |
| struct Haio::Cdn::Bucket::ZipArchives::Archive |
Definition at line 102 of file bucket.hpp.

| Class Members | ||
|---|---|---|
| vector< uint8_t > | data | |
| ZipIndex | index | |