com.github.cloudfiles.core.http
Members list
Packages
Type members
Classlikes
An actor implementation for sending HTTP requests to a specific host.
An actor implementation for sending HTTP requests to a specific host.
This module provides an actor-like wrapper around Akka HTTP's host level API. An HTTP request can be sent by passing a message to this actor. The actor processes the request and replies with a corresponding response.
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
HttpRequestSender.type
An actor implementation that can send HTTP requests to multiple hosts.
An actor implementation that can send HTTP requests to multiple hosts.
Being a layer on top of Akka HTTP's host level API, HttpRequestSender is configured with a single host, to which all requests are sent. This actor implementation overcomes this limitation by creating request actors dynamically whenever a request to a new host is encountered. All request actors managed by an instance are hold in a map, so they are reused. The creation of new child actors is done via a factory function, so it can be customized if necessary.
Note that this implementation is not intended to be used as a generic mechanism for sending arbitrary HTTP requests; keeping all the different request actors around would be rather ineffective. Some protocols, however, require that requests are sent to different hosts, for instance when file downloads are handled by a different server than other API calls.
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
MultiHostExtension.type
A module defining functionality related to proxy support for actors sending HTTP(S) requests.
A module defining functionality related to proxy support for actors sending HTTP(S) requests.
Proxies are enabled by passing a special ''ProxySelectorFunc'' to the ''apply()'' function of HttpRequestSender. The function then installs a proxy based on the URL to be used by the actor. This module defines a couple of default proxy selector functions.
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
ProxySupport.type
An extension actor that intercepts requests, which failed with a 429 - TOO MANY REQUESTS status code and retries them after a delay.
An extension actor that intercepts requests, which failed with a 429 - TOO MANY REQUESTS status code and retries them after a delay.
When interacting with public servers and downloading or uploading many small files, the server can reject requests with the failure status 429. In this case, the response should typically contain a ''Retry-After'' header that determines when further requests are accepted again. The actor evaluates this header and re-schedules the execution of the request when this point of time is reached.
The actor can be configured with a minimum delay, which is also used if a response does not contain a ''Retry-After'' header.
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
RetryAfterExtension.type
A class representing a secret piece of data, such as a password or an OAuth client secret.
A class representing a secret piece of data, such as a password or an OAuth client secret.
The main purpose of this class is to store the secret information in a different representation than a plain string and to provide it as a string on demand.
Value parameters
- secretRaw
-
the secret as character array
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
An object providing functionality to encode and normalize URIs.
An object providing functionality to encode and normalize URIs.
Many of the concrete ''FileSystem'' implementations have to manipulate URIs. This helper class provides some utility functionality in this area. It supports encoding and decoding URIs and their components, splitting URIs into their path components, concatenating path components, etc.
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
UriEncodingHelper.type