1use lodestone_wire::*;
4
5use crate::{CallOptions, Client, ClientError};
6
7pub const RUST_CLIENT_METHOD_COUNT: usize = 99;
8pub(crate) const MAX_NATIVE_REQUEST_BYTES: usize = 2097152;
9pub(crate) const MAX_NATIVE_RESPONSE_BYTES: usize = 2097152;
10
11#[derive(Clone, Debug, Eq, PartialEq)]
12pub(crate) enum GeneratedCollectionIndexRef {
13 None,
14 Caller,
15 Exact(String),
16}
17
18pub const fn request_command(request: &RequestBody) -> Command {
19 match request {
20 RequestBody::Discover(_) => Command::Discover,
21 RequestBody::ListIndexes(_) => Command::ListIndexes,
22 RequestBody::GetIndex(_) => Command::GetIndex,
23 RequestBody::ValidateIndexChange(_) => Command::ValidateIndexChange,
24 RequestBody::ApplyIndexChange(_) => Command::ApplyIndexChange,
25 RequestBody::ApplyAdministrationMutation(_) => Command::ApplyAdministrationMutation,
26 RequestBody::ListAliases(_) => Command::ListAliases,
27 RequestBody::GetAlias(_) => Command::GetAlias,
28 RequestBody::ListDataStreams(_) => Command::ListDataStreams,
29 RequestBody::GetDataStream(_) => Command::GetDataStream,
30 RequestBody::ListComponentTemplates(_) => Command::ListComponentTemplates,
31 RequestBody::GetComponentTemplate(_) => Command::GetComponentTemplate,
32 RequestBody::ListIndexTemplates(_) => Command::ListIndexTemplates,
33 RequestBody::GetIndexTemplate(_) => Command::GetIndexTemplate,
34 RequestBody::ListIngestPipelines(_) => Command::ListIngestPipelines,
35 RequestBody::GetIngestPipeline(_) => Command::GetIngestPipeline,
36 RequestBody::SimulateIngestPipeline(_) => Command::SimulateIngestPipeline,
37 RequestBody::ReprocessByQuery(_) => Command::ReprocessByQuery,
38 RequestBody::ListLifecyclePolicies(_) => Command::ListLifecyclePolicies,
39 RequestBody::GetLifecyclePolicy(_) => Command::GetLifecyclePolicy,
40 RequestBody::PrepareCreateIndex(_) => Command::PrepareCreateIndex,
41 RequestBody::PrepareDeleteIndex(_) => Command::PrepareDeleteIndex,
42 RequestBody::SubmitCatalogAction(_) => Command::SubmitCatalogAction,
43 RequestBody::ResolveCatalogAction(_) => Command::ResolveCatalogAction,
44 RequestBody::PrepareReplayableSourceIndex(_) => Command::PrepareReplayableSourceIndex,
45 RequestBody::SubmitReplayableSourceIndex(_) => Command::SubmitReplayableSourceIndex,
46 RequestBody::GetReplayableSource(_) => Command::GetReplayableSource,
47 RequestBody::ControlReplayableSource(_) => Command::ControlReplayableSource,
48 RequestBody::CloneIndex(_) => Command::CloneIndex,
49 RequestBody::ConfigureHistory(_) => Command::ConfigureHistory,
50 RequestBody::GetHistory(_) => Command::GetHistory,
51 RequestBody::ResolveHistory(_) => Command::ResolveHistory,
52 RequestBody::PlaceHistoryHold(_) => Command::PlaceHistoryHold,
53 RequestBody::ReleaseHistoryHold(_) => Command::ReleaseHistoryHold,
54 RequestBody::PrepareDocumentMutation(_) => Command::PrepareDocumentMutation,
55 RequestBody::SubmitDocumentMutation(_) => Command::SubmitDocumentMutation,
56 RequestBody::PrepareDocumentBulk(_) => Command::PrepareDocumentBulk,
57 RequestBody::SubmitDocumentBulk(_) => Command::SubmitDocumentBulk,
58 RequestBody::ResolveDocumentBulk(_) => Command::ResolveDocumentBulk,
59 RequestBody::PrepareAppendBulk(_) => Command::PrepareAppendBulk,
60 RequestBody::SubmitAppendBulk(_) => Command::SubmitAppendBulk,
61 RequestBody::ResolveAppendBulk(_) => Command::ResolveAppendBulk,
62 RequestBody::ObserveAppendCommitted(_) => Command::ObserveAppendCommitted,
63 RequestBody::ResolveDocumentMutation(_) => Command::ResolveDocumentMutation,
64 RequestBody::GetDocument(_) => Command::GetDocument,
65 RequestBody::Search(_) => Command::Search,
66 RequestBody::OpenPit(_) => Command::OpenPit,
67 RequestBody::RenewPit(_) => Command::RenewPit,
68 RequestBody::ClosePit(_) => Command::ClosePit,
69 RequestBody::ListOperations(_) => Command::ListOperations,
70 RequestBody::GetOperation(_) => Command::GetOperation,
71 RequestBody::CancelOperation(_) => Command::CancelOperation,
72 RequestBody::ListAuditEvents(_) => Command::ListAuditEvents,
73 RequestBody::ExportAuditEvents(_) => Command::ExportAuditEvents,
74 RequestBody::ReserveServiceCredential(_) => Command::ReserveServiceCredential,
75 RequestBody::ReserveServiceCredentialRotation(_) => Command::ReserveServiceCredentialRotation,
76 RequestBody::ActivateServiceCredential(_) => Command::ActivateServiceCredential,
77 RequestBody::ResolveServiceCredentialReservation(_) => Command::ResolveServiceCredentialReservation,
78 RequestBody::PrepareRevokeServiceCredential(_) => Command::PrepareRevokeServiceCredential,
79 RequestBody::RevokeServiceCredential(_) => Command::RevokeServiceCredential,
80 RequestBody::ResolveSecurityAction(_) => Command::ResolveSecurityAction,
81 RequestBody::GetSecurityRole(_) => Command::GetSecurityRole,
82 RequestBody::PrepareRoleAppendAccessChange(_) => Command::PrepareRoleAppendAccessChange,
83 RequestBody::SubmitRoleAppendAccessChange(_) => Command::SubmitRoleAppendAccessChange,
84 RequestBody::ListServiceCredentials(_) => Command::ListServiceCredentials,
85 RequestBody::ListBackups(_) => Command::ListBackups,
86 RequestBody::GetBackup(_) => Command::GetBackup,
87 RequestBody::CreateBackup(_) => Command::CreateBackup,
88 RequestBody::ResolveBackupAction(_) => Command::ResolveBackupAction,
89 RequestBody::GetRuntimeStatus(_) => Command::GetRuntimeStatus,
90 RequestBody::GetResultCacheStatus(_) => Command::GetResultCacheStatus,
91 RequestBody::GetFieldPromotionStatus(_) => Command::GetFieldPromotionStatus,
92 RequestBody::GetOverloadStatus(_) => Command::GetOverloadStatus,
93 RequestBody::ConfigureExternalKey(_) => Command::ConfigureExternalKey,
94 RequestBody::RotateExternalKeyBinding(_) => Command::RotateExternalKeyBinding,
95 RequestBody::ConfigureAggregateThenDelete(_) => Command::ConfigureAggregateThenDelete,
96 RequestBody::GetLifecycleStatus(_) => Command::GetLifecycleStatus,
97 RequestBody::GetQuota(_) => Command::GetQuota,
98 RequestBody::UpdateQuota(_) => Command::UpdateQuota,
99 RequestBody::GetBinding(_) => Command::GetBinding,
100 RequestBody::GetAdmissionStatus(_) => Command::GetAdmissionStatus,
101 RequestBody::SetAdmission(_) => Command::SetAdmission,
102 RequestBody::GetQuiesceStatus(_) => Command::GetQuiesceStatus,
103 RequestBody::GetDecommissionReadiness(_) => Command::GetDecommissionReadiness,
104 RequestBody::GetUpgradeReadiness(_) => Command::GetUpgradeReadiness,
105 RequestBody::GetMaintenanceStatus(_) => Command::GetMaintenanceStatus,
106 RequestBody::GetRestoreReadiness(_) => Command::GetRestoreReadiness,
107 RequestBody::WarmVectorIndex(_) => Command::WarmVectorIndex,
108 RequestBody::EvaluateVectorRecall(_) => Command::EvaluateVectorRecall,
109 RequestBody::CalibrateVectorStrategy(_) => Command::CalibrateVectorStrategy,
110 RequestBody::GetVectorDiagnostic(_) => Command::GetVectorDiagnostic,
111 RequestBody::CreateDiagnostic(_) => Command::CreateDiagnostic,
112 RequestBody::GetDiagnostic(_) => Command::GetDiagnostic,
113 RequestBody::ReadArtifactChunk(_) => Command::ReadArtifactChunk,
114 RequestBody::ExportUsage(_) => Command::ExportUsage,
115 RequestBody::ExecuteStateRead(_) => Command::ExecuteStateRead,
116 RequestBody::PrepareStateWrite(_) => Command::PrepareStateWrite,
117 RequestBody::SubmitStateWrite(_) => Command::SubmitStateWrite,
118 RequestBody::ResolveStateWrite(_) => Command::ResolveStateWrite,
119 }
120}
121
122pub(crate) fn request_collection_index_ref(request: &RequestBody) -> Result<GeneratedCollectionIndexRef, ClientError> {
123 match request {
124 RequestBody::Discover(_) => Ok(GeneratedCollectionIndexRef::None),
125 RequestBody::ListIndexes(_) => Ok(GeneratedCollectionIndexRef::None),
126 RequestBody::GetIndex(_) => Ok(GeneratedCollectionIndexRef::None),
127 RequestBody::ValidateIndexChange(value) => Ok(GeneratedCollectionIndexRef::Exact(value.name.clone())),
128 RequestBody::ApplyIndexChange(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
129 RequestBody::ApplyAdministrationMutation(_) => Ok(GeneratedCollectionIndexRef::None),
130 RequestBody::ListAliases(_) => Ok(GeneratedCollectionIndexRef::None),
131 RequestBody::GetAlias(_) => Ok(GeneratedCollectionIndexRef::None),
132 RequestBody::ListDataStreams(_) => Ok(GeneratedCollectionIndexRef::None),
133 RequestBody::GetDataStream(_) => Ok(GeneratedCollectionIndexRef::None),
134 RequestBody::ListComponentTemplates(_) => Ok(GeneratedCollectionIndexRef::None),
135 RequestBody::GetComponentTemplate(_) => Ok(GeneratedCollectionIndexRef::None),
136 RequestBody::ListIndexTemplates(_) => Ok(GeneratedCollectionIndexRef::None),
137 RequestBody::GetIndexTemplate(_) => Ok(GeneratedCollectionIndexRef::None),
138 RequestBody::ListIngestPipelines(_) => Ok(GeneratedCollectionIndexRef::None),
139 RequestBody::GetIngestPipeline(_) => Ok(GeneratedCollectionIndexRef::None),
140 RequestBody::SimulateIngestPipeline(_) => Ok(GeneratedCollectionIndexRef::None),
141 RequestBody::ReprocessByQuery(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
142 RequestBody::ListLifecyclePolicies(_) => Ok(GeneratedCollectionIndexRef::None),
143 RequestBody::GetLifecyclePolicy(_) => Ok(GeneratedCollectionIndexRef::None),
144 RequestBody::PrepareCreateIndex(value) => Ok(GeneratedCollectionIndexRef::Exact(value.name.clone())),
145 RequestBody::PrepareDeleteIndex(value) => Ok(GeneratedCollectionIndexRef::Exact(value.name.clone())),
146 RequestBody::SubmitCatalogAction(value) => Ok(GeneratedCollectionIndexRef::Exact(value.name.clone())),
147 RequestBody::ResolveCatalogAction(_) => Ok(GeneratedCollectionIndexRef::Caller),
148 RequestBody::PrepareReplayableSourceIndex(value) => Ok(GeneratedCollectionIndexRef::Exact(value.name.clone())),
149 RequestBody::SubmitReplayableSourceIndex(value) => Ok(GeneratedCollectionIndexRef::Exact(value.name.clone())),
150 RequestBody::GetReplayableSource(_) => Ok(GeneratedCollectionIndexRef::None),
151 RequestBody::ControlReplayableSource(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
152 RequestBody::CloneIndex(_) => Ok(GeneratedCollectionIndexRef::Caller),
153 RequestBody::ConfigureHistory(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
154 RequestBody::GetHistory(_) => Ok(GeneratedCollectionIndexRef::None),
155 RequestBody::ResolveHistory(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
156 RequestBody::PlaceHistoryHold(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
157 RequestBody::ReleaseHistoryHold(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
158 RequestBody::PrepareDocumentMutation(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
159 RequestBody::SubmitDocumentMutation(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
160 RequestBody::PrepareDocumentBulk(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
161 RequestBody::SubmitDocumentBulk(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
162 RequestBody::ResolveDocumentBulk(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
163 RequestBody::PrepareAppendBulk(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
164 RequestBody::SubmitAppendBulk(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
165 RequestBody::ResolveAppendBulk(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
166 RequestBody::ObserveAppendCommitted(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
167 RequestBody::ResolveDocumentMutation(_) => Ok(GeneratedCollectionIndexRef::Caller),
168 RequestBody::GetDocument(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
169 RequestBody::Search(value) => value.indexes.as_deref().map_or(
170 Ok(GeneratedCollectionIndexRef::None),
171 generated_uniform_collection_index_ref,
172 ),
173 RequestBody::OpenPit(value) => generated_uniform_collection_index_ref(&value.indexes),
174 RequestBody::RenewPit(_) => Ok(GeneratedCollectionIndexRef::None),
175 RequestBody::ClosePit(_) => Ok(GeneratedCollectionIndexRef::None),
176 RequestBody::ListOperations(_) => Ok(GeneratedCollectionIndexRef::None),
177 RequestBody::GetOperation(_) => Ok(GeneratedCollectionIndexRef::None),
178 RequestBody::CancelOperation(_) => Ok(GeneratedCollectionIndexRef::None),
179 RequestBody::ListAuditEvents(_) => Ok(GeneratedCollectionIndexRef::None),
180 RequestBody::ExportAuditEvents(_) => Ok(GeneratedCollectionIndexRef::None),
181 RequestBody::ReserveServiceCredential(_) => Ok(GeneratedCollectionIndexRef::None),
182 RequestBody::ReserveServiceCredentialRotation(_) => Ok(GeneratedCollectionIndexRef::None),
183 RequestBody::ActivateServiceCredential(_) => Ok(GeneratedCollectionIndexRef::None),
184 RequestBody::ResolveServiceCredentialReservation(_) => Ok(GeneratedCollectionIndexRef::None),
185 RequestBody::PrepareRevokeServiceCredential(_) => Ok(GeneratedCollectionIndexRef::None),
186 RequestBody::RevokeServiceCredential(_) => Ok(GeneratedCollectionIndexRef::None),
187 RequestBody::ResolveSecurityAction(_) => Ok(GeneratedCollectionIndexRef::None),
188 RequestBody::GetSecurityRole(_) => Ok(GeneratedCollectionIndexRef::None),
189 RequestBody::PrepareRoleAppendAccessChange(_) => Ok(GeneratedCollectionIndexRef::None),
190 RequestBody::SubmitRoleAppendAccessChange(_) => Ok(GeneratedCollectionIndexRef::None),
191 RequestBody::ListServiceCredentials(_) => Ok(GeneratedCollectionIndexRef::None),
192 RequestBody::ListBackups(_) => Ok(GeneratedCollectionIndexRef::None),
193 RequestBody::GetBackup(_) => Ok(GeneratedCollectionIndexRef::None),
194 RequestBody::CreateBackup(_) => Ok(GeneratedCollectionIndexRef::None),
195 RequestBody::ResolveBackupAction(_) => Ok(GeneratedCollectionIndexRef::None),
196 RequestBody::GetRuntimeStatus(_) => Ok(GeneratedCollectionIndexRef::None),
197 RequestBody::GetResultCacheStatus(_) => Ok(GeneratedCollectionIndexRef::None),
198 RequestBody::GetFieldPromotionStatus(_) => Ok(GeneratedCollectionIndexRef::None),
199 RequestBody::GetOverloadStatus(_) => Ok(GeneratedCollectionIndexRef::None),
200 RequestBody::ConfigureExternalKey(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
201 RequestBody::RotateExternalKeyBinding(value) => {
202 Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone()))
203 }
204 RequestBody::ConfigureAggregateThenDelete(value) => {
205 Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone()))
206 }
207 RequestBody::GetLifecycleStatus(_) => Ok(GeneratedCollectionIndexRef::None),
208 RequestBody::GetQuota(_) => Ok(GeneratedCollectionIndexRef::None),
209 RequestBody::UpdateQuota(_) => Ok(GeneratedCollectionIndexRef::None),
210 RequestBody::GetBinding(_) => Ok(GeneratedCollectionIndexRef::None),
211 RequestBody::GetAdmissionStatus(_) => Ok(GeneratedCollectionIndexRef::None),
212 RequestBody::SetAdmission(_) => Ok(GeneratedCollectionIndexRef::None),
213 RequestBody::GetQuiesceStatus(_) => Ok(GeneratedCollectionIndexRef::None),
214 RequestBody::GetDecommissionReadiness(_) => Ok(GeneratedCollectionIndexRef::None),
215 RequestBody::GetUpgradeReadiness(_) => Ok(GeneratedCollectionIndexRef::None),
216 RequestBody::GetMaintenanceStatus(value) => {
217 Ok(value.index.as_ref().map_or(GeneratedCollectionIndexRef::None, |index| {
218 GeneratedCollectionIndexRef::Exact(index.name.clone())
219 }))
220 }
221 RequestBody::GetRestoreReadiness(_) => Ok(GeneratedCollectionIndexRef::None),
222 RequestBody::WarmVectorIndex(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
223 RequestBody::EvaluateVectorRecall(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
224 RequestBody::CalibrateVectorStrategy(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
225 RequestBody::GetVectorDiagnostic(_) => Ok(GeneratedCollectionIndexRef::None),
226 RequestBody::CreateDiagnostic(_) => Ok(GeneratedCollectionIndexRef::None),
227 RequestBody::GetDiagnostic(_) => Ok(GeneratedCollectionIndexRef::None),
228 RequestBody::ReadArtifactChunk(_) => Ok(GeneratedCollectionIndexRef::None),
229 RequestBody::ExportUsage(_) => Ok(GeneratedCollectionIndexRef::None),
230 RequestBody::ExecuteStateRead(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
231 RequestBody::PrepareStateWrite(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
232 RequestBody::SubmitStateWrite(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
233 RequestBody::ResolveStateWrite(value) => Ok(GeneratedCollectionIndexRef::Exact(value.index.name.clone())),
234 }
235}
236
237fn generated_uniform_collection_index_ref(indexes: &[Resource]) -> Result<GeneratedCollectionIndexRef, ClientError> {
238 if indexes.is_empty() {
239 return Err(ClientError::CollectionIndexRefRequired);
240 }
241 if indexes
242 .iter()
243 .enumerate()
244 .any(|(position, index)| indexes[..position].contains(index))
245 {
246 return Err(ClientError::CollectionIndexRefMismatch);
247 }
248 Ok(GeneratedCollectionIndexRef::None)
249}
250
251impl Client {
252 pub async fn discover(
254 &self,
255 request: DiscoverRequest,
256 options: CallOptions,
257 ) -> Result<DiscoverResult, ClientError> {
258 match self.call(RequestBody::Discover(request), options).await? {
259 ResultBody::Discover(result) => Ok(result),
260 _ => Err(ClientError::ResponseCommandMismatch),
261 }
262 }
263
264 pub async fn list_indexes(
266 &self,
267 request: ListIndexesRequest,
268 options: CallOptions,
269 ) -> Result<ListIndexesResult, ClientError> {
270 match self.call(RequestBody::ListIndexes(request), options).await? {
271 ResultBody::ListIndexes(result) => Ok(result),
272 _ => Err(ClientError::ResponseCommandMismatch),
273 }
274 }
275
276 pub async fn get_index(
278 &self,
279 request: GetIndexRequest,
280 options: CallOptions,
281 ) -> Result<GetIndexResult, ClientError> {
282 match self.call(RequestBody::GetIndex(request), options).await? {
283 ResultBody::GetIndex(result) => Ok(result),
284 _ => Err(ClientError::ResponseCommandMismatch),
285 }
286 }
287
288 pub async fn validate_index_change(
290 &self,
291 request: ValidateIndexChangeRequest,
292 options: CallOptions,
293 ) -> Result<ValidateIndexChangeResult, ClientError> {
294 match self.call(RequestBody::ValidateIndexChange(request), options).await? {
295 ResultBody::ValidateIndexChange(result) => Ok(result),
296 _ => Err(ClientError::ResponseCommandMismatch),
297 }
298 }
299
300 pub async fn apply_index_change(
302 &self,
303 request: ApplyIndexChangeRequest,
304 options: CallOptions,
305 ) -> Result<ApplyIndexChangeResult, ClientError> {
306 match self.call(RequestBody::ApplyIndexChange(request), options).await? {
307 ResultBody::ApplyIndexChange(result) => Ok(result),
308 _ => Err(ClientError::ResponseCommandMismatch),
309 }
310 }
311
312 pub async fn apply_administration_mutation(
314 &self,
315 request: ApplyAdministrationMutationRequest,
316 options: CallOptions,
317 ) -> Result<ApplyAdministrationMutationResult, ClientError> {
318 match self
319 .call(RequestBody::ApplyAdministrationMutation(request), options)
320 .await?
321 {
322 ResultBody::ApplyAdministrationMutation(result) => Ok(result),
323 _ => Err(ClientError::ResponseCommandMismatch),
324 }
325 }
326
327 pub async fn list_aliases(
329 &self,
330 request: ListAliasesRequest,
331 options: CallOptions,
332 ) -> Result<ListAliasesResult, ClientError> {
333 match self.call(RequestBody::ListAliases(request), options).await? {
334 ResultBody::ListAliases(result) => Ok(result),
335 _ => Err(ClientError::ResponseCommandMismatch),
336 }
337 }
338
339 pub async fn get_alias(
341 &self,
342 request: GetAliasRequest,
343 options: CallOptions,
344 ) -> Result<GetAliasResult, ClientError> {
345 match self.call(RequestBody::GetAlias(request), options).await? {
346 ResultBody::GetAlias(result) => Ok(result),
347 _ => Err(ClientError::ResponseCommandMismatch),
348 }
349 }
350
351 pub async fn list_data_streams(
353 &self,
354 request: ListDataStreamsRequest,
355 options: CallOptions,
356 ) -> Result<ListDataStreamsResult, ClientError> {
357 match self.call(RequestBody::ListDataStreams(request), options).await? {
358 ResultBody::ListDataStreams(result) => Ok(result),
359 _ => Err(ClientError::ResponseCommandMismatch),
360 }
361 }
362
363 pub async fn get_data_stream(
365 &self,
366 request: GetDataStreamRequest,
367 options: CallOptions,
368 ) -> Result<GetDataStreamResult, ClientError> {
369 match self.call(RequestBody::GetDataStream(request), options).await? {
370 ResultBody::GetDataStream(result) => Ok(result),
371 _ => Err(ClientError::ResponseCommandMismatch),
372 }
373 }
374
375 pub async fn list_component_templates(
377 &self,
378 request: ListComponentTemplatesRequest,
379 options: CallOptions,
380 ) -> Result<ListComponentTemplatesResult, ClientError> {
381 match self.call(RequestBody::ListComponentTemplates(request), options).await? {
382 ResultBody::ListComponentTemplates(result) => Ok(result),
383 _ => Err(ClientError::ResponseCommandMismatch),
384 }
385 }
386
387 pub async fn get_component_template(
389 &self,
390 request: GetComponentTemplateRequest,
391 options: CallOptions,
392 ) -> Result<GetComponentTemplateResult, ClientError> {
393 match self.call(RequestBody::GetComponentTemplate(request), options).await? {
394 ResultBody::GetComponentTemplate(result) => Ok(result),
395 _ => Err(ClientError::ResponseCommandMismatch),
396 }
397 }
398
399 pub async fn list_index_templates(
401 &self,
402 request: ListIndexTemplatesRequest,
403 options: CallOptions,
404 ) -> Result<ListIndexTemplatesResult, ClientError> {
405 match self.call(RequestBody::ListIndexTemplates(request), options).await? {
406 ResultBody::ListIndexTemplates(result) => Ok(result),
407 _ => Err(ClientError::ResponseCommandMismatch),
408 }
409 }
410
411 pub async fn get_index_template(
413 &self,
414 request: GetIndexTemplateRequest,
415 options: CallOptions,
416 ) -> Result<GetIndexTemplateResult, ClientError> {
417 match self.call(RequestBody::GetIndexTemplate(request), options).await? {
418 ResultBody::GetIndexTemplate(result) => Ok(result),
419 _ => Err(ClientError::ResponseCommandMismatch),
420 }
421 }
422
423 pub async fn list_ingest_pipelines(
425 &self,
426 request: ListIngestPipelinesRequest,
427 options: CallOptions,
428 ) -> Result<ListIngestPipelinesResult, ClientError> {
429 match self.call(RequestBody::ListIngestPipelines(request), options).await? {
430 ResultBody::ListIngestPipelines(result) => Ok(result),
431 _ => Err(ClientError::ResponseCommandMismatch),
432 }
433 }
434
435 pub async fn get_ingest_pipeline(
437 &self,
438 request: GetIngestPipelineRequest,
439 options: CallOptions,
440 ) -> Result<GetIngestPipelineResult, ClientError> {
441 match self.call(RequestBody::GetIngestPipeline(request), options).await? {
442 ResultBody::GetIngestPipeline(result) => Ok(result),
443 _ => Err(ClientError::ResponseCommandMismatch),
444 }
445 }
446
447 pub async fn simulate_ingest_pipeline(
449 &self,
450 request: SimulateIngestPipelineRequest,
451 options: CallOptions,
452 ) -> Result<SimulateIngestPipelineResult, ClientError> {
453 match self.call(RequestBody::SimulateIngestPipeline(request), options).await? {
454 ResultBody::SimulateIngestPipeline(result) => Ok(result),
455 _ => Err(ClientError::ResponseCommandMismatch),
456 }
457 }
458
459 pub async fn reprocess_by_query(
461 &self,
462 request: ReprocessByQueryRequest,
463 options: CallOptions,
464 ) -> Result<ReprocessByQueryResult, ClientError> {
465 match self.call(RequestBody::ReprocessByQuery(request), options).await? {
466 ResultBody::ReprocessByQuery(result) => Ok(result),
467 _ => Err(ClientError::ResponseCommandMismatch),
468 }
469 }
470
471 pub async fn list_lifecycle_policies(
473 &self,
474 request: ListLifecyclePoliciesRequest,
475 options: CallOptions,
476 ) -> Result<ListLifecyclePoliciesResult, ClientError> {
477 match self.call(RequestBody::ListLifecyclePolicies(request), options).await? {
478 ResultBody::ListLifecyclePolicies(result) => Ok(result),
479 _ => Err(ClientError::ResponseCommandMismatch),
480 }
481 }
482
483 pub async fn get_lifecycle_policy(
485 &self,
486 request: GetLifecyclePolicyRequest,
487 options: CallOptions,
488 ) -> Result<GetLifecyclePolicyResult, ClientError> {
489 match self.call(RequestBody::GetLifecyclePolicy(request), options).await? {
490 ResultBody::GetLifecyclePolicy(result) => Ok(result),
491 _ => Err(ClientError::ResponseCommandMismatch),
492 }
493 }
494
495 pub async fn prepare_create_index(
497 &self,
498 request: PrepareCreateIndexRequest,
499 options: CallOptions,
500 ) -> Result<PrepareCreateIndexResult, ClientError> {
501 match self.call(RequestBody::PrepareCreateIndex(request), options).await? {
502 ResultBody::PrepareCreateIndex(result) => Ok(result),
503 _ => Err(ClientError::ResponseCommandMismatch),
504 }
505 }
506
507 pub async fn prepare_delete_index(
509 &self,
510 request: PrepareDeleteIndexRequest,
511 options: CallOptions,
512 ) -> Result<PrepareDeleteIndexResult, ClientError> {
513 match self.call(RequestBody::PrepareDeleteIndex(request), options).await? {
514 ResultBody::PrepareDeleteIndex(result) => Ok(result),
515 _ => Err(ClientError::ResponseCommandMismatch),
516 }
517 }
518
519 pub async fn submit_catalog_action(
521 &self,
522 request: SubmitCatalogActionRequest,
523 options: CallOptions,
524 ) -> Result<SubmitCatalogActionResult, ClientError> {
525 match self.call(RequestBody::SubmitCatalogAction(request), options).await? {
526 ResultBody::SubmitCatalogAction(result) => Ok(result),
527 _ => Err(ClientError::ResponseCommandMismatch),
528 }
529 }
530
531 pub async fn resolve_catalog_action(
533 &self,
534 request: ResolveCatalogActionRequest,
535 options: CallOptions,
536 ) -> Result<ResolveCatalogActionResult, ClientError> {
537 match self.call(RequestBody::ResolveCatalogAction(request), options).await? {
538 ResultBody::ResolveCatalogAction(result) => Ok(result),
539 _ => Err(ClientError::ResponseCommandMismatch),
540 }
541 }
542
543 pub async fn prepare_replayable_source_index(
545 &self,
546 request: PrepareReplayableSourceIndexRequest,
547 options: CallOptions,
548 ) -> Result<PrepareReplayableSourceIndexResult, ClientError> {
549 match self
550 .call(RequestBody::PrepareReplayableSourceIndex(request), options)
551 .await?
552 {
553 ResultBody::PrepareReplayableSourceIndex(result) => Ok(result),
554 _ => Err(ClientError::ResponseCommandMismatch),
555 }
556 }
557
558 pub async fn submit_replayable_source_index(
560 &self,
561 request: SubmitReplayableSourceIndexRequest,
562 options: CallOptions,
563 ) -> Result<SubmitReplayableSourceIndexResult, ClientError> {
564 match self
565 .call(RequestBody::SubmitReplayableSourceIndex(request), options)
566 .await?
567 {
568 ResultBody::SubmitReplayableSourceIndex(result) => Ok(result),
569 _ => Err(ClientError::ResponseCommandMismatch),
570 }
571 }
572
573 pub async fn get_replayable_source(
575 &self,
576 request: GetReplayableSourceRequest,
577 options: CallOptions,
578 ) -> Result<GetReplayableSourceResult, ClientError> {
579 match self.call(RequestBody::GetReplayableSource(request), options).await? {
580 ResultBody::GetReplayableSource(result) => Ok(result),
581 _ => Err(ClientError::ResponseCommandMismatch),
582 }
583 }
584
585 pub async fn control_replayable_source(
587 &self,
588 request: ControlReplayableSourceRequest,
589 options: CallOptions,
590 ) -> Result<ControlReplayableSourceResult, ClientError> {
591 match self
592 .call(RequestBody::ControlReplayableSource(request), options)
593 .await?
594 {
595 ResultBody::ControlReplayableSource(result) => Ok(result),
596 _ => Err(ClientError::ResponseCommandMismatch),
597 }
598 }
599
600 pub async fn clone_index(
602 &self,
603 request: CloneIndexRequest,
604 options: CallOptions,
605 ) -> Result<CloneIndexResult, ClientError> {
606 match self.call(RequestBody::CloneIndex(request), options).await? {
607 ResultBody::CloneIndex(result) => Ok(result),
608 _ => Err(ClientError::ResponseCommandMismatch),
609 }
610 }
611
612 pub async fn configure_history(
614 &self,
615 request: ConfigureHistoryRequest,
616 options: CallOptions,
617 ) -> Result<ConfigureHistoryResult, ClientError> {
618 match self.call(RequestBody::ConfigureHistory(request), options).await? {
619 ResultBody::ConfigureHistory(result) => Ok(result),
620 _ => Err(ClientError::ResponseCommandMismatch),
621 }
622 }
623
624 pub async fn get_history(
626 &self,
627 request: GetHistoryRequest,
628 options: CallOptions,
629 ) -> Result<GetHistoryResult, ClientError> {
630 match self.call(RequestBody::GetHistory(request), options).await? {
631 ResultBody::GetHistory(result) => Ok(result),
632 _ => Err(ClientError::ResponseCommandMismatch),
633 }
634 }
635
636 pub async fn resolve_history(
638 &self,
639 request: ResolveHistoryRequest,
640 options: CallOptions,
641 ) -> Result<ResolveHistoryResult, ClientError> {
642 match self.call(RequestBody::ResolveHistory(request), options).await? {
643 ResultBody::ResolveHistory(result) => Ok(result),
644 _ => Err(ClientError::ResponseCommandMismatch),
645 }
646 }
647
648 pub async fn place_history_hold(
650 &self,
651 request: PlaceHistoryHoldRequest,
652 options: CallOptions,
653 ) -> Result<PlaceHistoryHoldResult, ClientError> {
654 match self.call(RequestBody::PlaceHistoryHold(request), options).await? {
655 ResultBody::PlaceHistoryHold(result) => Ok(result),
656 _ => Err(ClientError::ResponseCommandMismatch),
657 }
658 }
659
660 pub async fn release_history_hold(
662 &self,
663 request: ReleaseHistoryHoldRequest,
664 options: CallOptions,
665 ) -> Result<ReleaseHistoryHoldResult, ClientError> {
666 match self.call(RequestBody::ReleaseHistoryHold(request), options).await? {
667 ResultBody::ReleaseHistoryHold(result) => Ok(result),
668 _ => Err(ClientError::ResponseCommandMismatch),
669 }
670 }
671
672 pub async fn prepare_document_mutation(
674 &self,
675 request: PrepareDocumentMutationRequest,
676 options: CallOptions,
677 ) -> Result<PrepareDocumentMutationResult, ClientError> {
678 match self
679 .call(RequestBody::PrepareDocumentMutation(request), options)
680 .await?
681 {
682 ResultBody::PrepareDocumentMutation(result) => Ok(result),
683 _ => Err(ClientError::ResponseCommandMismatch),
684 }
685 }
686
687 pub async fn submit_document_mutation(
689 &self,
690 request: SubmitDocumentMutationRequest,
691 options: CallOptions,
692 ) -> Result<SubmitDocumentMutationResult, ClientError> {
693 match self.call(RequestBody::SubmitDocumentMutation(request), options).await? {
694 ResultBody::SubmitDocumentMutation(result) => Ok(result),
695 _ => Err(ClientError::ResponseCommandMismatch),
696 }
697 }
698
699 pub async fn prepare_document_bulk(
701 &self,
702 request: PrepareDocumentBulkRequest,
703 options: CallOptions,
704 ) -> Result<PrepareDocumentBulkResult, ClientError> {
705 match self.call(RequestBody::PrepareDocumentBulk(request), options).await? {
706 ResultBody::PrepareDocumentBulk(result) => Ok(result),
707 _ => Err(ClientError::ResponseCommandMismatch),
708 }
709 }
710
711 pub async fn submit_document_bulk(
713 &self,
714 request: SubmitDocumentBulkRequest,
715 options: CallOptions,
716 ) -> Result<SubmitDocumentBulkResult, ClientError> {
717 match self.call(RequestBody::SubmitDocumentBulk(request), options).await? {
718 ResultBody::SubmitDocumentBulk(result) => Ok(result),
719 _ => Err(ClientError::ResponseCommandMismatch),
720 }
721 }
722
723 pub async fn resolve_document_bulk(
725 &self,
726 request: ResolveDocumentBulkRequest,
727 options: CallOptions,
728 ) -> Result<ResolveDocumentBulkResult, ClientError> {
729 match self.call(RequestBody::ResolveDocumentBulk(request), options).await? {
730 ResultBody::ResolveDocumentBulk(result) => Ok(result),
731 _ => Err(ClientError::ResponseCommandMismatch),
732 }
733 }
734
735 pub async fn prepare_append_bulk(
737 &self,
738 request: PrepareAppendBulkRequest,
739 options: CallOptions,
740 ) -> Result<PrepareAppendBulkResult, ClientError> {
741 match self.call(RequestBody::PrepareAppendBulk(request), options).await? {
742 ResultBody::PrepareAppendBulk(result) => Ok(result),
743 _ => Err(ClientError::ResponseCommandMismatch),
744 }
745 }
746
747 pub async fn submit_append_bulk(
749 &self,
750 request: SubmitAppendBulkRequest,
751 options: CallOptions,
752 ) -> Result<SubmitAppendBulkResult, ClientError> {
753 match self.call(RequestBody::SubmitAppendBulk(request), options).await? {
754 ResultBody::SubmitAppendBulk(result) => Ok(result),
755 _ => Err(ClientError::ResponseCommandMismatch),
756 }
757 }
758
759 pub async fn resolve_append_bulk(
761 &self,
762 request: ResolveAppendBulkRequest,
763 options: CallOptions,
764 ) -> Result<ResolveAppendBulkResult, ClientError> {
765 match self.call(RequestBody::ResolveAppendBulk(request), options).await? {
766 ResultBody::ResolveAppendBulk(result) => Ok(result),
767 _ => Err(ClientError::ResponseCommandMismatch),
768 }
769 }
770
771 pub async fn observe_append_committed(
773 &self,
774 request: ObserveAppendCommittedRequest,
775 options: CallOptions,
776 ) -> Result<ObserveAppendCommittedResult, ClientError> {
777 match self.call(RequestBody::ObserveAppendCommitted(request), options).await? {
778 ResultBody::ObserveAppendCommitted(result) => Ok(result),
779 _ => Err(ClientError::ResponseCommandMismatch),
780 }
781 }
782
783 pub async fn resolve_document_mutation(
785 &self,
786 request: ResolveDocumentMutationRequest,
787 options: CallOptions,
788 ) -> Result<ResolveDocumentMutationResult, ClientError> {
789 match self
790 .call(RequestBody::ResolveDocumentMutation(request), options)
791 .await?
792 {
793 ResultBody::ResolveDocumentMutation(result) => Ok(result),
794 _ => Err(ClientError::ResponseCommandMismatch),
795 }
796 }
797
798 pub async fn get_document(
800 &self,
801 request: GetDocumentRequest,
802 options: CallOptions,
803 ) -> Result<GetDocumentResult, ClientError> {
804 match self.call(RequestBody::GetDocument(request), options).await? {
805 ResultBody::GetDocument(result) => Ok(result),
806 _ => Err(ClientError::ResponseCommandMismatch),
807 }
808 }
809
810 pub async fn search(&self, request: SearchRequest, options: CallOptions) -> Result<SearchResult, ClientError> {
812 match self.call(RequestBody::Search(request), options).await? {
813 ResultBody::Search(result) => Ok(result),
814 _ => Err(ClientError::ResponseCommandMismatch),
815 }
816 }
817
818 pub async fn open_pit(&self, request: OpenPitRequest, options: CallOptions) -> Result<OpenPitResult, ClientError> {
820 match self.call(RequestBody::OpenPit(request), options).await? {
821 ResultBody::OpenPit(result) => Ok(result),
822 _ => Err(ClientError::ResponseCommandMismatch),
823 }
824 }
825
826 pub async fn renew_pit(
828 &self,
829 request: RenewPitRequest,
830 options: CallOptions,
831 ) -> Result<RenewPitResult, ClientError> {
832 match self.call(RequestBody::RenewPit(request), options).await? {
833 ResultBody::RenewPit(result) => Ok(result),
834 _ => Err(ClientError::ResponseCommandMismatch),
835 }
836 }
837
838 pub async fn close_pit(
840 &self,
841 request: ClosePitRequest,
842 options: CallOptions,
843 ) -> Result<ClosePitResult, ClientError> {
844 match self.call(RequestBody::ClosePit(request), options).await? {
845 ResultBody::ClosePit(result) => Ok(result),
846 _ => Err(ClientError::ResponseCommandMismatch),
847 }
848 }
849
850 pub async fn list_operations(
852 &self,
853 request: ListOperationsRequest,
854 options: CallOptions,
855 ) -> Result<ListOperationsResult, ClientError> {
856 match self.call(RequestBody::ListOperations(request), options).await? {
857 ResultBody::ListOperations(result) => Ok(result),
858 _ => Err(ClientError::ResponseCommandMismatch),
859 }
860 }
861
862 pub async fn get_operation(
864 &self,
865 request: GetOperationRequest,
866 options: CallOptions,
867 ) -> Result<GetOperationResult, ClientError> {
868 match self.call(RequestBody::GetOperation(request), options).await? {
869 ResultBody::GetOperation(result) => Ok(result),
870 _ => Err(ClientError::ResponseCommandMismatch),
871 }
872 }
873
874 pub async fn cancel_operation(
876 &self,
877 request: CancelOperationRequest,
878 options: CallOptions,
879 ) -> Result<CancelOperationResult, ClientError> {
880 match self.call(RequestBody::CancelOperation(request), options).await? {
881 ResultBody::CancelOperation(result) => Ok(result),
882 _ => Err(ClientError::ResponseCommandMismatch),
883 }
884 }
885
886 pub async fn list_audit_events(
888 &self,
889 request: ListAuditEventsRequest,
890 options: CallOptions,
891 ) -> Result<ListAuditEventsResult, ClientError> {
892 match self.call(RequestBody::ListAuditEvents(request), options).await? {
893 ResultBody::ListAuditEvents(result) => Ok(result),
894 _ => Err(ClientError::ResponseCommandMismatch),
895 }
896 }
897
898 pub async fn export_audit_events(
900 &self,
901 request: ExportAuditEventsRequest,
902 options: CallOptions,
903 ) -> Result<ExportAuditEventsResult, ClientError> {
904 match self.call(RequestBody::ExportAuditEvents(request), options).await? {
905 ResultBody::ExportAuditEvents(result) => Ok(result),
906 _ => Err(ClientError::ResponseCommandMismatch),
907 }
908 }
909
910 pub async fn reserve_service_credential(
912 &self,
913 request: ReserveServiceCredentialRequest,
914 options: CallOptions,
915 ) -> Result<ReserveServiceCredentialResult, ClientError> {
916 match self
917 .call(RequestBody::ReserveServiceCredential(request), options)
918 .await?
919 {
920 ResultBody::ReserveServiceCredential(result) => Ok(result),
921 _ => Err(ClientError::ResponseCommandMismatch),
922 }
923 }
924
925 pub async fn reserve_service_credential_rotation(
927 &self,
928 request: ReserveServiceCredentialRotationRequest,
929 options: CallOptions,
930 ) -> Result<ReserveServiceCredentialRotationResult, ClientError> {
931 match self
932 .call(RequestBody::ReserveServiceCredentialRotation(request), options)
933 .await?
934 {
935 ResultBody::ReserveServiceCredentialRotation(result) => Ok(result),
936 _ => Err(ClientError::ResponseCommandMismatch),
937 }
938 }
939
940 pub async fn activate_service_credential(
942 &self,
943 request: ActivateServiceCredentialRequest,
944 options: CallOptions,
945 ) -> Result<ActivateServiceCredentialResult, ClientError> {
946 match self
947 .call(RequestBody::ActivateServiceCredential(request), options)
948 .await?
949 {
950 ResultBody::ActivateServiceCredential(result) => Ok(result),
951 _ => Err(ClientError::ResponseCommandMismatch),
952 }
953 }
954
955 pub async fn resolve_service_credential_reservation(
957 &self,
958 request: ResolveServiceCredentialReservationRequest,
959 options: CallOptions,
960 ) -> Result<ResolveServiceCredentialReservationResult, ClientError> {
961 match self
962 .call(RequestBody::ResolveServiceCredentialReservation(request), options)
963 .await?
964 {
965 ResultBody::ResolveServiceCredentialReservation(result) => Ok(result),
966 _ => Err(ClientError::ResponseCommandMismatch),
967 }
968 }
969
970 pub async fn prepare_revoke_service_credential(
972 &self,
973 request: PrepareRevokeServiceCredentialRequest,
974 options: CallOptions,
975 ) -> Result<PrepareRevokeServiceCredentialResult, ClientError> {
976 match self
977 .call(RequestBody::PrepareRevokeServiceCredential(request), options)
978 .await?
979 {
980 ResultBody::PrepareRevokeServiceCredential(result) => Ok(result),
981 _ => Err(ClientError::ResponseCommandMismatch),
982 }
983 }
984
985 pub async fn revoke_service_credential(
987 &self,
988 request: RevokeServiceCredentialRequest,
989 options: CallOptions,
990 ) -> Result<RevokeServiceCredentialResult, ClientError> {
991 match self
992 .call(RequestBody::RevokeServiceCredential(request), options)
993 .await?
994 {
995 ResultBody::RevokeServiceCredential(result) => Ok(result),
996 _ => Err(ClientError::ResponseCommandMismatch),
997 }
998 }
999
1000 pub async fn resolve_security_action(
1002 &self,
1003 request: ResolveSecurityActionRequest,
1004 options: CallOptions,
1005 ) -> Result<ResolveSecurityActionResult, ClientError> {
1006 match self.call(RequestBody::ResolveSecurityAction(request), options).await? {
1007 ResultBody::ResolveSecurityAction(result) => Ok(result),
1008 _ => Err(ClientError::ResponseCommandMismatch),
1009 }
1010 }
1011
1012 pub async fn get_security_role(
1014 &self,
1015 request: GetSecurityRoleRequest,
1016 options: CallOptions,
1017 ) -> Result<GetSecurityRoleResult, ClientError> {
1018 match self.call(RequestBody::GetSecurityRole(request), options).await? {
1019 ResultBody::GetSecurityRole(result) => Ok(result),
1020 _ => Err(ClientError::ResponseCommandMismatch),
1021 }
1022 }
1023
1024 pub async fn prepare_role_append_access_change(
1026 &self,
1027 request: PrepareRoleAppendAccessChangeRequest,
1028 options: CallOptions,
1029 ) -> Result<PrepareRoleAppendAccessChangeResult, ClientError> {
1030 match self
1031 .call(RequestBody::PrepareRoleAppendAccessChange(request), options)
1032 .await?
1033 {
1034 ResultBody::PrepareRoleAppendAccessChange(result) => Ok(result),
1035 _ => Err(ClientError::ResponseCommandMismatch),
1036 }
1037 }
1038
1039 pub async fn submit_role_append_access_change(
1041 &self,
1042 request: SubmitRoleAppendAccessChangeRequest,
1043 options: CallOptions,
1044 ) -> Result<SubmitRoleAppendAccessChangeResult, ClientError> {
1045 match self
1046 .call(RequestBody::SubmitRoleAppendAccessChange(request), options)
1047 .await?
1048 {
1049 ResultBody::SubmitRoleAppendAccessChange(result) => Ok(result),
1050 _ => Err(ClientError::ResponseCommandMismatch),
1051 }
1052 }
1053
1054 pub async fn list_service_credentials(
1056 &self,
1057 request: ListServiceCredentialsRequest,
1058 options: CallOptions,
1059 ) -> Result<ListServiceCredentialsResult, ClientError> {
1060 match self.call(RequestBody::ListServiceCredentials(request), options).await? {
1061 ResultBody::ListServiceCredentials(result) => Ok(result),
1062 _ => Err(ClientError::ResponseCommandMismatch),
1063 }
1064 }
1065
1066 pub async fn list_backups(
1068 &self,
1069 request: ListBackupsRequest,
1070 options: CallOptions,
1071 ) -> Result<ListBackupsResult, ClientError> {
1072 match self.call(RequestBody::ListBackups(request), options).await? {
1073 ResultBody::ListBackups(result) => Ok(result),
1074 _ => Err(ClientError::ResponseCommandMismatch),
1075 }
1076 }
1077
1078 pub async fn get_backup(
1080 &self,
1081 request: GetBackupRequest,
1082 options: CallOptions,
1083 ) -> Result<GetBackupResult, ClientError> {
1084 match self.call(RequestBody::GetBackup(request), options).await? {
1085 ResultBody::GetBackup(result) => Ok(result),
1086 _ => Err(ClientError::ResponseCommandMismatch),
1087 }
1088 }
1089
1090 pub async fn create_backup(
1092 &self,
1093 request: CreateBackupRequest,
1094 options: CallOptions,
1095 ) -> Result<CreateBackupResult, ClientError> {
1096 match self.call(RequestBody::CreateBackup(request), options).await? {
1097 ResultBody::CreateBackup(result) => Ok(result),
1098 _ => Err(ClientError::ResponseCommandMismatch),
1099 }
1100 }
1101
1102 pub async fn resolve_backup_action(
1104 &self,
1105 request: ResolveBackupActionRequest,
1106 options: CallOptions,
1107 ) -> Result<ResolveBackupActionResult, ClientError> {
1108 match self.call(RequestBody::ResolveBackupAction(request), options).await? {
1109 ResultBody::ResolveBackupAction(result) => Ok(result),
1110 _ => Err(ClientError::ResponseCommandMismatch),
1111 }
1112 }
1113
1114 pub async fn get_runtime_status(
1116 &self,
1117 request: GetRuntimeStatusRequest,
1118 options: CallOptions,
1119 ) -> Result<GetRuntimeStatusResult, ClientError> {
1120 match self.call(RequestBody::GetRuntimeStatus(request), options).await? {
1121 ResultBody::GetRuntimeStatus(result) => Ok(result),
1122 _ => Err(ClientError::ResponseCommandMismatch),
1123 }
1124 }
1125
1126 pub async fn get_result_cache_status(
1128 &self,
1129 request: GetResultCacheStatusRequest,
1130 options: CallOptions,
1131 ) -> Result<GetResultCacheStatusResult, ClientError> {
1132 match self.call(RequestBody::GetResultCacheStatus(request), options).await? {
1133 ResultBody::GetResultCacheStatus(result) => Ok(result),
1134 _ => Err(ClientError::ResponseCommandMismatch),
1135 }
1136 }
1137
1138 pub async fn get_field_promotion_status(
1140 &self,
1141 request: GetFieldPromotionStatusRequest,
1142 options: CallOptions,
1143 ) -> Result<GetFieldPromotionStatusResult, ClientError> {
1144 match self
1145 .call(RequestBody::GetFieldPromotionStatus(request), options)
1146 .await?
1147 {
1148 ResultBody::GetFieldPromotionStatus(result) => Ok(result),
1149 _ => Err(ClientError::ResponseCommandMismatch),
1150 }
1151 }
1152
1153 pub async fn get_overload_status(
1155 &self,
1156 request: GetOverloadStatusRequest,
1157 options: CallOptions,
1158 ) -> Result<GetOverloadStatusResult, ClientError> {
1159 match self.call(RequestBody::GetOverloadStatus(request), options).await? {
1160 ResultBody::GetOverloadStatus(result) => Ok(result),
1161 _ => Err(ClientError::ResponseCommandMismatch),
1162 }
1163 }
1164
1165 pub async fn configure_external_key(
1167 &self,
1168 request: ConfigureExternalKeyRequest,
1169 options: CallOptions,
1170 ) -> Result<ConfigureExternalKeyResult, ClientError> {
1171 match self.call(RequestBody::ConfigureExternalKey(request), options).await? {
1172 ResultBody::ConfigureExternalKey(result) => Ok(result),
1173 _ => Err(ClientError::ResponseCommandMismatch),
1174 }
1175 }
1176
1177 pub async fn rotate_external_key_binding(
1179 &self,
1180 request: RotateExternalKeyBindingRequest,
1181 options: CallOptions,
1182 ) -> Result<RotateExternalKeyBindingResult, ClientError> {
1183 match self
1184 .call(RequestBody::RotateExternalKeyBinding(request), options)
1185 .await?
1186 {
1187 ResultBody::RotateExternalKeyBinding(result) => Ok(result),
1188 _ => Err(ClientError::ResponseCommandMismatch),
1189 }
1190 }
1191
1192 pub async fn configure_aggregate_then_delete(
1194 &self,
1195 request: ConfigureAggregateThenDeleteRequest,
1196 options: CallOptions,
1197 ) -> Result<ConfigureAggregateThenDeleteResult, ClientError> {
1198 match self
1199 .call(RequestBody::ConfigureAggregateThenDelete(request), options)
1200 .await?
1201 {
1202 ResultBody::ConfigureAggregateThenDelete(result) => Ok(result),
1203 _ => Err(ClientError::ResponseCommandMismatch),
1204 }
1205 }
1206
1207 pub async fn get_lifecycle_status(
1209 &self,
1210 request: GetLifecycleStatusRequest,
1211 options: CallOptions,
1212 ) -> Result<GetLifecycleStatusResult, ClientError> {
1213 match self.call(RequestBody::GetLifecycleStatus(request), options).await? {
1214 ResultBody::GetLifecycleStatus(result) => Ok(result),
1215 _ => Err(ClientError::ResponseCommandMismatch),
1216 }
1217 }
1218
1219 pub async fn get_quota(
1221 &self,
1222 request: GetQuotaRequest,
1223 options: CallOptions,
1224 ) -> Result<GetQuotaResult, ClientError> {
1225 match self.call(RequestBody::GetQuota(request), options).await? {
1226 ResultBody::GetQuota(result) => Ok(result),
1227 _ => Err(ClientError::ResponseCommandMismatch),
1228 }
1229 }
1230
1231 pub async fn update_quota(
1233 &self,
1234 request: UpdateQuotaRequest,
1235 options: CallOptions,
1236 ) -> Result<UpdateQuotaResult, ClientError> {
1237 match self.call(RequestBody::UpdateQuota(request), options).await? {
1238 ResultBody::UpdateQuota(result) => Ok(result),
1239 _ => Err(ClientError::ResponseCommandMismatch),
1240 }
1241 }
1242
1243 pub async fn get_binding(
1245 &self,
1246 request: GetBindingRequest,
1247 options: CallOptions,
1248 ) -> Result<GetBindingResult, ClientError> {
1249 match self.call(RequestBody::GetBinding(request), options).await? {
1250 ResultBody::GetBinding(result) => Ok(result),
1251 _ => Err(ClientError::ResponseCommandMismatch),
1252 }
1253 }
1254
1255 pub async fn get_admission_status(
1257 &self,
1258 request: GetAdmissionStatusRequest,
1259 options: CallOptions,
1260 ) -> Result<GetAdmissionStatusResult, ClientError> {
1261 match self.call(RequestBody::GetAdmissionStatus(request), options).await? {
1262 ResultBody::GetAdmissionStatus(result) => Ok(result),
1263 _ => Err(ClientError::ResponseCommandMismatch),
1264 }
1265 }
1266
1267 pub async fn set_admission(
1269 &self,
1270 request: SetAdmissionRequest,
1271 options: CallOptions,
1272 ) -> Result<SetAdmissionResult, ClientError> {
1273 match self.call(RequestBody::SetAdmission(request), options).await? {
1274 ResultBody::SetAdmission(result) => Ok(result),
1275 _ => Err(ClientError::ResponseCommandMismatch),
1276 }
1277 }
1278
1279 pub async fn get_quiesce_status(
1281 &self,
1282 request: GetQuiesceStatusRequest,
1283 options: CallOptions,
1284 ) -> Result<GetQuiesceStatusResult, ClientError> {
1285 match self.call(RequestBody::GetQuiesceStatus(request), options).await? {
1286 ResultBody::GetQuiesceStatus(result) => Ok(result),
1287 _ => Err(ClientError::ResponseCommandMismatch),
1288 }
1289 }
1290
1291 pub async fn get_decommission_readiness(
1293 &self,
1294 request: GetDecommissionReadinessRequest,
1295 options: CallOptions,
1296 ) -> Result<GetDecommissionReadinessResult, ClientError> {
1297 match self
1298 .call(RequestBody::GetDecommissionReadiness(request), options)
1299 .await?
1300 {
1301 ResultBody::GetDecommissionReadiness(result) => Ok(result),
1302 _ => Err(ClientError::ResponseCommandMismatch),
1303 }
1304 }
1305
1306 pub async fn get_upgrade_readiness(
1308 &self,
1309 request: GetUpgradeReadinessRequest,
1310 options: CallOptions,
1311 ) -> Result<GetUpgradeReadinessResult, ClientError> {
1312 match self.call(RequestBody::GetUpgradeReadiness(request), options).await? {
1313 ResultBody::GetUpgradeReadiness(result) => Ok(result),
1314 _ => Err(ClientError::ResponseCommandMismatch),
1315 }
1316 }
1317
1318 pub async fn get_maintenance_status(
1320 &self,
1321 request: GetMaintenanceStatusRequest,
1322 options: CallOptions,
1323 ) -> Result<GetMaintenanceStatusResult, ClientError> {
1324 match self.call(RequestBody::GetMaintenanceStatus(request), options).await? {
1325 ResultBody::GetMaintenanceStatus(result) => Ok(result),
1326 _ => Err(ClientError::ResponseCommandMismatch),
1327 }
1328 }
1329
1330 pub async fn get_restore_readiness(
1332 &self,
1333 request: GetRestoreReadinessRequest,
1334 options: CallOptions,
1335 ) -> Result<GetRestoreReadinessResult, ClientError> {
1336 match self.call(RequestBody::GetRestoreReadiness(request), options).await? {
1337 ResultBody::GetRestoreReadiness(result) => Ok(result),
1338 _ => Err(ClientError::ResponseCommandMismatch),
1339 }
1340 }
1341
1342 pub async fn warm_vector_index(
1344 &self,
1345 request: WarmVectorIndexRequest,
1346 options: CallOptions,
1347 ) -> Result<WarmVectorIndexResult, ClientError> {
1348 match self.call(RequestBody::WarmVectorIndex(request), options).await? {
1349 ResultBody::WarmVectorIndex(result) => Ok(result),
1350 _ => Err(ClientError::ResponseCommandMismatch),
1351 }
1352 }
1353
1354 pub async fn evaluate_vector_recall(
1356 &self,
1357 request: EvaluateVectorRecallRequest,
1358 options: CallOptions,
1359 ) -> Result<EvaluateVectorRecallResult, ClientError> {
1360 match self.call(RequestBody::EvaluateVectorRecall(request), options).await? {
1361 ResultBody::EvaluateVectorRecall(result) => Ok(result),
1362 _ => Err(ClientError::ResponseCommandMismatch),
1363 }
1364 }
1365
1366 pub async fn calibrate_vector_strategy(
1368 &self,
1369 request: CalibrateVectorStrategyRequest,
1370 options: CallOptions,
1371 ) -> Result<CalibrateVectorStrategyResult, ClientError> {
1372 match self
1373 .call(RequestBody::CalibrateVectorStrategy(request), options)
1374 .await?
1375 {
1376 ResultBody::CalibrateVectorStrategy(result) => Ok(result),
1377 _ => Err(ClientError::ResponseCommandMismatch),
1378 }
1379 }
1380
1381 pub async fn get_vector_diagnostic(
1383 &self,
1384 request: GetVectorDiagnosticRequest,
1385 options: CallOptions,
1386 ) -> Result<GetVectorDiagnosticResult, ClientError> {
1387 match self.call(RequestBody::GetVectorDiagnostic(request), options).await? {
1388 ResultBody::GetVectorDiagnostic(result) => Ok(result),
1389 _ => Err(ClientError::ResponseCommandMismatch),
1390 }
1391 }
1392
1393 pub async fn create_diagnostic(
1395 &self,
1396 request: CreateDiagnosticRequest,
1397 options: CallOptions,
1398 ) -> Result<CreateDiagnosticResult, ClientError> {
1399 match self.call(RequestBody::CreateDiagnostic(request), options).await? {
1400 ResultBody::CreateDiagnostic(result) => Ok(result),
1401 _ => Err(ClientError::ResponseCommandMismatch),
1402 }
1403 }
1404
1405 pub async fn get_diagnostic(
1407 &self,
1408 request: GetDiagnosticRequest,
1409 options: CallOptions,
1410 ) -> Result<GetDiagnosticResult, ClientError> {
1411 match self.call(RequestBody::GetDiagnostic(request), options).await? {
1412 ResultBody::GetDiagnostic(result) => Ok(result),
1413 _ => Err(ClientError::ResponseCommandMismatch),
1414 }
1415 }
1416
1417 pub async fn read_artifact_chunk(
1419 &self,
1420 request: ReadArtifactChunkRequest,
1421 options: CallOptions,
1422 ) -> Result<ReadArtifactChunkResult, ClientError> {
1423 match self.call(RequestBody::ReadArtifactChunk(request), options).await? {
1424 ResultBody::ReadArtifactChunk(result) => Ok(result),
1425 _ => Err(ClientError::ResponseCommandMismatch),
1426 }
1427 }
1428
1429 pub async fn export_usage(
1431 &self,
1432 request: ExportUsageRequest,
1433 options: CallOptions,
1434 ) -> Result<ExportUsageResult, ClientError> {
1435 match self.call(RequestBody::ExportUsage(request), options).await? {
1436 ResultBody::ExportUsage(result) => Ok(result),
1437 _ => Err(ClientError::ResponseCommandMismatch),
1438 }
1439 }
1440
1441 pub async fn execute_state_read(
1443 &self,
1444 request: ExecuteStateReadRequest,
1445 options: CallOptions,
1446 ) -> Result<ExecuteStateReadResult, ClientError> {
1447 match self.call(RequestBody::ExecuteStateRead(request), options).await? {
1448 ResultBody::ExecuteStateRead(result) => Ok(result),
1449 _ => Err(ClientError::ResponseCommandMismatch),
1450 }
1451 }
1452
1453 pub async fn prepare_state_write(
1455 &self,
1456 request: PrepareStateWriteRequest,
1457 options: CallOptions,
1458 ) -> Result<PrepareStateWriteResult, ClientError> {
1459 match self.call(RequestBody::PrepareStateWrite(request), options).await? {
1460 ResultBody::PrepareStateWrite(result) => Ok(result),
1461 _ => Err(ClientError::ResponseCommandMismatch),
1462 }
1463 }
1464
1465 pub async fn submit_state_write(
1467 &self,
1468 request: SubmitStateWriteRequest,
1469 options: CallOptions,
1470 ) -> Result<SubmitStateWriteResult, ClientError> {
1471 match self.call(RequestBody::SubmitStateWrite(request), options).await? {
1472 ResultBody::SubmitStateWrite(result) => Ok(result),
1473 _ => Err(ClientError::ResponseCommandMismatch),
1474 }
1475 }
1476
1477 pub async fn resolve_state_write(
1479 &self,
1480 request: ResolveStateWriteRequest,
1481 options: CallOptions,
1482 ) -> Result<ResolveStateWriteResult, ClientError> {
1483 match self.call(RequestBody::ResolveStateWrite(request), options).await? {
1484 ResultBody::ResolveStateWrite(result) => Ok(result),
1485 _ => Err(ClientError::ResponseCommandMismatch),
1486 }
1487 }
1488}