google_cloud_datastore_admin_v1/
stubs.rs

1// Copyright 2025 Google LLC
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     https://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14//
15// Code generated by sidekick. DO NOT EDIT.
16
17//! Traits to mock the clients in this library.
18//!
19//! Application developers may need to mock the clients in this library to test
20//! how their application works with different (and sometimes hard to trigger)
21//! client and service behavior. Such test can define mocks implementing the
22//! trait(s) defined in this module, initialize the client with an instance of
23//! this mock in their tests, and verify their application responds as expected.
24
25#![allow(rustdoc::broken_intra_doc_links)]
26
27use gax::error::Error;
28use std::sync::Arc;
29
30pub(crate) mod dynamic;
31
32/// Defines the trait used to implement [crate::client::DatastoreAdmin].
33///
34/// Application developers may need to implement this trait to mock
35/// `client::DatastoreAdmin`.  In other use-cases, application developers only
36/// use `client::DatastoreAdmin` and need not be concerned with this trait or
37/// its implementations.
38///
39/// Services gain new RPCs routinely. Consequently, this trait gains new methods
40/// too. To avoid breaking applications the trait provides a default
41/// implementation of each method. Most of these implementations just return an
42/// error.
43pub trait DatastoreAdmin: std::fmt::Debug + Send + Sync {
44    /// Implements [crate::client::DatastoreAdmin::export_entities].
45    fn export_entities(
46        &self,
47        _req: crate::model::ExportEntitiesRequest,
48        _options: gax::options::RequestOptions,
49    ) -> impl std::future::Future<Output = crate::Result<longrunning::model::Operation>> + Send
50    {
51        std::future::ready::<crate::Result<longrunning::model::Operation>>(Err(Error::other(
52            "unimplemented",
53        )))
54    }
55
56    /// Implements [crate::client::DatastoreAdmin::import_entities].
57    fn import_entities(
58        &self,
59        _req: crate::model::ImportEntitiesRequest,
60        _options: gax::options::RequestOptions,
61    ) -> impl std::future::Future<Output = crate::Result<longrunning::model::Operation>> + Send
62    {
63        std::future::ready::<crate::Result<longrunning::model::Operation>>(Err(Error::other(
64            "unimplemented",
65        )))
66    }
67
68    /// Implements [crate::client::DatastoreAdmin::create_index].
69    fn create_index(
70        &self,
71        _req: crate::model::CreateIndexRequest,
72        _options: gax::options::RequestOptions,
73    ) -> impl std::future::Future<Output = crate::Result<longrunning::model::Operation>> + Send
74    {
75        std::future::ready::<crate::Result<longrunning::model::Operation>>(Err(Error::other(
76            "unimplemented",
77        )))
78    }
79
80    /// Implements [crate::client::DatastoreAdmin::delete_index].
81    fn delete_index(
82        &self,
83        _req: crate::model::DeleteIndexRequest,
84        _options: gax::options::RequestOptions,
85    ) -> impl std::future::Future<Output = crate::Result<longrunning::model::Operation>> + Send
86    {
87        std::future::ready::<crate::Result<longrunning::model::Operation>>(Err(Error::other(
88            "unimplemented",
89        )))
90    }
91
92    /// Implements [crate::client::DatastoreAdmin::get_index].
93    fn get_index(
94        &self,
95        _req: crate::model::GetIndexRequest,
96        _options: gax::options::RequestOptions,
97    ) -> impl std::future::Future<Output = crate::Result<crate::model::Index>> + Send {
98        std::future::ready::<crate::Result<crate::model::Index>>(Err(Error::other("unimplemented")))
99    }
100
101    /// Implements [crate::client::DatastoreAdmin::list_indexes].
102    fn list_indexes(
103        &self,
104        _req: crate::model::ListIndexesRequest,
105        _options: gax::options::RequestOptions,
106    ) -> impl std::future::Future<Output = crate::Result<crate::model::ListIndexesResponse>> + Send
107    {
108        std::future::ready::<crate::Result<crate::model::ListIndexesResponse>>(Err(Error::other(
109            "unimplemented",
110        )))
111    }
112
113    /// Implements [crate::client::DatastoreAdmin::list_operations].
114    fn list_operations(
115        &self,
116        _req: longrunning::model::ListOperationsRequest,
117        _options: gax::options::RequestOptions,
118    ) -> impl std::future::Future<Output = crate::Result<longrunning::model::ListOperationsResponse>>
119           + Send {
120        std::future::ready::<crate::Result<longrunning::model::ListOperationsResponse>>(Err(
121            Error::other("unimplemented"),
122        ))
123    }
124
125    /// Implements [crate::client::DatastoreAdmin::get_operation].
126    fn get_operation(
127        &self,
128        _req: longrunning::model::GetOperationRequest,
129        _options: gax::options::RequestOptions,
130    ) -> impl std::future::Future<Output = crate::Result<longrunning::model::Operation>> + Send
131    {
132        std::future::ready::<crate::Result<longrunning::model::Operation>>(Err(Error::other(
133            "unimplemented",
134        )))
135    }
136
137    /// Implements [crate::client::DatastoreAdmin::delete_operation].
138    fn delete_operation(
139        &self,
140        _req: longrunning::model::DeleteOperationRequest,
141        _options: gax::options::RequestOptions,
142    ) -> impl std::future::Future<Output = crate::Result<wkt::Empty>> + Send {
143        std::future::ready::<crate::Result<wkt::Empty>>(Err(Error::other("unimplemented")))
144    }
145
146    /// Implements [crate::client::DatastoreAdmin::cancel_operation].
147    fn cancel_operation(
148        &self,
149        _req: longrunning::model::CancelOperationRequest,
150        _options: gax::options::RequestOptions,
151    ) -> impl std::future::Future<Output = crate::Result<wkt::Empty>> + Send {
152        std::future::ready::<crate::Result<wkt::Empty>>(Err(Error::other("unimplemented")))
153    }
154
155    /// Returns the polling policy.
156    ///
157    /// When mocking, this method is typically irrelevant. Do not try to verify
158    /// it is called by your mocks.
159    fn get_polling_policy(
160        &self,
161        _options: &gax::options::RequestOptions,
162    ) -> Arc<dyn gax::polling_policy::PollingPolicy> {
163        Arc::new(gax::polling_policy::Aip194Strict)
164    }
165
166    /// Returns the polling backoff policy.
167    ///
168    /// When mocking, this method is typically irrelevant. Do not try to verify
169    /// it is called by your mocks.
170    fn get_polling_backoff_policy(
171        &self,
172        _options: &gax::options::RequestOptions,
173    ) -> Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
174        Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
175    }
176}