pub struct FirestoreAdminClient<T> { /* private fields */ }
Expand description

The Cloud Firestore Admin API.

This API provides several administrative services for Cloud Firestore.

Project, Database, Namespace, Collection, Collection Group, and Document are used as defined in the Google Cloud Firestore API.

Operation: An Operation represents work being performed in the background.

The index service manages Cloud Firestore indexes.

Index creation is performed asynchronously. An Operation resource is created for each such asynchronous operation. The state of the operation (including any errors encountered) may be queried via the Operation resource.

The Operations collection provides a record of actions performed for the specified Project (including any Operations in progress). Operations are not created directly but through calls on other collections or resources.

An Operation that is done may be deleted so that it is no longer listed as part of the Operation collection. Operations are garbage collected after 30 days. By default, ListOperations will only return in progress and failed operations. To list completed operation, issue a ListOperations request with the filter done: true.

Operations are created by service FirestoreAdmin, but are accessed via service google.longrunning.Operations.

Implementations§

source§

impl<T> FirestoreAdminClient<T>
where T: GrpcService<BoxBody>, T::Error: Into<StdError>, T::ResponseBody: Body<Data = Bytes> + Send + 'static, <T::ResponseBody as Body>::Error: Into<StdError> + Send,

source

pub fn new(inner: T) -> Self

source

pub fn with_origin(inner: T, origin: Uri) -> Self

source

pub fn with_interceptor<F>( inner: T, interceptor: F ) -> FirestoreAdminClient<InterceptedService<T, F>>
where F: Interceptor, T::ResponseBody: Default, T: Service<Request<BoxBody>, Response = Response<<T as GrpcService<BoxBody>>::ResponseBody>>, <T as Service<Request<BoxBody>>>::Error: Into<StdError> + Send + Sync,

source

pub fn send_compressed(self, encoding: CompressionEncoding) -> Self

Compress requests with the given encoding.

This requires the server to support it otherwise it might respond with an error.

source

pub fn accept_compressed(self, encoding: CompressionEncoding) -> Self

Enable decompressing responses.

source

pub fn max_decoding_message_size(self, limit: usize) -> Self

Limits the maximum size of a decoded message.

Default: 4MB

source

pub fn max_encoding_message_size(self, limit: usize) -> Self

Limits the maximum size of an encoded message.

Default: usize::MAX

source

pub async fn create_index( &mut self, request: impl IntoRequest<CreateIndexRequest> ) -> Result<Response<Operation>, Status>

Creates a composite index. This returns a [google.longrunning.Operation][google.longrunning.Operation] which may be used to track the status of the creation. The metadata for the operation will be the type [IndexOperationMetadata][google.firestore.admin.v1.IndexOperationMetadata].

source

pub async fn list_indexes( &mut self, request: impl IntoRequest<ListIndexesRequest> ) -> Result<Response<ListIndexesResponse>, Status>

Lists composite indexes.

source

pub async fn get_index( &mut self, request: impl IntoRequest<GetIndexRequest> ) -> Result<Response<Index>, Status>

Gets a composite index.

source

pub async fn delete_index( &mut self, request: impl IntoRequest<DeleteIndexRequest> ) -> Result<Response<()>, Status>

Deletes a composite index.

source

pub async fn get_field( &mut self, request: impl IntoRequest<GetFieldRequest> ) -> Result<Response<Field>, Status>

Gets the metadata and configuration for a Field.

source

pub async fn update_field( &mut self, request: impl IntoRequest<UpdateFieldRequest> ) -> Result<Response<Operation>, Status>

Updates a field configuration. Currently, field updates apply only to single field index configuration. However, calls to [FirestoreAdmin.UpdateField][google.firestore.admin.v1.FirestoreAdmin.UpdateField] should provide a field mask to avoid changing any configuration that the caller isn’t aware of. The field mask should be specified as: { paths: "index_config" }.

This call returns a [google.longrunning.Operation][google.longrunning.Operation] which may be used to track the status of the field update. The metadata for the operation will be the type [FieldOperationMetadata][google.firestore.admin.v1.FieldOperationMetadata].

To configure the default field settings for the database, use the special Field with resource name: projects/{project_id}/databases/{database_id}/collectionGroups/__default__/fields/*.

source

pub async fn list_fields( &mut self, request: impl IntoRequest<ListFieldsRequest> ) -> Result<Response<ListFieldsResponse>, Status>

Lists the field configuration and metadata for this database.

Currently, [FirestoreAdmin.ListFields][google.firestore.admin.v1.FirestoreAdmin.ListFields] only supports listing fields that have been explicitly overridden. To issue this query, call [FirestoreAdmin.ListFields][google.firestore.admin.v1.FirestoreAdmin.ListFields] with the filter set to indexConfig.usesAncestorConfig:false or ttlConfig:*.

source

pub async fn export_documents( &mut self, request: impl IntoRequest<ExportDocumentsRequest> ) -> Result<Response<Operation>, Status>

Exports a copy of all or a subset of documents from Google Cloud Firestore to another storage system, such as Google Cloud Storage. Recent updates to documents may not be reflected in the export. The export occurs in the background and its progress can be monitored and managed via the Operation resource that is created. The output of an export may only be used once the associated operation is done. If an export operation is cancelled before completion it may leave partial data behind in Google Cloud Storage.

For more details on export behavior and output format, refer to: https://cloud.google.com/firestore/docs/manage-data/export-import

source

pub async fn import_documents( &mut self, request: impl IntoRequest<ImportDocumentsRequest> ) -> Result<Response<Operation>, Status>

Imports documents into Google Cloud Firestore. Existing documents with the same name are overwritten. The import occurs in the background and its progress can be monitored and managed via the Operation resource that is created. If an ImportDocuments operation is cancelled, it is possible that a subset of the data has already been imported to Cloud Firestore.

source

pub async fn create_database( &mut self, request: impl IntoRequest<CreateDatabaseRequest> ) -> Result<Response<Operation>, Status>

Create a database.

source

pub async fn get_database( &mut self, request: impl IntoRequest<GetDatabaseRequest> ) -> Result<Response<Database>, Status>

Gets information about a database.

source

pub async fn list_databases( &mut self, request: impl IntoRequest<ListDatabasesRequest> ) -> Result<Response<ListDatabasesResponse>, Status>

List all the databases in the project.

source

pub async fn update_database( &mut self, request: impl IntoRequest<UpdateDatabaseRequest> ) -> Result<Response<Operation>, Status>

Updates a database.

source

pub async fn delete_database( &mut self, request: impl IntoRequest<DeleteDatabaseRequest> ) -> Result<Response<Operation>, Status>

Deletes a database.

source

pub async fn get_backup( &mut self, request: impl IntoRequest<GetBackupRequest> ) -> Result<Response<Backup>, Status>

Gets information about a backup.

source

pub async fn list_backups( &mut self, request: impl IntoRequest<ListBackupsRequest> ) -> Result<Response<ListBackupsResponse>, Status>

Lists all the backups.

source

pub async fn delete_backup( &mut self, request: impl IntoRequest<DeleteBackupRequest> ) -> Result<Response<()>, Status>

Deletes a backup.

source

pub async fn restore_database( &mut self, request: impl IntoRequest<RestoreDatabaseRequest> ) -> Result<Response<Operation>, Status>

Creates a new database by restoring from an existing backup.

The new database must be in the same cloud region or multi-region location as the existing backup. This behaves similar to [FirestoreAdmin.CreateDatabase][google.firestore.admin.v1.CreateDatabase] except instead of creating a new empty database, a new database is created with the database type, index configuration, and documents from an existing backup.

The [long-running operation][google.longrunning.Operation] can be used to track the progress of the restore, with the Operation’s [metadata][google.longrunning.Operation.metadata] field type being the [RestoreDatabaseMetadata][google.firestore.admin.v1.RestoreDatabaseMetadata]. The [response][google.longrunning.Operation.response] type is the [Database][google.firestore.admin.v1.Database] if the restore was successful. The new database is not readable or writeable until the LRO has completed.

source

pub async fn create_backup_schedule( &mut self, request: impl IntoRequest<CreateBackupScheduleRequest> ) -> Result<Response<BackupSchedule>, Status>

Creates a backup schedule on a database. At most two backup schedules can be configured on a database, one daily backup schedule and one weekly backup schedule.

source

pub async fn get_backup_schedule( &mut self, request: impl IntoRequest<GetBackupScheduleRequest> ) -> Result<Response<BackupSchedule>, Status>

Gets information about a backup schedule.

source

pub async fn list_backup_schedules( &mut self, request: impl IntoRequest<ListBackupSchedulesRequest> ) -> Result<Response<ListBackupSchedulesResponse>, Status>

List backup schedules.

source

pub async fn update_backup_schedule( &mut self, request: impl IntoRequest<UpdateBackupScheduleRequest> ) -> Result<Response<BackupSchedule>, Status>

Updates a backup schedule.

source

pub async fn delete_backup_schedule( &mut self, request: impl IntoRequest<DeleteBackupScheduleRequest> ) -> Result<Response<()>, Status>

Deletes a backup schedule.

Trait Implementations§

source§

impl<T: Clone> Clone for FirestoreAdminClient<T>

source§

fn clone(&self) -> FirestoreAdminClient<T>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<T: Debug> Debug for FirestoreAdminClient<T>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<T> !Freeze for FirestoreAdminClient<T>

§

impl<T> RefUnwindSafe for FirestoreAdminClient<T>
where T: RefUnwindSafe,

§

impl<T> Send for FirestoreAdminClient<T>
where T: Send,

§

impl<T> Sync for FirestoreAdminClient<T>
where T: Sync,

§

impl<T> Unpin for FirestoreAdminClient<T>
where T: Unpin,

§

impl<T> UnwindSafe for FirestoreAdminClient<T>
where T: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> FromRef<T> for T
where T: Clone,

§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoRequest<T> for T

source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more