Public Member Functions | Static Public Member Functions | List of all members
kvikio::S3PublicEndpoint Class Reference

A remote endpoint for publicly accessible S3 objects without authentication. More...

#include <remote_handle.hpp>

Inheritance diagram for kvikio::S3PublicEndpoint:
kvikio::RemoteEndpoint

Public Member Functions

 S3PublicEndpoint (std::string url)
 
void setopt (CurlHandle &curl) override
 Set needed connection options on a curl handle. More...
 
std::string str () const override
 Get a description of this remote point instance. More...
 
std::size_t get_file_size () override
 Get the size of the remote file. More...
 
void setup_range_request (CurlHandle &curl, std::size_t file_offset, std::size_t size) override
 Set up the range request in order to read part of a file given the file offset and read size.
 
- Public Member Functions inherited from kvikio::RemoteEndpoint
RemoteEndpointType remote_endpoint_type () const noexcept
 Get the type of the remote file. More...
 

Static Public Member Functions

static bool is_url_valid (std::string const &url) noexcept
 Whether the given URL is valid for S3 public endpoints. More...
 

Additional Inherited Members

- Protected Member Functions inherited from kvikio::RemoteEndpoint
 RemoteEndpoint (RemoteEndpointType remote_endpoint_type)
 
- Protected Attributes inherited from kvikio::RemoteEndpoint
RemoteEndpointType _remote_endpoint_type {RemoteEndpointType::AUTO}
 

Detailed Description

A remote endpoint for publicly accessible S3 objects without authentication.

This endpoint is for accessing S3 objects configured with public read permissions, requiring no authentication. Supports AWS S3 services with anonymous access enabled.

Definition at line 273 of file remote_handle.hpp.

Member Function Documentation

◆ get_file_size()

std::size_t kvikio::S3PublicEndpoint::get_file_size ( )
overridevirtual

Get the size of the remote file.

Returns
The file size

Implements kvikio::RemoteEndpoint.

◆ is_url_valid()

static bool kvikio::S3PublicEndpoint::is_url_valid ( std::string const &  url)
staticnoexcept

Whether the given URL is valid for S3 public endpoints.

Parameters
urlA URL.
Returns
Boolean answer.

◆ setopt()

void kvikio::S3PublicEndpoint::setopt ( CurlHandle curl)
overridevirtual

Set needed connection options on a curl handle.

Subsequently, a call to curl.perform() should connect to the endpoint.

Parameters
curlThe curl handle.

Implements kvikio::RemoteEndpoint.

◆ str()

std::string kvikio::S3PublicEndpoint::str ( ) const
overridevirtual

Get a description of this remote point instance.

Returns
A string description.

Implements kvikio::RemoteEndpoint.


The documentation for this class was generated from the following file: