1#[derive(serde::Serialize, serde::Deserialize)]
2#[serde(rename_all = "PascalCase")]
3#[allow(clippy::derive_partial_eq_without_eq)]
4#[derive(Clone, PartialEq, ::prost::Message)]
5pub struct ModifyInstanceSpecReq {
6 #[prost(string, optional, tag = "1")]
7 pub client_token: ::core::option::Option<::prost::alloc::string::String>,
8 #[prost(bool, optional, tag = "2")]
9 pub dry_run: ::core::option::Option<bool>,
10 #[prost(string, optional, tag = "3")]
11 pub instance_id: ::core::option::Option<::prost::alloc::string::String>,
12 #[prost(string, optional, tag = "4")]
13 pub instance_type_id: ::core::option::Option<::prost::alloc::string::String>,
14}
15#[derive(serde::Serialize, serde::Deserialize)]
16#[serde(rename_all = "PascalCase")]
17#[allow(clippy::derive_partial_eq_without_eq)]
18#[derive(Clone, PartialEq, ::prost::Message)]
19pub struct ModifyInstanceSpecResp {
20 #[prost(message, optional, tag = "1")]
21 pub response_metadata: ::core::option::Option<ResponseMetadata>,
22 #[prost(message, optional, tag = "2")]
23 pub result: ::core::option::Option<ModifyInstanceSpecResultResp>,
24}
25#[derive(serde::Serialize, serde::Deserialize)]
26#[serde(rename_all = "PascalCase")]
27#[allow(clippy::derive_partial_eq_without_eq)]
28#[derive(Clone, PartialEq, ::prost::Message)]
29pub struct ModifyInstanceSpecResultResp {
30 #[prost(string, optional, tag = "1")]
31 pub instance_id: ::core::option::Option<::prost::alloc::string::String>,
32 #[prost(string, optional, tag = "2")]
33 pub order_id: ::core::option::Option<::prost::alloc::string::String>,
34}
35#[derive(serde::Serialize, serde::Deserialize)]
36#[serde(rename_all = "PascalCase")]
37#[allow(clippy::derive_partial_eq_without_eq)]
38#[derive(Clone, PartialEq, ::prost::Message)]
39pub struct DescribeInstancesReq {
40 #[prost(string, optional, tag = "1")]
41 pub dedicated_host_cluster_id: ::core::option::Option<
42 ::prost::alloc::string::String,
43 >,
44 #[prost(string, optional, tag = "2")]
45 pub dedicated_host_id: ::core::option::Option<::prost::alloc::string::String>,
46 #[prost(string, optional, tag = "3")]
47 pub hpc_cluster_id: ::core::option::Option<::prost::alloc::string::String>,
48 #[prost(string, optional, tag = "4")]
49 pub instance_charge_type: ::core::option::Option<::prost::alloc::string::String>,
50 #[prost(string, optional, tag = "5")]
51 pub instance_name: ::core::option::Option<::prost::alloc::string::String>,
52 #[prost(string, optional, tag = "6")]
53 pub key_pair_name: ::core::option::Option<::prost::alloc::string::String>,
54 #[prost(int64, optional, tag = "7")]
55 pub max_results: ::core::option::Option<i64>,
56 #[prost(string, optional, tag = "8")]
57 pub next_token: ::core::option::Option<::prost::alloc::string::String>,
58 #[prost(string, optional, tag = "9")]
59 pub primary_ip_address: ::core::option::Option<::prost::alloc::string::String>,
60 #[prost(string, optional, tag = "10")]
61 pub project_name: ::core::option::Option<::prost::alloc::string::String>,
62 #[prost(string, optional, tag = "11")]
63 pub scheduled_instance_id: ::core::option::Option<::prost::alloc::string::String>,
64 #[prost(string, optional, tag = "12")]
65 pub status: ::core::option::Option<::prost::alloc::string::String>,
66 #[prost(string, optional, tag = "13")]
67 pub vpc_id: ::core::option::Option<::prost::alloc::string::String>,
68 #[prost(string, optional, tag = "14")]
69 pub zone_id: ::core::option::Option<::prost::alloc::string::String>,
70 #[prost(string, repeated, tag = "15")]
71 pub instance_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
72 #[prost(int64, repeated, tag = "16")]
73 pub deployment_set_group_numbers: ::prost::alloc::vec::Vec<i64>,
74 #[prost(string, repeated, tag = "17")]
75 pub deployment_set_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
76 #[prost(string, repeated, tag = "18")]
77 pub eip_addresses: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
78 #[prost(string, repeated, tag = "19")]
79 pub instance_type_families: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
80 #[prost(string, repeated, tag = "20")]
81 pub instance_type_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
82 #[prost(string, repeated, tag = "21")]
83 pub ipv6_addresses: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
84}
85#[derive(serde::Serialize, serde::Deserialize)]
86#[serde(rename_all = "PascalCase")]
87#[allow(clippy::derive_partial_eq_without_eq)]
88#[derive(Clone, PartialEq, ::prost::Message)]
89pub struct DescribeInstancesTagFiltersReq {
90 #[prost(string, optional, tag = "1")]
91 pub key: ::core::option::Option<::prost::alloc::string::String>,
92 #[prost(string, repeated, tag = "2")]
93 pub values: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
94}
95#[derive(serde::Serialize, serde::Deserialize)]
96#[serde(rename_all = "PascalCase")]
97#[allow(clippy::derive_partial_eq_without_eq)]
98#[derive(Clone, PartialEq, ::prost::Message)]
99pub struct DescribeInstancesResp {
100 #[prost(message, optional, tag = "1")]
101 pub response_metadata: ::core::option::Option<ResponseMetadata>,
102 #[prost(message, optional, tag = "2")]
103 pub result: ::core::option::Option<DescribeInstancesResultResp>,
104}
105#[derive(serde::Serialize, serde::Deserialize)]
106#[serde(rename_all = "PascalCase")]
107#[allow(clippy::derive_partial_eq_without_eq)]
108#[derive(Clone, PartialEq, ::prost::Message)]
109pub struct DescribeInstancesResultResp {
110 #[prost(string, optional, tag = "1")]
111 pub next_token: ::core::option::Option<::prost::alloc::string::String>,
112 #[prost(message, repeated, tag = "2")]
113 pub instances: ::prost::alloc::vec::Vec<DescribeInstancesResultInstanceResp>,
114}
115#[derive(serde::Serialize, serde::Deserialize)]
116#[serde(rename_all = "PascalCase")]
117#[allow(clippy::derive_partial_eq_without_eq)]
118#[derive(Clone, PartialEq, ::prost::Message)]
119pub struct DescribeInstancesResultInstanceResp {
120 #[prost(int64, optional, tag = "1")]
121 pub cpus: ::core::option::Option<i64>,
122 #[prost(string, optional, tag = "2")]
123 pub created_at: ::core::option::Option<::prost::alloc::string::String>,
124 #[prost(int64, optional, tag = "3")]
125 pub deployment_set_group_number: ::core::option::Option<i64>,
126 #[prost(string, optional, tag = "4")]
127 pub deployment_set_id: ::core::option::Option<::prost::alloc::string::String>,
128 #[prost(string, optional, tag = "5")]
129 pub description: ::core::option::Option<::prost::alloc::string::String>,
130 #[prost(string, optional, tag = "6")]
131 pub elastic_scheduled_instance_type: ::core::option::Option<
132 ::prost::alloc::string::String,
133 >,
134 #[prost(string, optional, tag = "7")]
135 pub expired_at: ::core::option::Option<::prost::alloc::string::String>,
136 #[prost(string, optional, tag = "8")]
137 pub hostname: ::core::option::Option<::prost::alloc::string::String>,
138 #[prost(string, optional, tag = "9")]
139 pub hpc_cluster_id: ::core::option::Option<::prost::alloc::string::String>,
140 #[prost(string, optional, tag = "10")]
141 pub image_id: ::core::option::Option<::prost::alloc::string::String>,
142 #[prost(string, optional, tag = "11")]
143 pub instance_charge_type: ::core::option::Option<::prost::alloc::string::String>,
144 #[prost(string, optional, tag = "12")]
145 pub instance_id: ::core::option::Option<::prost::alloc::string::String>,
146 #[prost(string, optional, tag = "13")]
147 pub instance_name: ::core::option::Option<::prost::alloc::string::String>,
148 #[prost(string, optional, tag = "14")]
149 pub instance_type_id: ::core::option::Option<::prost::alloc::string::String>,
150 #[prost(string, optional, tag = "15")]
151 pub key_pair_id: ::core::option::Option<::prost::alloc::string::String>,
152 #[prost(string, optional, tag = "16")]
153 pub key_pair_name: ::core::option::Option<::prost::alloc::string::String>,
154 #[prost(int64, optional, tag = "17")]
155 pub memory_size: ::core::option::Option<i64>,
156 #[prost(string, optional, tag = "18")]
157 pub os_name: ::core::option::Option<::prost::alloc::string::String>,
158 #[prost(string, optional, tag = "19")]
159 pub os_type: ::core::option::Option<::prost::alloc::string::String>,
160 #[prost(string, optional, tag = "20")]
161 pub project_name: ::core::option::Option<::prost::alloc::string::String>,
162 #[prost(string, optional, tag = "21")]
163 pub scheduled_instance_id: ::core::option::Option<::prost::alloc::string::String>,
164 #[prost(float, optional, tag = "22")]
165 pub spot_price_limit: ::core::option::Option<f32>,
166 #[prost(string, optional, tag = "23")]
167 pub spot_strategy: ::core::option::Option<::prost::alloc::string::String>,
168 #[prost(string, optional, tag = "24")]
169 pub status: ::core::option::Option<::prost::alloc::string::String>,
170 #[prost(string, optional, tag = "25")]
171 pub stopped_mode: ::core::option::Option<::prost::alloc::string::String>,
172 #[prost(string, optional, tag = "26")]
173 pub updated_at: ::core::option::Option<::prost::alloc::string::String>,
174 #[prost(string, optional, tag = "27")]
175 pub uuid: ::core::option::Option<::prost::alloc::string::String>,
176 #[prost(string, optional, tag = "28")]
177 pub vpc_id: ::core::option::Option<::prost::alloc::string::String>,
178 #[prost(string, optional, tag = "29")]
179 pub zone_id: ::core::option::Option<::prost::alloc::string::String>,
180 #[prost(string, repeated, tag = "30")]
181 pub rdma_ip_addresses: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
182 #[prost(message, optional, tag = "31")]
183 pub placement: ::core::option::Option<DescribeInstancesResultInstancePlacementResp>,
184 #[prost(message, optional, tag = "32")]
185 pub eip_address: ::core::option::Option<
186 DescribeInstancesResultInstanceEipAddressResp,
187 >,
188 #[prost(message, optional, tag = "33")]
189 pub cpu_options: ::core::option::Option<
190 DescribeInstancesResultInstanceCpuOptionsResp,
191 >,
192 #[prost(message, repeated, tag = "34")]
193 pub local_volumes: ::prost::alloc::vec::Vec<
194 DescribeInstancesResultInstanceLocalVolumesResp,
195 >,
196 #[prost(message, repeated, tag = "35")]
197 pub tags: ::prost::alloc::vec::Vec<DescribeInstancesResultInstanceTagResp>,
198 #[prost(message, repeated, tag = "36")]
199 pub network_interfaces: ::prost::alloc::vec::Vec<
200 DescribeInstancesResultInstanceNetworkInterfacesResp,
201 >,
202}
203#[derive(serde::Serialize, serde::Deserialize)]
204#[serde(rename_all = "PascalCase")]
205#[allow(clippy::derive_partial_eq_without_eq)]
206#[derive(Clone, PartialEq, ::prost::Message)]
207pub struct DescribeInstancesResultInstanceTagResp {
208 #[prost(string, optional, tag = "1")]
209 pub key: ::core::option::Option<::prost::alloc::string::String>,
210 #[prost(string, optional, tag = "2")]
211 pub value: ::core::option::Option<::prost::alloc::string::String>,
212}
213#[derive(serde::Serialize, serde::Deserialize)]
214#[serde(rename_all = "PascalCase")]
215#[allow(clippy::derive_partial_eq_without_eq)]
216#[derive(Clone, PartialEq, ::prost::Message)]
217pub struct DescribeInstancesResultInstancePlacementResp {
218 #[prost(string, optional, tag = "1")]
219 pub affinity: ::core::option::Option<::prost::alloc::string::String>,
220 #[prost(string, optional, tag = "2")]
221 pub dedicated_host_cluster_id: ::core::option::Option<
222 ::prost::alloc::string::String,
223 >,
224 #[prost(string, optional, tag = "3")]
225 pub dedicated_host_id: ::core::option::Option<::prost::alloc::string::String>,
226 #[prost(string, optional, tag = "4")]
227 pub tenancy: ::core::option::Option<::prost::alloc::string::String>,
228}
229#[derive(serde::Serialize, serde::Deserialize)]
230#[serde(rename_all = "PascalCase")]
231#[allow(clippy::derive_partial_eq_without_eq)]
232#[derive(Clone, PartialEq, ::prost::Message)]
233pub struct DescribeInstancesResultInstanceNetworkInterfacesResp {
234 #[prost(string, repeated, tag = "1")]
235 pub ipv6_addresses: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
236 #[prost(string, optional, tag = "2")]
237 pub mac_address: ::core::option::Option<::prost::alloc::string::String>,
238 #[prost(string, optional, tag = "3")]
239 pub network_interface_id: ::core::option::Option<::prost::alloc::string::String>,
240 #[prost(string, optional, tag = "4")]
241 pub primary_ip_address: ::core::option::Option<::prost::alloc::string::String>,
242 #[prost(string, optional, tag = "5")]
243 pub subnet_id: ::core::option::Option<::prost::alloc::string::String>,
244 #[prost(string, optional, tag = "6")]
245 pub r#type: ::core::option::Option<::prost::alloc::string::String>,
246 #[prost(string, optional, tag = "7")]
247 pub vpc_id: ::core::option::Option<::prost::alloc::string::String>,
248}
249#[derive(serde::Serialize, serde::Deserialize)]
250#[serde(rename_all = "PascalCase")]
251#[allow(clippy::derive_partial_eq_without_eq)]
252#[derive(Clone, PartialEq, ::prost::Message)]
253pub struct DescribeInstancesResultInstanceLocalVolumesResp {
254 #[prost(int64, optional, tag = "1")]
255 pub count: ::core::option::Option<i64>,
256 #[prost(int64, optional, tag = "2")]
257 pub size: ::core::option::Option<i64>,
258 #[prost(string, optional, tag = "3")]
259 pub volume_type: ::core::option::Option<::prost::alloc::string::String>,
260}
261#[derive(serde::Serialize, serde::Deserialize)]
262#[serde(rename_all = "PascalCase")]
263#[allow(clippy::derive_partial_eq_without_eq)]
264#[derive(Clone, PartialEq, ::prost::Message)]
265pub struct DescribeInstancesResultInstanceEipAddressResp {
266 #[prost(string, optional, tag = "1")]
267 pub allocation_id: ::core::option::Option<::prost::alloc::string::String>,
268 #[prost(string, optional, tag = "2")]
269 pub ip_address: ::core::option::Option<::prost::alloc::string::String>,
270}
271#[derive(serde::Serialize, serde::Deserialize)]
272#[serde(rename_all = "PascalCase")]
273#[allow(clippy::derive_partial_eq_without_eq)]
274#[derive(Clone, PartialEq, ::prost::Message)]
275pub struct DescribeInstancesResultInstanceCpuOptionsResp {
276 #[prost(int64, optional, tag = "1")]
277 pub core_count: ::core::option::Option<i64>,
278 #[prost(int64, optional, tag = "2")]
279 pub threads_per_core: ::core::option::Option<i64>,
280}
281#[derive(serde::Serialize, serde::Deserialize)]
282#[serde(rename_all = "PascalCase")]
283#[allow(clippy::derive_partial_eq_without_eq)]
284#[derive(Clone, PartialEq, ::prost::Message)]
285pub struct StopInstancesReq {
286 #[prost(string, optional, tag = "1")]
287 pub client_token: ::core::option::Option<::prost::alloc::string::String>,
288 #[prost(bool, optional, tag = "2")]
289 pub dry_run: ::core::option::Option<bool>,
290 #[prost(bool, optional, tag = "3")]
291 pub force_stop: ::core::option::Option<bool>,
292 #[prost(string, optional, tag = "4")]
293 pub stopped_mode: ::core::option::Option<::prost::alloc::string::String>,
294 #[prost(string, repeated, tag = "5")]
295 pub instance_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
296}
297#[derive(serde::Serialize, serde::Deserialize)]
298#[serde(rename_all = "PascalCase")]
299#[allow(clippy::derive_partial_eq_without_eq)]
300#[derive(Clone, PartialEq, ::prost::Message)]
301pub struct StopInstancesResp {
302 #[prost(message, optional, tag = "1")]
303 pub response_metadata: ::core::option::Option<ResponseMetadata>,
304 #[prost(message, optional, tag = "2")]
305 pub result: ::core::option::Option<StopInstancesResultResp>,
306}
307#[derive(serde::Serialize, serde::Deserialize)]
308#[serde(rename_all = "PascalCase")]
309#[allow(clippy::derive_partial_eq_without_eq)]
310#[derive(Clone, PartialEq, ::prost::Message)]
311pub struct StopInstancesResultResp {
312 #[prost(message, repeated, tag = "1")]
313 pub operation_details: ::prost::alloc::vec::Vec<
314 StopInstancesResultOperationDetailsResp,
315 >,
316}
317#[derive(serde::Serialize, serde::Deserialize)]
318#[serde(rename_all = "PascalCase")]
319#[allow(clippy::derive_partial_eq_without_eq)]
320#[derive(Clone, PartialEq, ::prost::Message)]
321pub struct StopInstancesResultOperationDetailsResp {
322 #[prost(string, optional, tag = "1")]
323 pub instance_id: ::core::option::Option<::prost::alloc::string::String>,
324 #[prost(message, optional, tag = "2")]
325 pub error: ::core::option::Option<StopInstancesResultOperationDetailsErrResp>,
326}
327#[derive(serde::Serialize, serde::Deserialize)]
328#[serde(rename_all = "PascalCase")]
329#[allow(clippy::derive_partial_eq_without_eq)]
330#[derive(Clone, PartialEq, ::prost::Message)]
331pub struct StopInstancesResultOperationDetailsErrResp {
332 #[prost(string, optional, tag = "1")]
333 pub code: ::core::option::Option<::prost::alloc::string::String>,
334 #[prost(string, optional, tag = "2")]
335 pub message: ::core::option::Option<::prost::alloc::string::String>,
336}
337#[derive(serde::Serialize, serde::Deserialize)]
338#[serde(rename_all = "PascalCase")]
339#[allow(clippy::derive_partial_eq_without_eq)]
340#[derive(Clone, PartialEq, ::prost::Message)]
341pub struct StopInstanceReq {
342 #[prost(string, optional, tag = "1")]
343 pub client_token: ::core::option::Option<::prost::alloc::string::String>,
344 #[prost(bool, optional, tag = "2")]
345 pub dry_run: ::core::option::Option<bool>,
346 #[prost(bool, optional, tag = "3")]
347 pub force_stop: ::core::option::Option<bool>,
348 #[prost(string, optional, tag = "4")]
349 pub instance_id: ::core::option::Option<::prost::alloc::string::String>,
350 #[prost(string, optional, tag = "5")]
351 pub stopped_mode: ::core::option::Option<::prost::alloc::string::String>,
352}
353#[derive(serde::Serialize, serde::Deserialize)]
354#[serde(rename_all = "PascalCase")]
355#[allow(clippy::derive_partial_eq_without_eq)]
356#[derive(Clone, PartialEq, ::prost::Message)]
357pub struct StopInstanceResp {
358 #[prost(message, optional, tag = "1")]
359 pub response_metadata: ::core::option::Option<ResponseMetadata>,
360 #[prost(message, optional, tag = "2")]
361 pub result: ::core::option::Option<StopInstanceResultResp>,
362}
363#[derive(serde::Serialize, serde::Deserialize)]
364#[serde(rename_all = "PascalCase")]
365#[allow(clippy::derive_partial_eq_without_eq)]
366#[derive(Clone, PartialEq, ::prost::Message)]
367pub struct StopInstanceResultResp {}
368#[derive(serde::Serialize, serde::Deserialize)]
369#[serde(rename_all = "PascalCase")]
370#[allow(clippy::derive_partial_eq_without_eq)]
371#[derive(Clone, PartialEq, ::prost::Message)]
372pub struct RunInstancesReq {
373 #[prost(bool, optional, tag = "1")]
374 pub auto_renew: ::core::option::Option<bool>,
375 #[prost(int64, optional, tag = "2")]
376 pub auto_renew_period: ::core::option::Option<i64>,
377 #[prost(string, optional, tag = "3")]
378 pub client_token: ::core::option::Option<::prost::alloc::string::String>,
379 #[prost(int64, optional, tag = "4")]
380 pub count: ::core::option::Option<i64>,
381 #[prost(string, optional, tag = "5")]
382 pub credit_specification: ::core::option::Option<::prost::alloc::string::String>,
383 #[prost(int64, optional, tag = "6")]
384 pub deployment_set_group_number: ::core::option::Option<i64>,
385 #[prost(string, optional, tag = "7")]
386 pub deployment_set_id: ::core::option::Option<::prost::alloc::string::String>,
387 #[prost(string, optional, tag = "8")]
388 pub description: ::core::option::Option<::prost::alloc::string::String>,
389 #[prost(bool, optional, tag = "9")]
390 pub dry_run: ::core::option::Option<bool>,
391 #[prost(string, optional, tag = "10")]
392 pub hostname: ::core::option::Option<::prost::alloc::string::String>,
393 #[prost(string, optional, tag = "11")]
394 pub hpc_cluster_id: ::core::option::Option<::prost::alloc::string::String>,
395 #[prost(string, optional, tag = "12")]
396 pub image_id: ::core::option::Option<::prost::alloc::string::String>,
397 #[prost(bool, optional, tag = "13")]
398 pub install_run_command_agent: ::core::option::Option<bool>,
399 #[prost(string, optional, tag = "14")]
400 pub instance_charge_type: ::core::option::Option<::prost::alloc::string::String>,
401 #[prost(string, optional, tag = "15")]
402 pub instance_name: ::core::option::Option<::prost::alloc::string::String>,
403 #[prost(string, optional, tag = "16")]
404 pub instance_type_id: ::core::option::Option<::prost::alloc::string::String>,
405 #[prost(bool, optional, tag = "17")]
406 pub keep_image_credential: ::core::option::Option<bool>,
407 #[prost(string, optional, tag = "18")]
408 pub key_pair_name: ::core::option::Option<::prost::alloc::string::String>,
409 #[prost(int64, optional, tag = "19")]
410 pub min_count: ::core::option::Option<i64>,
411 #[prost(string, optional, tag = "20")]
412 pub password: ::core::option::Option<::prost::alloc::string::String>,
413 #[prost(int64, optional, tag = "21")]
414 pub period: ::core::option::Option<i64>,
415 #[prost(string, optional, tag = "22")]
416 pub period_unit: ::core::option::Option<::prost::alloc::string::String>,
417 #[prost(string, optional, tag = "23")]
418 pub project_name: ::core::option::Option<::prost::alloc::string::String>,
419 #[prost(string, optional, tag = "24")]
420 pub security_enhancement_strategy: ::core::option::Option<
421 ::prost::alloc::string::String,
422 >,
423 #[prost(float, optional, tag = "25")]
424 pub spot_price_limit: ::core::option::Option<f32>,
425 #[prost(string, optional, tag = "26")]
426 pub spot_strategy: ::core::option::Option<::prost::alloc::string::String>,
427 #[prost(int64, optional, tag = "27")]
428 pub suffix_index: ::core::option::Option<i64>,
429 #[prost(bool, optional, tag = "28")]
430 pub unique_suffix: ::core::option::Option<bool>,
431 #[prost(string, optional, tag = "29")]
432 pub user_data: ::core::option::Option<::prost::alloc::string::String>,
433 #[prost(string, optional, tag = "30")]
434 pub zone_id: ::core::option::Option<::prost::alloc::string::String>,
435 #[prost(message, optional, tag = "31")]
436 pub placement: ::core::option::Option<RunInstancesPlacementReq>,
437 #[prost(message, repeated, tag = "32")]
438 pub volumes: ::prost::alloc::vec::Vec<RunInstancesVolumesReq>,
439 #[prost(message, repeated, tag = "33")]
440 pub tags: ::prost::alloc::vec::Vec<RunInstancesTagsReq>,
441 #[prost(message, repeated, tag = "34")]
442 pub network_interfaces: ::prost::alloc::vec::Vec<RunInstancesNetworkInterfacesReq>,
443 #[prost(message, repeated, tag = "35")]
444 pub eip_addres: ::prost::alloc::vec::Vec<RunInstancesEipAddressReq>,
445}
446#[derive(serde::Serialize, serde::Deserialize)]
447#[serde(rename_all = "PascalCase")]
448#[allow(clippy::derive_partial_eq_without_eq)]
449#[derive(Clone, PartialEq, ::prost::Message)]
450pub struct RunInstancesVolumesReq {
451 #[prost(int64, optional, tag = "1")]
452 pub size: ::core::option::Option<i64>,
453 #[prost(int64, optional, tag = "2")]
454 pub extra_performance_iops: ::core::option::Option<i64>,
455 #[prost(int64, optional, tag = "3")]
456 pub extra_performance_throughput_mb: ::core::option::Option<i64>,
457 #[prost(string, optional, tag = "4")]
458 pub extra_performance_type_id: ::core::option::Option<
459 ::prost::alloc::string::String,
460 >,
461 #[prost(string, optional, tag = "5")]
462 pub snapshot_id: ::core::option::Option<::prost::alloc::string::String>,
463 #[prost(string, optional, tag = "6")]
464 pub volume_type: ::core::option::Option<::prost::alloc::string::String>,
465 #[prost(bool, optional, tag = "7")]
466 pub delete_with_instance: ::core::option::Option<bool>,
467}
468#[derive(serde::Serialize, serde::Deserialize)]
469#[serde(rename_all = "PascalCase")]
470#[allow(clippy::derive_partial_eq_without_eq)]
471#[derive(Clone, PartialEq, ::prost::Message)]
472pub struct RunInstancesTagsReq {
473 #[prost(string, optional, tag = "1")]
474 pub key: ::core::option::Option<::prost::alloc::string::String>,
475 #[prost(string, optional, tag = "2")]
476 pub value: ::core::option::Option<::prost::alloc::string::String>,
477}
478#[derive(serde::Serialize, serde::Deserialize)]
479#[serde(rename_all = "PascalCase")]
480#[allow(clippy::derive_partial_eq_without_eq)]
481#[derive(Clone, PartialEq, ::prost::Message)]
482pub struct RunInstancesPlacementReq {
483 #[prost(string, optional, tag = "1")]
484 pub affinity: ::core::option::Option<::prost::alloc::string::String>,
485 #[prost(string, optional, tag = "2")]
486 pub dedicated_host_cluster_id: ::core::option::Option<
487 ::prost::alloc::string::String,
488 >,
489 #[prost(string, optional, tag = "3")]
490 pub dedicated_host_id: ::core::option::Option<::prost::alloc::string::String>,
491 #[prost(string, optional, tag = "4")]
492 pub tenancy: ::core::option::Option<::prost::alloc::string::String>,
493}
494#[derive(serde::Serialize, serde::Deserialize)]
495#[serde(rename_all = "PascalCase")]
496#[allow(clippy::derive_partial_eq_without_eq)]
497#[derive(Clone, PartialEq, ::prost::Message)]
498pub struct RunInstancesNetworkInterfacesReq {
499 #[prost(string, repeated, tag = "1")]
500 pub security_group_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
501 #[prost(string, optional, tag = "2")]
502 pub subnet_id: ::core::option::Option<::prost::alloc::string::String>,
503 #[prost(int64, repeated, tag = "3")]
504 pub ipv6_address_count: ::prost::alloc::vec::Vec<i64>,
505 #[prost(string, repeated, tag = "4")]
506 pub primary_ip_address: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
507 #[prost(string, repeated, tag = "5")]
508 pub private_ip_addresses: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
509}
510#[derive(serde::Serialize, serde::Deserialize)]
511#[serde(rename_all = "PascalCase")]
512#[allow(clippy::derive_partial_eq_without_eq)]
513#[derive(Clone, PartialEq, ::prost::Message)]
514pub struct RunInstancesEipAddressReq {
515 #[prost(int64, optional, tag = "1")]
516 pub bandwidth_mbps: ::core::option::Option<i64>,
517 #[prost(string, optional, tag = "2")]
518 pub bandwidth_package_id: ::core::option::Option<::prost::alloc::string::String>,
519 #[prost(string, optional, tag = "3")]
520 pub charge_type: ::core::option::Option<::prost::alloc::string::String>,
521 #[prost(string, optional, tag = "4")]
522 pub isp: ::core::option::Option<::prost::alloc::string::String>,
523 #[prost(bool, optional, tag = "5")]
524 pub release_with_instance: ::core::option::Option<bool>,
525 #[prost(int64, optional, tag = "6")]
526 pub security_protection_instance_id: ::core::option::Option<i64>,
527 #[prost(string, repeated, tag = "7")]
528 pub security_protection_types: ::prost::alloc::vec::Vec<
529 ::prost::alloc::string::String,
530 >,
531}
532#[derive(serde::Serialize, serde::Deserialize)]
533#[serde(rename_all = "PascalCase")]
534#[allow(clippy::derive_partial_eq_without_eq)]
535#[derive(Clone, PartialEq, ::prost::Message)]
536pub struct RunInstancesResp {
537 #[prost(message, optional, tag = "1")]
538 pub response_metadata: ::core::option::Option<ResponseMetadata>,
539 #[prost(message, optional, tag = "2")]
540 pub result: ::core::option::Option<RunInstancesResultResp>,
541}
542#[derive(serde::Serialize, serde::Deserialize)]
543#[serde(rename_all = "PascalCase")]
544#[allow(clippy::derive_partial_eq_without_eq)]
545#[derive(Clone, PartialEq, ::prost::Message)]
546pub struct RunInstancesResultResp {
547 #[prost(string, repeated, tag = "1")]
548 pub instance_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
549}
550#[derive(serde::Serialize, serde::Deserialize)]
551#[serde(rename_all = "PascalCase")]
552#[allow(clippy::derive_partial_eq_without_eq)]
553#[derive(Clone, PartialEq, ::prost::Message)]
554pub struct ResponseMetadata {
555 #[prost(string, tag = "1")]
556 pub request_id: ::prost::alloc::string::String,
557 #[prost(string, tag = "2")]
558 pub action: ::prost::alloc::string::String,
559 #[prost(string, tag = "3")]
560 pub version: ::prost::alloc::string::String,
561 #[prost(string, tag = "4")]
562 pub service: ::prost::alloc::string::String,
563 #[prost(string, tag = "5")]
564 pub region: ::prost::alloc::string::String,
565 #[prost(message, optional, tag = "6")]
566 pub error: ::core::option::Option<ResponseMetadataErr>,
567}
568#[derive(serde::Serialize, serde::Deserialize)]
569#[serde(rename_all = "PascalCase")]
570#[allow(clippy::derive_partial_eq_without_eq)]
571#[derive(Clone, PartialEq, ::prost::Message)]
572pub struct ResponseMetadataErr {
573 #[prost(int64, optional, tag = "1")]
574 pub code_n: ::core::option::Option<i64>,
575 #[prost(string, tag = "2")]
576 pub code: ::prost::alloc::string::String,
577 #[prost(string, tag = "3")]
578 pub message: ::prost::alloc::string::String,
579}
580pub mod ecs_instance_client {
582 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
583 use tonic::codegen::*;
584 use tonic::codegen::http::Uri;
585 #[derive(Debug, Clone)]
586 pub struct EcsInstanceClient<T> {
587 inner: tonic::client::Grpc<T>,
588 }
589 impl EcsInstanceClient<tonic::transport::Channel> {
590 pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
592 where
593 D: TryInto<tonic::transport::Endpoint>,
594 D::Error: Into<StdError>,
595 {
596 let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
597 Ok(Self::new(conn))
598 }
599 }
600 impl<T> EcsInstanceClient<T>
601 where
602 T: tonic::client::GrpcService<tonic::body::BoxBody>,
603 T::Error: Into<StdError>,
604 T::ResponseBody: Body<Data = Bytes> + Send + 'static,
605 <T::ResponseBody as Body>::Error: Into<StdError> + Send,
606 {
607 pub fn new(inner: T) -> Self {
608 let inner = tonic::client::Grpc::new(inner);
609 Self { inner }
610 }
611 pub fn with_origin(inner: T, origin: Uri) -> Self {
612 let inner = tonic::client::Grpc::with_origin(inner, origin);
613 Self { inner }
614 }
615 pub fn with_interceptor<F>(
616 inner: T,
617 interceptor: F,
618 ) -> EcsInstanceClient<InterceptedService<T, F>>
619 where
620 F: tonic::service::Interceptor,
621 T::ResponseBody: Default,
622 T: tonic::codegen::Service<
623 http::Request<tonic::body::BoxBody>,
624 Response = http::Response<
625 <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
626 >,
627 >,
628 <T as tonic::codegen::Service<
629 http::Request<tonic::body::BoxBody>,
630 >>::Error: Into<StdError> + Send + Sync,
631 {
632 EcsInstanceClient::new(InterceptedService::new(inner, interceptor))
633 }
634 #[must_use]
639 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
640 self.inner = self.inner.send_compressed(encoding);
641 self
642 }
643 #[must_use]
645 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
646 self.inner = self.inner.accept_compressed(encoding);
647 self
648 }
649 #[must_use]
653 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
654 self.inner = self.inner.max_decoding_message_size(limit);
655 self
656 }
657 #[must_use]
661 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
662 self.inner = self.inner.max_encoding_message_size(limit);
663 self
664 }
665 pub async fn run_instances(
667 &mut self,
668 request: impl tonic::IntoRequest<super::RunInstancesReq>,
669 ) -> std::result::Result<
670 tonic::Response<super::RunInstancesResp>,
671 tonic::Status,
672 > {
673 self.inner
674 .ready()
675 .await
676 .map_err(|e| {
677 tonic::Status::new(
678 tonic::Code::Unknown,
679 format!("Service was not ready: {}", e.into()),
680 )
681 })?;
682 let codec = tonic::codec::ProstCodec::default();
683 let path = http::uri::PathAndQuery::from_static(
684 "/ecs_instance.EcsInstance/RunInstances",
685 );
686 let mut req = request.into_request();
687 req.extensions_mut()
688 .insert(GrpcMethod::new("ecs_instance.EcsInstance", "RunInstances"));
689 self.inner.unary(req, path, codec).await
690 }
691 pub async fn describe_instances(
693 &mut self,
694 request: impl tonic::IntoRequest<super::DescribeInstancesReq>,
695 ) -> std::result::Result<
696 tonic::Response<super::DescribeInstancesResp>,
697 tonic::Status,
698 > {
699 self.inner
700 .ready()
701 .await
702 .map_err(|e| {
703 tonic::Status::new(
704 tonic::Code::Unknown,
705 format!("Service was not ready: {}", e.into()),
706 )
707 })?;
708 let codec = tonic::codec::ProstCodec::default();
709 let path = http::uri::PathAndQuery::from_static(
710 "/ecs_instance.EcsInstance/DescribeInstances",
711 );
712 let mut req = request.into_request();
713 req.extensions_mut()
714 .insert(
715 GrpcMethod::new("ecs_instance.EcsInstance", "DescribeInstances"),
716 );
717 self.inner.unary(req, path, codec).await
718 }
719 pub async fn stop_instance(
721 &mut self,
722 request: impl tonic::IntoRequest<super::StopInstanceReq>,
723 ) -> std::result::Result<
724 tonic::Response<super::StopInstanceResp>,
725 tonic::Status,
726 > {
727 self.inner
728 .ready()
729 .await
730 .map_err(|e| {
731 tonic::Status::new(
732 tonic::Code::Unknown,
733 format!("Service was not ready: {}", e.into()),
734 )
735 })?;
736 let codec = tonic::codec::ProstCodec::default();
737 let path = http::uri::PathAndQuery::from_static(
738 "/ecs_instance.EcsInstance/StopInstance",
739 );
740 let mut req = request.into_request();
741 req.extensions_mut()
742 .insert(GrpcMethod::new("ecs_instance.EcsInstance", "StopInstance"));
743 self.inner.unary(req, path, codec).await
744 }
745 pub async fn stop_instances(
747 &mut self,
748 request: impl tonic::IntoRequest<super::StopInstancesReq>,
749 ) -> std::result::Result<
750 tonic::Response<super::StopInstancesResp>,
751 tonic::Status,
752 > {
753 self.inner
754 .ready()
755 .await
756 .map_err(|e| {
757 tonic::Status::new(
758 tonic::Code::Unknown,
759 format!("Service was not ready: {}", e.into()),
760 )
761 })?;
762 let codec = tonic::codec::ProstCodec::default();
763 let path = http::uri::PathAndQuery::from_static(
764 "/ecs_instance.EcsInstance/StopInstances",
765 );
766 let mut req = request.into_request();
767 req.extensions_mut()
768 .insert(GrpcMethod::new("ecs_instance.EcsInstance", "StopInstances"));
769 self.inner.unary(req, path, codec).await
770 }
771 pub async fn modify_instance_spec(
773 &mut self,
774 request: impl tonic::IntoRequest<super::ModifyInstanceSpecReq>,
775 ) -> std::result::Result<
776 tonic::Response<super::ModifyInstanceSpecResp>,
777 tonic::Status,
778 > {
779 self.inner
780 .ready()
781 .await
782 .map_err(|e| {
783 tonic::Status::new(
784 tonic::Code::Unknown,
785 format!("Service was not ready: {}", e.into()),
786 )
787 })?;
788 let codec = tonic::codec::ProstCodec::default();
789 let path = http::uri::PathAndQuery::from_static(
790 "/ecs_instance.EcsInstance/ModifyInstanceSpec",
791 );
792 let mut req = request.into_request();
793 req.extensions_mut()
794 .insert(
795 GrpcMethod::new("ecs_instance.EcsInstance", "ModifyInstanceSpec"),
796 );
797 self.inner.unary(req, path, codec).await
798 }
799 }
800}
801pub mod ecs_instance_server {
803 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
804 use tonic::codegen::*;
805 #[async_trait]
807 pub trait EcsInstance: Send + Sync + 'static {
808 async fn run_instances(
810 &self,
811 request: tonic::Request<super::RunInstancesReq>,
812 ) -> std::result::Result<
813 tonic::Response<super::RunInstancesResp>,
814 tonic::Status,
815 >;
816 async fn describe_instances(
818 &self,
819 request: tonic::Request<super::DescribeInstancesReq>,
820 ) -> std::result::Result<
821 tonic::Response<super::DescribeInstancesResp>,
822 tonic::Status,
823 >;
824 async fn stop_instance(
826 &self,
827 request: tonic::Request<super::StopInstanceReq>,
828 ) -> std::result::Result<
829 tonic::Response<super::StopInstanceResp>,
830 tonic::Status,
831 >;
832 async fn stop_instances(
834 &self,
835 request: tonic::Request<super::StopInstancesReq>,
836 ) -> std::result::Result<
837 tonic::Response<super::StopInstancesResp>,
838 tonic::Status,
839 >;
840 async fn modify_instance_spec(
842 &self,
843 request: tonic::Request<super::ModifyInstanceSpecReq>,
844 ) -> std::result::Result<
845 tonic::Response<super::ModifyInstanceSpecResp>,
846 tonic::Status,
847 >;
848 }
849 #[derive(Debug)]
850 pub struct EcsInstanceServer<T: EcsInstance> {
851 inner: _Inner<T>,
852 accept_compression_encodings: EnabledCompressionEncodings,
853 send_compression_encodings: EnabledCompressionEncodings,
854 max_decoding_message_size: Option<usize>,
855 max_encoding_message_size: Option<usize>,
856 }
857 struct _Inner<T>(Arc<T>);
858 impl<T: EcsInstance> EcsInstanceServer<T> {
859 pub fn new(inner: T) -> Self {
860 Self::from_arc(Arc::new(inner))
861 }
862 pub fn from_arc(inner: Arc<T>) -> Self {
863 let inner = _Inner(inner);
864 Self {
865 inner,
866 accept_compression_encodings: Default::default(),
867 send_compression_encodings: Default::default(),
868 max_decoding_message_size: None,
869 max_encoding_message_size: None,
870 }
871 }
872 pub fn with_interceptor<F>(
873 inner: T,
874 interceptor: F,
875 ) -> InterceptedService<Self, F>
876 where
877 F: tonic::service::Interceptor,
878 {
879 InterceptedService::new(Self::new(inner), interceptor)
880 }
881 #[must_use]
883 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
884 self.accept_compression_encodings.enable(encoding);
885 self
886 }
887 #[must_use]
889 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
890 self.send_compression_encodings.enable(encoding);
891 self
892 }
893 #[must_use]
897 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
898 self.max_decoding_message_size = Some(limit);
899 self
900 }
901 #[must_use]
905 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
906 self.max_encoding_message_size = Some(limit);
907 self
908 }
909 }
910 impl<T, B> tonic::codegen::Service<http::Request<B>> for EcsInstanceServer<T>
911 where
912 T: EcsInstance,
913 B: Body + Send + 'static,
914 B::Error: Into<StdError> + Send + 'static,
915 {
916 type Response = http::Response<tonic::body::BoxBody>;
917 type Error = std::convert::Infallible;
918 type Future = BoxFuture<Self::Response, Self::Error>;
919 fn poll_ready(
920 &mut self,
921 _cx: &mut Context<'_>,
922 ) -> Poll<std::result::Result<(), Self::Error>> {
923 Poll::Ready(Ok(()))
924 }
925 fn call(&mut self, req: http::Request<B>) -> Self::Future {
926 let inner = self.inner.clone();
927 match req.uri().path() {
928 "/ecs_instance.EcsInstance/RunInstances" => {
929 #[allow(non_camel_case_types)]
930 struct RunInstancesSvc<T: EcsInstance>(pub Arc<T>);
931 impl<
932 T: EcsInstance,
933 > tonic::server::UnaryService<super::RunInstancesReq>
934 for RunInstancesSvc<T> {
935 type Response = super::RunInstancesResp;
936 type Future = BoxFuture<
937 tonic::Response<Self::Response>,
938 tonic::Status,
939 >;
940 fn call(
941 &mut self,
942 request: tonic::Request<super::RunInstancesReq>,
943 ) -> Self::Future {
944 let inner = Arc::clone(&self.0);
945 let fut = async move {
946 (*inner).run_instances(request).await
947 };
948 Box::pin(fut)
949 }
950 }
951 let accept_compression_encodings = self.accept_compression_encodings;
952 let send_compression_encodings = self.send_compression_encodings;
953 let max_decoding_message_size = self.max_decoding_message_size;
954 let max_encoding_message_size = self.max_encoding_message_size;
955 let inner = self.inner.clone();
956 let fut = async move {
957 let inner = inner.0;
958 let method = RunInstancesSvc(inner);
959 let codec = tonic::codec::ProstCodec::default();
960 let mut grpc = tonic::server::Grpc::new(codec)
961 .apply_compression_config(
962 accept_compression_encodings,
963 send_compression_encodings,
964 )
965 .apply_max_message_size_config(
966 max_decoding_message_size,
967 max_encoding_message_size,
968 );
969 let res = grpc.unary(method, req).await;
970 Ok(res)
971 };
972 Box::pin(fut)
973 }
974 "/ecs_instance.EcsInstance/DescribeInstances" => {
975 #[allow(non_camel_case_types)]
976 struct DescribeInstancesSvc<T: EcsInstance>(pub Arc<T>);
977 impl<
978 T: EcsInstance,
979 > tonic::server::UnaryService<super::DescribeInstancesReq>
980 for DescribeInstancesSvc<T> {
981 type Response = super::DescribeInstancesResp;
982 type Future = BoxFuture<
983 tonic::Response<Self::Response>,
984 tonic::Status,
985 >;
986 fn call(
987 &mut self,
988 request: tonic::Request<super::DescribeInstancesReq>,
989 ) -> Self::Future {
990 let inner = Arc::clone(&self.0);
991 let fut = async move {
992 (*inner).describe_instances(request).await
993 };
994 Box::pin(fut)
995 }
996 }
997 let accept_compression_encodings = self.accept_compression_encodings;
998 let send_compression_encodings = self.send_compression_encodings;
999 let max_decoding_message_size = self.max_decoding_message_size;
1000 let max_encoding_message_size = self.max_encoding_message_size;
1001 let inner = self.inner.clone();
1002 let fut = async move {
1003 let inner = inner.0;
1004 let method = DescribeInstancesSvc(inner);
1005 let codec = tonic::codec::ProstCodec::default();
1006 let mut grpc = tonic::server::Grpc::new(codec)
1007 .apply_compression_config(
1008 accept_compression_encodings,
1009 send_compression_encodings,
1010 )
1011 .apply_max_message_size_config(
1012 max_decoding_message_size,
1013 max_encoding_message_size,
1014 );
1015 let res = grpc.unary(method, req).await;
1016 Ok(res)
1017 };
1018 Box::pin(fut)
1019 }
1020 "/ecs_instance.EcsInstance/StopInstance" => {
1021 #[allow(non_camel_case_types)]
1022 struct StopInstanceSvc<T: EcsInstance>(pub Arc<T>);
1023 impl<
1024 T: EcsInstance,
1025 > tonic::server::UnaryService<super::StopInstanceReq>
1026 for StopInstanceSvc<T> {
1027 type Response = super::StopInstanceResp;
1028 type Future = BoxFuture<
1029 tonic::Response<Self::Response>,
1030 tonic::Status,
1031 >;
1032 fn call(
1033 &mut self,
1034 request: tonic::Request<super::StopInstanceReq>,
1035 ) -> Self::Future {
1036 let inner = Arc::clone(&self.0);
1037 let fut = async move {
1038 (*inner).stop_instance(request).await
1039 };
1040 Box::pin(fut)
1041 }
1042 }
1043 let accept_compression_encodings = self.accept_compression_encodings;
1044 let send_compression_encodings = self.send_compression_encodings;
1045 let max_decoding_message_size = self.max_decoding_message_size;
1046 let max_encoding_message_size = self.max_encoding_message_size;
1047 let inner = self.inner.clone();
1048 let fut = async move {
1049 let inner = inner.0;
1050 let method = StopInstanceSvc(inner);
1051 let codec = tonic::codec::ProstCodec::default();
1052 let mut grpc = tonic::server::Grpc::new(codec)
1053 .apply_compression_config(
1054 accept_compression_encodings,
1055 send_compression_encodings,
1056 )
1057 .apply_max_message_size_config(
1058 max_decoding_message_size,
1059 max_encoding_message_size,
1060 );
1061 let res = grpc.unary(method, req).await;
1062 Ok(res)
1063 };
1064 Box::pin(fut)
1065 }
1066 "/ecs_instance.EcsInstance/StopInstances" => {
1067 #[allow(non_camel_case_types)]
1068 struct StopInstancesSvc<T: EcsInstance>(pub Arc<T>);
1069 impl<
1070 T: EcsInstance,
1071 > tonic::server::UnaryService<super::StopInstancesReq>
1072 for StopInstancesSvc<T> {
1073 type Response = super::StopInstancesResp;
1074 type Future = BoxFuture<
1075 tonic::Response<Self::Response>,
1076 tonic::Status,
1077 >;
1078 fn call(
1079 &mut self,
1080 request: tonic::Request<super::StopInstancesReq>,
1081 ) -> Self::Future {
1082 let inner = Arc::clone(&self.0);
1083 let fut = async move {
1084 (*inner).stop_instances(request).await
1085 };
1086 Box::pin(fut)
1087 }
1088 }
1089 let accept_compression_encodings = self.accept_compression_encodings;
1090 let send_compression_encodings = self.send_compression_encodings;
1091 let max_decoding_message_size = self.max_decoding_message_size;
1092 let max_encoding_message_size = self.max_encoding_message_size;
1093 let inner = self.inner.clone();
1094 let fut = async move {
1095 let inner = inner.0;
1096 let method = StopInstancesSvc(inner);
1097 let codec = tonic::codec::ProstCodec::default();
1098 let mut grpc = tonic::server::Grpc::new(codec)
1099 .apply_compression_config(
1100 accept_compression_encodings,
1101 send_compression_encodings,
1102 )
1103 .apply_max_message_size_config(
1104 max_decoding_message_size,
1105 max_encoding_message_size,
1106 );
1107 let res = grpc.unary(method, req).await;
1108 Ok(res)
1109 };
1110 Box::pin(fut)
1111 }
1112 "/ecs_instance.EcsInstance/ModifyInstanceSpec" => {
1113 #[allow(non_camel_case_types)]
1114 struct ModifyInstanceSpecSvc<T: EcsInstance>(pub Arc<T>);
1115 impl<
1116 T: EcsInstance,
1117 > tonic::server::UnaryService<super::ModifyInstanceSpecReq>
1118 for ModifyInstanceSpecSvc<T> {
1119 type Response = super::ModifyInstanceSpecResp;
1120 type Future = BoxFuture<
1121 tonic::Response<Self::Response>,
1122 tonic::Status,
1123 >;
1124 fn call(
1125 &mut self,
1126 request: tonic::Request<super::ModifyInstanceSpecReq>,
1127 ) -> Self::Future {
1128 let inner = Arc::clone(&self.0);
1129 let fut = async move {
1130 (*inner).modify_instance_spec(request).await
1131 };
1132 Box::pin(fut)
1133 }
1134 }
1135 let accept_compression_encodings = self.accept_compression_encodings;
1136 let send_compression_encodings = self.send_compression_encodings;
1137 let max_decoding_message_size = self.max_decoding_message_size;
1138 let max_encoding_message_size = self.max_encoding_message_size;
1139 let inner = self.inner.clone();
1140 let fut = async move {
1141 let inner = inner.0;
1142 let method = ModifyInstanceSpecSvc(inner);
1143 let codec = tonic::codec::ProstCodec::default();
1144 let mut grpc = tonic::server::Grpc::new(codec)
1145 .apply_compression_config(
1146 accept_compression_encodings,
1147 send_compression_encodings,
1148 )
1149 .apply_max_message_size_config(
1150 max_decoding_message_size,
1151 max_encoding_message_size,
1152 );
1153 let res = grpc.unary(method, req).await;
1154 Ok(res)
1155 };
1156 Box::pin(fut)
1157 }
1158 _ => {
1159 Box::pin(async move {
1160 Ok(
1161 http::Response::builder()
1162 .status(200)
1163 .header("grpc-status", "12")
1164 .header("content-type", "application/grpc")
1165 .body(empty_body())
1166 .unwrap(),
1167 )
1168 })
1169 }
1170 }
1171 }
1172 }
1173 impl<T: EcsInstance> Clone for EcsInstanceServer<T> {
1174 fn clone(&self) -> Self {
1175 let inner = self.inner.clone();
1176 Self {
1177 inner,
1178 accept_compression_encodings: self.accept_compression_encodings,
1179 send_compression_encodings: self.send_compression_encodings,
1180 max_decoding_message_size: self.max_decoding_message_size,
1181 max_encoding_message_size: self.max_encoding_message_size,
1182 }
1183 }
1184 }
1185 impl<T: EcsInstance> Clone for _Inner<T> {
1186 fn clone(&self) -> Self {
1187 Self(Arc::clone(&self.0))
1188 }
1189 }
1190 impl<T: std::fmt::Debug> std::fmt::Debug for _Inner<T> {
1191 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1192 write!(f, "{:?}", self.0)
1193 }
1194 }
1195 impl<T: EcsInstance> tonic::server::NamedService for EcsInstanceServer<T> {
1196 const NAME: &'static str = "ecs_instance.EcsInstance";
1197 }
1198}