pub struct QuotaController { /* private fields */ }
Expand description
Implements a client for the Service Control API.
§Example
let client = QuotaController::builder().build().await?;
// use `client` to make requests to the Service Control API.
§Service Description
Allows clients to allocate and release quota against a managed service.
§Configuration
To configure QuotaController
use the with_*
methods in the type returned
by builder(). The default configuration should
work for most applications. Common configuration changes include
- with_endpoint(): by default this client uses the global default endpoint
(
https://servicecontrol.googleapis.com
). Applications using regional endpoints or running in restricted networks (e.g. a network configured override this default. - with_credentials(): by default this client uses Application Default Credentials. Applications using custom authentication may need to override this default.
§Pooling and Cloning
QuotaController
holds a connection pool internally, it is advised to
create one and the reuse it. You do not need to wrap QuotaController
in
an Rc or Arc to reuse it, because it
already uses an Arc
internally.
Implementations§
Source§impl QuotaController
impl QuotaController
Sourcepub fn builder() -> ClientBuilder
pub fn builder() -> ClientBuilder
Returns a builder for QuotaController.
let client = QuotaController::builder().build().await?;
Sourcepub fn from_stub<T>(stub: T) -> Selfwhere
T: QuotaController + 'static,
pub fn from_stub<T>(stub: T) -> Selfwhere
T: QuotaController + 'static,
Creates a new client from the provided stub.
The most common case for calling this function is in tests mocking the client’s behavior.
Sourcepub fn allocate_quota(&self) -> AllocateQuota
pub fn allocate_quota(&self) -> AllocateQuota
Attempts to allocate quota for the specified consumer. It should be called before the operation is executed.
This method requires the servicemanagement.services.quota
permission on the specified service. For more information, see
Cloud IAM.
NOTE: The client must fail-open on server errors INTERNAL
,
UNKNOWN
, DEADLINE_EXCEEDED
, and UNAVAILABLE
. To ensure system
reliability, the server may inject these errors to prohibit any hard
dependency on the quota functionality.
Trait Implementations§
Source§impl Clone for QuotaController
impl Clone for QuotaController
Source§fn clone(&self) -> QuotaController
fn clone(&self) -> QuotaController
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more