tencent_sdk/api/
ssl.rs

1use crate::{
2    Result,
3    client::RequestOptions,
4    types::ssl::{
5        ApplyCertificateRequest, ApplyCertificateResponse, DescribeCertificateRequest,
6        DescribeCertificateResponse, DownloadCertificateRequest, DownloadCertificateResponse,
7        UploadCertificateRequest, UploadCertificateResponse,
8    },
9};
10
11#[cfg(feature = "async")]
12use crate::client::Client;
13
14#[cfg(feature = "async")]
15#[derive(Clone)]
16pub struct SslService {
17    client: Client,
18}
19
20#[cfg(feature = "async")]
21impl SslService {
22    pub(crate) fn new(client: Client) -> Self {
23        Self { client }
24    }
25
26    pub async fn apply_certificate(
27        &self,
28        request: &ApplyCertificateRequest,
29    ) -> Result<ApplyCertificateResponse> {
30        self.client.execute(request, None).await
31    }
32
33    pub async fn apply_certificate_with_options(
34        &self,
35        request: &ApplyCertificateRequest,
36        options: &RequestOptions,
37    ) -> Result<ApplyCertificateResponse> {
38        self.client.execute(request, Some(options)).await
39    }
40
41    pub async fn describe_certificate(
42        &self,
43        request: &DescribeCertificateRequest,
44    ) -> Result<DescribeCertificateResponse> {
45        self.client.execute(request, None).await
46    }
47
48    pub async fn describe_certificate_with_options(
49        &self,
50        request: &DescribeCertificateRequest,
51        options: &RequestOptions,
52    ) -> Result<DescribeCertificateResponse> {
53        self.client.execute(request, Some(options)).await
54    }
55
56    pub async fn download_certificate(
57        &self,
58        request: &DownloadCertificateRequest,
59    ) -> Result<DownloadCertificateResponse> {
60        self.client.execute(request, None).await
61    }
62
63    pub async fn download_certificate_with_options(
64        &self,
65        request: &DownloadCertificateRequest,
66        options: &RequestOptions,
67    ) -> Result<DownloadCertificateResponse> {
68        self.client.execute(request, Some(options)).await
69    }
70
71    pub async fn upload_certificate(
72        &self,
73        request: &UploadCertificateRequest,
74    ) -> Result<UploadCertificateResponse> {
75        self.client.execute(request, None).await
76    }
77
78    pub async fn upload_certificate_with_options(
79        &self,
80        request: &UploadCertificateRequest,
81        options: &RequestOptions,
82    ) -> Result<UploadCertificateResponse> {
83        self.client.execute(request, Some(options)).await
84    }
85}
86
87#[cfg(feature = "blocking")]
88use crate::client::BlockingClient;
89
90#[cfg(feature = "blocking")]
91#[derive(Clone)]
92pub struct BlockingSslService {
93    client: BlockingClient,
94}
95
96#[cfg(feature = "blocking")]
97impl BlockingSslService {
98    pub(crate) fn new(client: BlockingClient) -> Self {
99        Self { client }
100    }
101
102    pub fn apply_certificate(
103        &self,
104        request: &ApplyCertificateRequest,
105    ) -> Result<ApplyCertificateResponse> {
106        self.client.execute(request, None)
107    }
108
109    pub fn apply_certificate_with_options(
110        &self,
111        request: &ApplyCertificateRequest,
112        options: &RequestOptions,
113    ) -> Result<ApplyCertificateResponse> {
114        self.client.execute(request, Some(options))
115    }
116
117    pub fn describe_certificate(
118        &self,
119        request: &DescribeCertificateRequest,
120    ) -> Result<DescribeCertificateResponse> {
121        self.client.execute(request, None)
122    }
123
124    pub fn describe_certificate_with_options(
125        &self,
126        request: &DescribeCertificateRequest,
127        options: &RequestOptions,
128    ) -> Result<DescribeCertificateResponse> {
129        self.client.execute(request, Some(options))
130    }
131
132    pub fn download_certificate(
133        &self,
134        request: &DownloadCertificateRequest,
135    ) -> Result<DownloadCertificateResponse> {
136        self.client.execute(request, None)
137    }
138
139    pub fn download_certificate_with_options(
140        &self,
141        request: &DownloadCertificateRequest,
142        options: &RequestOptions,
143    ) -> Result<DownloadCertificateResponse> {
144        self.client.execute(request, Some(options))
145    }
146
147    pub fn upload_certificate(
148        &self,
149        request: &UploadCertificateRequest,
150    ) -> Result<UploadCertificateResponse> {
151        self.client.execute(request, None)
152    }
153
154    pub fn upload_certificate_with_options(
155        &self,
156        request: &UploadCertificateRequest,
157        options: &RequestOptions,
158    ) -> Result<UploadCertificateResponse> {
159        self.client.execute(request, Some(options))
160    }
161}