use crate::Result;
#[derive(Clone, Debug)]
pub struct Changes<T>
where
T: super::stub::Changes + std::fmt::Debug + Send + Sync,
{
inner: T,
duration: gaxi::observability::DurationMetric,
}
impl<T> Changes<T>
where
T: super::stub::Changes + std::fmt::Debug + Send + Sync,
{
pub fn new(inner: T) -> Self {
Self {
inner,
duration: gaxi::observability::DurationMetric::new(&info::INSTRUMENTATION_CLIENT_INFO),
}
}
}
impl<T> super::stub::Changes for Changes<T>
where
T: super::stub::Changes + std::fmt::Debug + Send + Sync,
{
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn create(
&self,
req: crate::model::changes::CreateRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::Change>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::Changes::create",
self.inner.create(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn get(
&self,
req: crate::model::changes::GetRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::Change>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::Changes::get",
self.inner.get(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn list(
&self,
req: crate::model::changes::ListRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::ChangesListResponse>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::Changes::list",
self.inner.list(req, options));
pending.await
}
}
#[derive(Clone, Debug)]
pub struct DnsKeys<T>
where
T: super::stub::DnsKeys + std::fmt::Debug + Send + Sync,
{
inner: T,
duration: gaxi::observability::DurationMetric,
}
impl<T> DnsKeys<T>
where
T: super::stub::DnsKeys + std::fmt::Debug + Send + Sync,
{
pub fn new(inner: T) -> Self {
Self {
inner,
duration: gaxi::observability::DurationMetric::new(&info::INSTRUMENTATION_CLIENT_INFO),
}
}
}
impl<T> super::stub::DnsKeys for DnsKeys<T>
where
T: super::stub::DnsKeys + std::fmt::Debug + Send + Sync,
{
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn get(
&self,
req: crate::model::dns_keys::GetRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::DnsKey>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::DnsKeys::get",
self.inner.get(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn list(
&self,
req: crate::model::dns_keys::ListRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::DnsKeysListResponse>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::DnsKeys::list",
self.inner.list(req, options));
pending.await
}
}
#[derive(Clone, Debug)]
pub struct ManagedZoneOperations<T>
where
T: super::stub::ManagedZoneOperations + std::fmt::Debug + Send + Sync,
{
inner: T,
duration: gaxi::observability::DurationMetric,
}
impl<T> ManagedZoneOperations<T>
where
T: super::stub::ManagedZoneOperations + std::fmt::Debug + Send + Sync,
{
pub fn new(inner: T) -> Self {
Self {
inner,
duration: gaxi::observability::DurationMetric::new(&info::INSTRUMENTATION_CLIENT_INFO),
}
}
}
impl<T> super::stub::ManagedZoneOperations for ManagedZoneOperations<T>
where
T: super::stub::ManagedZoneOperations + std::fmt::Debug + Send + Sync,
{
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn get(
&self,
req: crate::model::managed_zone_operations::GetRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::Operation>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ManagedZoneOperations::get",
self.inner.get(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn list(
&self,
req: crate::model::managed_zone_operations::ListRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::ManagedZoneOperationsListResponse>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ManagedZoneOperations::list",
self.inner.list(req, options));
pending.await
}
}
#[derive(Clone, Debug)]
pub struct ManagedZones<T>
where
T: super::stub::ManagedZones + std::fmt::Debug + Send + Sync,
{
inner: T,
duration: gaxi::observability::DurationMetric,
}
impl<T> ManagedZones<T>
where
T: super::stub::ManagedZones + std::fmt::Debug + Send + Sync,
{
pub fn new(inner: T) -> Self {
Self {
inner,
duration: gaxi::observability::DurationMetric::new(&info::INSTRUMENTATION_CLIENT_INFO),
}
}
}
impl<T> super::stub::ManagedZones for ManagedZones<T>
where
T: super::stub::ManagedZones + std::fmt::Debug + Send + Sync,
{
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn create(
&self,
req: crate::model::managed_zones::CreateRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::ManagedZone>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ManagedZones::create",
self.inner.create(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn delete(
&self,
req: crate::model::managed_zones::DeleteRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<()>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ManagedZones::delete",
self.inner.delete(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn get(
&self,
req: crate::model::managed_zones::GetRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::ManagedZone>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ManagedZones::get",
self.inner.get(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn get_iam_policy(
&self,
req: crate::model::managed_zones::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::GoogleIamV1Policy>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ManagedZones::get_iam_policy",
self.inner.get_iam_policy(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn list(
&self,
req: crate::model::managed_zones::ListRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::ManagedZonesListResponse>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ManagedZones::list",
self.inner.list(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn patch(
&self,
req: crate::model::managed_zones::PatchRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::Operation>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ManagedZones::patch",
self.inner.patch(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn set_iam_policy(
&self,
req: crate::model::managed_zones::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::GoogleIamV1Policy>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ManagedZones::set_iam_policy",
self.inner.set_iam_policy(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn test_iam_permissions(
&self,
req: crate::model::managed_zones::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::GoogleIamV1TestIamPermissionsResponse>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ManagedZones::test_iam_permissions",
self.inner.test_iam_permissions(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn update(
&self,
req: crate::model::managed_zones::UpdateRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::Operation>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ManagedZones::update",
self.inner.update(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn get_operation(
&self,
req: crate::model::managed_zone_operations::GetRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::Operation>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ManagedZones::get_operation",
self.inner.get_operation(req, options));
google_cloud_lro::record_polling_attributes!(&_span);
let result = pending.await;
{
if google_cloud_lro::LroRecorder::current().is_some() {
match &result {
Ok(response) => {
let op = response.body();
google_cloud_lro::record_discovery_polling_result!(&_span, op);
}
Err(e) => {
_span.record("otel.status_code", "ERROR");
_span.record("otel.status_description", e.to_string());
}
}
}
}
result
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
self.inner.get_polling_error_policy(options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
self.inner.get_polling_backoff_policy(options)
}
#[doc(hidden)]
fn get_poller_options(
&self,
options: &crate::RequestOptions,
) -> google_cloud_lro::PollerOptions {
let mut opts = self.inner.get_poller_options(options);
let details = google_cloud_lro::TracingDetails::default();
opts.tracing = Some(details);
opts
}
}
#[derive(Clone, Debug)]
pub struct Policies<T>
where
T: super::stub::Policies + std::fmt::Debug + Send + Sync,
{
inner: T,
duration: gaxi::observability::DurationMetric,
}
impl<T> Policies<T>
where
T: super::stub::Policies + std::fmt::Debug + Send + Sync,
{
pub fn new(inner: T) -> Self {
Self {
inner,
duration: gaxi::observability::DurationMetric::new(&info::INSTRUMENTATION_CLIENT_INFO),
}
}
}
impl<T> super::stub::Policies for Policies<T>
where
T: super::stub::Policies + std::fmt::Debug + Send + Sync,
{
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn create(
&self,
req: crate::model::policies::CreateRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::Policy>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::Policies::create",
self.inner.create(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn delete(
&self,
req: crate::model::policies::DeleteRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<()>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::Policies::delete",
self.inner.delete(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn get(
&self,
req: crate::model::policies::GetRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::Policy>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::Policies::get",
self.inner.get(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn list(
&self,
req: crate::model::policies::ListRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::PoliciesListResponse>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::Policies::list",
self.inner.list(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn patch(
&self,
req: crate::model::policies::PatchRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::PoliciesPatchResponse>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::Policies::patch",
self.inner.patch(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn update(
&self,
req: crate::model::policies::UpdateRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::PoliciesUpdateResponse>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::Policies::update",
self.inner.update(req, options));
pending.await
}
}
#[derive(Clone, Debug)]
pub struct Projects<T>
where
T: super::stub::Projects + std::fmt::Debug + Send + Sync,
{
inner: T,
duration: gaxi::observability::DurationMetric,
}
impl<T> Projects<T>
where
T: super::stub::Projects + std::fmt::Debug + Send + Sync,
{
pub fn new(inner: T) -> Self {
Self {
inner,
duration: gaxi::observability::DurationMetric::new(&info::INSTRUMENTATION_CLIENT_INFO),
}
}
}
impl<T> super::stub::Projects for Projects<T>
where
T: super::stub::Projects + std::fmt::Debug + Send + Sync,
{
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn get(
&self,
req: crate::model::projects::GetRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::Project>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::Projects::get",
self.inner.get(req, options));
pending.await
}
}
#[derive(Clone, Debug)]
pub struct ResourceRecordSets<T>
where
T: super::stub::ResourceRecordSets + std::fmt::Debug + Send + Sync,
{
inner: T,
duration: gaxi::observability::DurationMetric,
}
impl<T> ResourceRecordSets<T>
where
T: super::stub::ResourceRecordSets + std::fmt::Debug + Send + Sync,
{
pub fn new(inner: T) -> Self {
Self {
inner,
duration: gaxi::observability::DurationMetric::new(&info::INSTRUMENTATION_CLIENT_INFO),
}
}
}
impl<T> super::stub::ResourceRecordSets for ResourceRecordSets<T>
where
T: super::stub::ResourceRecordSets + std::fmt::Debug + Send + Sync,
{
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn create(
&self,
req: crate::model::resource_record_sets::CreateRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::ResourceRecordSet>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ResourceRecordSets::create",
self.inner.create(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn delete(
&self,
req: crate::model::resource_record_sets::DeleteRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::ResourceRecordSetsDeleteResponse>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ResourceRecordSets::delete",
self.inner.delete(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn get(
&self,
req: crate::model::resource_record_sets::GetRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::ResourceRecordSet>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ResourceRecordSets::get",
self.inner.get(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn list(
&self,
req: crate::model::resource_record_sets::ListRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::ResourceRecordSetsListResponse>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ResourceRecordSets::list",
self.inner.list(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn patch(
&self,
req: crate::model::resource_record_sets::PatchRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::ResourceRecordSet>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ResourceRecordSets::patch",
self.inner.patch(req, options));
pending.await
}
}
#[derive(Clone, Debug)]
pub struct ResponsePolicies<T>
where
T: super::stub::ResponsePolicies + std::fmt::Debug + Send + Sync,
{
inner: T,
duration: gaxi::observability::DurationMetric,
}
impl<T> ResponsePolicies<T>
where
T: super::stub::ResponsePolicies + std::fmt::Debug + Send + Sync,
{
pub fn new(inner: T) -> Self {
Self {
inner,
duration: gaxi::observability::DurationMetric::new(&info::INSTRUMENTATION_CLIENT_INFO),
}
}
}
impl<T> super::stub::ResponsePolicies for ResponsePolicies<T>
where
T: super::stub::ResponsePolicies + std::fmt::Debug + Send + Sync,
{
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn create(
&self,
req: crate::model::response_policies::CreateRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::ResponsePolicy>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ResponsePolicies::create",
self.inner.create(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn delete(
&self,
req: crate::model::response_policies::DeleteRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<()>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ResponsePolicies::delete",
self.inner.delete(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn get(
&self,
req: crate::model::response_policies::GetRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::ResponsePolicy>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ResponsePolicies::get",
self.inner.get(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn list(
&self,
req: crate::model::response_policies::ListRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::ResponsePoliciesListResponse>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ResponsePolicies::list",
self.inner.list(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn patch(
&self,
req: crate::model::response_policies::PatchRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::ResponsePoliciesPatchResponse>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ResponsePolicies::patch",
self.inner.patch(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn update(
&self,
req: crate::model::response_policies::UpdateRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::ResponsePoliciesUpdateResponse>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ResponsePolicies::update",
self.inner.update(req, options));
pending.await
}
}
#[derive(Clone, Debug)]
pub struct ResponsePolicyRules<T>
where
T: super::stub::ResponsePolicyRules + std::fmt::Debug + Send + Sync,
{
inner: T,
duration: gaxi::observability::DurationMetric,
}
impl<T> ResponsePolicyRules<T>
where
T: super::stub::ResponsePolicyRules + std::fmt::Debug + Send + Sync,
{
pub fn new(inner: T) -> Self {
Self {
inner,
duration: gaxi::observability::DurationMetric::new(&info::INSTRUMENTATION_CLIENT_INFO),
}
}
}
impl<T> super::stub::ResponsePolicyRules for ResponsePolicyRules<T>
where
T: super::stub::ResponsePolicyRules + std::fmt::Debug + Send + Sync,
{
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn create(
&self,
req: crate::model::response_policy_rules::CreateRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::ResponsePolicyRule>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ResponsePolicyRules::create",
self.inner.create(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn delete(
&self,
req: crate::model::response_policy_rules::DeleteRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<()>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ResponsePolicyRules::delete",
self.inner.delete(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn get(
&self,
req: crate::model::response_policy_rules::GetRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::ResponsePolicyRule>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ResponsePolicyRules::get",
self.inner.get(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn list(
&self,
req: crate::model::response_policy_rules::ListRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::ResponsePolicyRulesListResponse>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ResponsePolicyRules::list",
self.inner.list(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn patch(
&self,
req: crate::model::response_policy_rules::PatchRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::ResponsePolicyRulesPatchResponse>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ResponsePolicyRules::patch",
self.inner.patch(req, options));
pending.await
}
#[tracing::instrument(level = tracing::Level::DEBUG, ret)]
async fn update(
&self,
req: crate::model::response_policy_rules::UpdateRequest,
options: crate::RequestOptions,
) -> Result<crate::Response<crate::model::ResponsePolicyRulesUpdateResponse>> {
let (_span, pending) = gaxi::client_request_signals!(
metric: self.duration.clone(),
info: *info::INSTRUMENTATION_CLIENT_INFO,
method: "client::ResponsePolicyRules::update",
self.inner.update(req, options));
pending.await
}
}
pub(crate) mod info {
const NAME: &str = env!("CARGO_PKG_NAME");
const VERSION: &str = env!("CARGO_PKG_VERSION");
pub(crate) static INSTRUMENTATION_CLIENT_INFO: std::sync::LazyLock<
gaxi::options::InstrumentationClientInfo,
> = std::sync::LazyLock::new(|| {
let mut info = gaxi::options::InstrumentationClientInfo::default();
info.service_name = "dns";
info.client_version = VERSION;
info.client_artifact = NAME;
info.default_host = "dns";
info
});
}