#include <S3Archive.h>
|
| S3Archive (const std::string &url, const bool plain_text) |
|
| S3Archive (const std::string &url, const std::string &s3_access_key, const std::string &s3_secret_key, const std::string &s3_session_token, const std::string &s3_region, const std::string &s3_endpoint, const bool plain_text, const std::optional< std::string > ®ex_path_filter, const std::optional< std::string > &file_sort_order_by, const std::optional< std::string > &file_sort_regex, const std::string &s3_temp_dir_path={}) |
|
| ~S3Archive () override |
|
void | init_for_read () override |
|
const std::vector< std::string > & | get_objkeys () |
|
const std::string | land (const std::string &objkey, std::exception_ptr &teptr, const bool for_detection) |
|
void | vacuum (const std::string &objkey) |
|
size_t | get_total_file_size () const |
|
| Archive (const std::string url, const bool plain_text) |
|
virtual | ~Archive () |
|
virtual std::string | archive_error (int err) |
|
virtual bool | read_next_header () |
|
virtual bool | read_data_block (const void **buff, size_t *size, int64_t *offset) |
|
virtual int64_t | get_position_compressed () const |
|
virtual int | open () |
|
virtual int | close () |
|
virtual ptrdiff_t | read (const void **buff) |
|
const std::string | url_part (const int i) |
|
std::string | entryName () |
|
|
static ptrdiff_t | read (struct archive *a, void *client_data, const void **buff) |
|
static int | open (struct archive *a, void *client_data) |
|
static int | close (struct archive *a, void *client_data) |
|
static void | parse_url (const std::string url, std::map< int, std::string > &url_parts) |
|
std::string | url |
|
std::map< int, std::string > | url_parts |
|
archive * | ar = 0 |
|
archive_entry * | entry |
|
bool | plain_text |
|
Definition at line 41 of file S3Archive.h.
S3Archive::S3Archive |
( |
const std::string & |
url, |
|
|
const bool |
plain_text |
|
) |
| |
|
inline |
Definition at line 43 of file S3Archive.h.
References s3_access_key, s3_endpoint, s3_region, s3_secret_key, and s3_session_token.
47 if (0 != (env = getenv(
"AWS_REGION"))) {
50 if (0 != (env = getenv(
"AWS_ACCESS_KEY_ID"))) {
53 if (0 != (env = getenv(
"AWS_SECRET_ACCESS_KEY"))) {
56 if (0 != (env = getenv(
"AWS_SESSION_TOKEN"))) {
60 if (0 != (env = getenv(
"AWS_ENDPOINT"))) {
std::string s3_access_key
std::string s3_session_token
std::string s3_secret_key
Archive(const std::string url, const bool plain_text)
S3Archive::S3Archive |
( |
const std::string & |
url, |
|
|
const std::string & |
s3_access_key, |
|
|
const std::string & |
s3_secret_key, |
|
|
const std::string & |
s3_session_token, |
|
|
const std::string & |
s3_region, |
|
|
const std::string & |
s3_endpoint, |
|
|
const bool |
plain_text, |
|
|
const std::optional< std::string > & |
regex_path_filter, |
|
|
const std::optional< std::string > & |
file_sort_order_by, |
|
|
const std::optional< std::string > & |
file_sort_regex, |
|
|
const std::string & |
s3_temp_dir_path = {} |
|
) |
| |
|
inline |
Definition at line 65 of file S3Archive.h.
86 if (s3_temp_dir_path.empty()) {
89 auto env_s3_temp_dir = getenv(
"TMPDIR");
90 s3_temp_dir = env_s3_temp_dir ? env_s3_temp_dir :
"/tmp";
std::string s3_access_key
std::optional< std::string > file_sort_regex
std::optional< std::string > regex_path_filter
std::optional< std::string > file_sort_order_by
std::string s3_session_token
std::string s3_secret_key
S3Archive(const std::string &url, const bool plain_text)
S3Archive::~S3Archive |
( |
| ) |
|
|
inlineoverride |
Definition at line 96 of file S3Archive.h.
98 for (
auto& thread : threads) {
99 if (thread.joinable()) {
103 #endif // HAVE_AWS_S3
const std::vector<std::string>& S3Archive::get_objkeys |
( |
| ) |
|
|
inline |
size_t S3Archive::get_total_file_size |
( |
| ) |
const |
|
inline |
void S3Archive::init_for_read |
( |
| ) |
|
|
inlineoverridevirtual |
Reimplemented from Archive.
Definition at line 109 of file S3Archive.h.
110 throw std::runtime_error(
"AWS S3 support not available");
const std::string S3Archive::land |
( |
const std::string & |
objkey, |
|
|
std::exception_ptr & |
teptr, |
|
|
const bool |
for_detection |
|
) |
| |
|
inline |
Definition at line 124 of file S3Archive.h.
127 throw std::runtime_error(
"AWS S3 support not available");
void S3Archive::vacuum |
( |
const std::string & |
objkey | ) |
|
|
inline |
Definition at line 129 of file S3Archive.h.
130 throw std::runtime_error(
"AWS S3 support not available");
std::string S3Archive::bucket_name |
|
private |
std::map<const std::string, const std::string> S3Archive::file_paths |
|
private |
std::optional<std::string> S3Archive::file_sort_order_by |
|
private |
std::optional<std::string> S3Archive::file_sort_regex |
|
private |
std::vector<std::string> S3Archive::objkeys |
|
private |
std::string S3Archive::prefix_name |
|
private |
std::optional<std::string> S3Archive::regex_path_filter |
|
private |
std::string S3Archive::s3_access_key |
|
private |
std::string S3Archive::s3_endpoint |
|
private |
std::string S3Archive::s3_region |
|
private |
std::string S3Archive::s3_secret_key |
|
private |
std::string S3Archive::s3_session_token |
|
private |
std::string S3Archive::s3_temp_dir |
|
private |
size_t S3Archive::total_file_size {0} |
|
private |
The documentation for this class was generated from the following files:
- /home/jenkins-slave/workspace/core-os-doxygen/Archive/S3Archive.h
- /home/jenkins-slave/workspace/core-os-doxygen/Archive/S3Archive.cpp