userver: s3api Namespace Reference
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
s3api Namespace Reference

Detailed Description

Top namespace for S3 library.

For more information see S3 API .

Classes

class  AuthHeaderConflictError
 
class  Client
 
class  ClientImpl
 Implementation of S3 client. More...
 
struct  ConnectionCfg
 Connection settings - retries, timeouts, and so on. More...
 
class  GMockClient
 
class  ListBucketError
 
class  NoBucketError
 
struct  ObjectMeta
 
struct  Request
 
class  S3Connection
 

Typedefs

using Secret = ::utils::NonLoggable<class SecretTag, std::string>
 
using ClientPtr = std::shared_ptr<Client>
 

Enumerations

enum class  S3ConnectionType {
  kHttp ,
  kHttps
}
 

Functions

ClientPtr GetS3Client (std::shared_ptr< S3Connection > s3conn, std::shared_ptr< authenticators::AccessKey > authenticator, std::string bucket)
 
ClientPtr GetS3Client (std::shared_ptr< S3Connection > s3conn, std::shared_ptr< authenticators::Authenticator > authenticator, std::string bucket)
 
std::shared_ptr< S3ConnectionMakeS3Connection (clients::http::Client &http_client, S3ConnectionType connection_type, std::string server_url, const ConnectionCfg &params)
 
S3ConnectionType Parse (const formats::json::Value &elem, formats::parse::To< S3ConnectionType >)
 
std::string_view ToStringView (S3ConnectionType connection_type)
 
std::string ToString (S3ConnectionType connection_type)
 

Typedef Documentation

◆ ClientPtr

typedef std::shared_ptr< Client > s3api::ClientPtr = std::shared_ptr<Client>

Definition at line 196 of file s3api.hpp.

◆ Secret

using s3api::Secret = ::utils::NonLoggable<class SecretTag, std::string>

Definition at line 14 of file secret.hpp.

Enumeration Type Documentation

◆ S3ConnectionType

enum class s3api::S3ConnectionType
strong

Definition at line 15 of file s3api_connection_type.hpp.

Function Documentation

◆ GetS3Client() [1/2]

ClientPtr s3api::GetS3Client ( std::shared_ptr< S3Connection > s3conn,
std::shared_ptr< authenticators::AccessKey > authenticator,
std::string bucket )

Definition at line 493 of file client.cpp.

◆ GetS3Client() [2/2]

ClientPtr s3api::GetS3Client ( std::shared_ptr< S3Connection > s3conn,
std::shared_ptr< authenticators::Authenticator > authenticator,
std::string bucket )

Definition at line 503 of file client.cpp.

◆ MakeS3Connection()

std::shared_ptr< S3Connection > s3api::MakeS3Connection ( clients::http::Client & http_client,
S3ConnectionType connection_type,
std::string server_url,
const ConnectionCfg & params )

Create an S3Connection object. By itself, it does nothing, but you need one to create S3 client

Examples
samples/s3api/src/s3api_client.cpp.

Definition at line 113 of file s3_connection.cpp.

◆ Parse()

S3ConnectionType s3api::Parse ( const formats::json::Value & elem,
formats::parse::To< S3ConnectionType >  )

Definition at line 10 of file s3api_connection_type.cpp.

◆ ToString()

std::string s3api::ToString ( S3ConnectionType connection_type)

Definition at line 31 of file s3api_connection_type.cpp.

◆ ToStringView()

std::string_view s3api::ToStringView ( S3ConnectionType connection_type)

Definition at line 21 of file s3api_connection_type.cpp.