1use crate::{
2 Result,
3 client::RequestOptions,
4 types::cdn::{UpdateDomainConfigRequest, UpdateDomainConfigResponse},
5};
6
7#[cfg(feature = "async")]
8use crate::client::Client;
9
10#[cfg(feature = "async")]
11#[derive(Clone)]
12pub struct CdnService {
13 client: Client,
14}
15
16#[cfg(feature = "async")]
17impl CdnService {
18 pub(crate) fn new(client: Client) -> Self {
19 Self { client }
20 }
21
22 pub async fn update_domain_config(
23 &self,
24 request: &UpdateDomainConfigRequest,
25 ) -> Result<UpdateDomainConfigResponse> {
26 self.client.execute(request, None).await
27 }
28
29 pub async fn update_domain_config_with_options(
30 &self,
31 request: &UpdateDomainConfigRequest,
32 options: &RequestOptions,
33 ) -> Result<UpdateDomainConfigResponse> {
34 self.client.execute(request, Some(options)).await
35 }
36}
37
38#[cfg(feature = "blocking")]
39use crate::client::BlockingClient;
40
41#[cfg(feature = "blocking")]
42#[derive(Clone)]
43pub struct BlockingCdnService {
44 client: BlockingClient,
45}
46
47#[cfg(feature = "blocking")]
48impl BlockingCdnService {
49 pub(crate) fn new(client: BlockingClient) -> Self {
50 Self { client }
51 }
52
53 pub fn update_domain_config(
54 &self,
55 request: &UpdateDomainConfigRequest,
56 ) -> Result<UpdateDomainConfigResponse> {
57 self.client.execute(request, None)
58 }
59
60 pub fn update_domain_config_with_options(
61 &self,
62 request: &UpdateDomainConfigRequest,
63 options: &RequestOptions,
64 ) -> Result<UpdateDomainConfigResponse> {
65 self.client.execute(request, Some(options))
66 }
67}