http
Module: connector::provider::http
Section titled “Module: connector::provider::http”Contents
Section titled “Contents”Structs
GenericHttpConnector- HTTP connector built on [reqwest::Client].HttpConnectorConfig- Build-time configuration for a [GenericHttpConnector] instance.RateLimitConfig- Token-bucket rate-limit parameters.
Enums
HttpConnectorBuildError- Errors raised while constructing a [GenericHttpConnector].
firma_sidecar::connector::provider::http::GenericHttpConnector
Section titled “firma_sidecar::connector::provider::http::GenericHttpConnector”Struct
HTTP connector built on [reqwest::Client].
One instance per configured host plus one registry default.
Connection pooling and HTTP/2 multiplexing are inherited from the
underlying client; the Arc<Client> is cheap to clone into the
registry.
The workspace reqwest dependency does not enable the gzip/brotli/
deflate/zstd features, so this client never automatically decodes a
compressed response body: a Content-Encoding-compressed upstream
response reaches the rest of the pipeline with its compressed bytes
intact. Secret-gateway response masking, HTTP secret provider
interception, and request placeholder rehydration each decode a
supported Content-Encoding themselves before scanning for plaintext
content-type structure (JSON/XML/form) and re-encode afterward (see
crate::body_encoding), so a compressed body no longer hides a secret
from any of them. The remaining sharp edge is narrower than it used to
be: an encoding body_encoding doesn’t support is opaque to these
layers, which — for the secret-bearing paths — fail closed rather than
forward or scan it unexamined.
Methods:
fn new(config: &HttpConnectorConfig) -> Result<Self, HttpConnectorBuildError>- Builds a connector with the given [HttpConnectorConfig].
Trait Implementations:
- Connector
fn dispatch(self: &'life0 Self, view: &'life1 TransportView) -> ::core::pin::Pin<Box<dyn ::core::future::Future>>
firma_sidecar::connector::provider::http::HttpConnectorBuildError
Section titled “firma_sidecar::connector::provider::http::HttpConnectorBuildError”Enum
Errors raised while constructing a [GenericHttpConnector].
Kept separate from [ConnectorError] because these failures are
startup-time configuration bugs, not hot-path dispatch outcomes.
Variants:
Client(String)- The underlying [reqwest::Client] could not be constructed.
firma_sidecar::connector::provider::http::HttpConnectorConfig
Section titled “firma_sidecar::connector::provider::http::HttpConnectorConfig”Struct
Build-time configuration for a [GenericHttpConnector] instance.
Built from sidecar host connector configuration entries
at startup. Per-host instances carry a rate limiter; the registry
default built via
[GenericHttpConnector::default_for_unconfigured] does not.
Fields:
timeout: std::time::Duration- Dispatch timeout for both the rate-limiter wait and therate_limit: Option<RateLimitConfig>- Optional token-bucket rate limiter parameters.
Trait Implementations:
- Debug
fn fmt(self: &Self, f: & mut $crate::fmt::Formatter) -> $crate::fmt::Result
- Clone
fn clone(self: &Self) -> HttpConnectorConfig
firma_sidecar::connector::provider::http::RateLimitConfig
Section titled “firma_sidecar::connector::provider::http::RateLimitConfig”Struct
Token-bucket rate-limit parameters.
rps is the sustained refill rate (tokens per second); burst is
the bucket capacity (maximum instantaneous burst).
Traits: Copy
Trait Implementations:
- Clone
fn clone(self: &Self) -> RateLimitConfig
- Debug
fn fmt(self: &Self, f: & mut $crate::fmt::Formatter) -> $crate::fmt::Result