Database

Struct Database 

Source
#[non_exhaustive]
pub struct Database {
Show 21 fields pub name: String, pub uid: String, pub create_time: Option<Timestamp>, pub update_time: Option<Timestamp>, pub delete_time: Option<Timestamp>, pub location_id: String, pub type: DatabaseType, pub concurrency_mode: ConcurrencyMode, pub version_retention_period: Option<Duration>, pub earliest_version_time: Option<Timestamp>, pub point_in_time_recovery_enablement: PointInTimeRecoveryEnablement, pub app_engine_integration_mode: AppEngineIntegrationMode, pub key_prefix: String, pub delete_protection_state: DeleteProtectionState, pub cmek_config: Option<CmekConfig>, pub previous_id: String, pub source_info: Option<SourceInfo>, pub tags: HashMap<String, String>, pub free_tier: Option<bool>, pub etag: String, pub database_edition: DatabaseEdition, /* private fields */
}
Expand description

A Cloud Firestore Database.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§name: String

The resource name of the Database. Format: projects/{project}/databases/{database}

§uid: String

Output only. The system-generated UUID4 for this Database.

§create_time: Option<Timestamp>

Output only. The timestamp at which this database was created. Databases created before 2016 do not populate create_time.

§update_time: Option<Timestamp>

Output only. The timestamp at which this database was most recently updated. Note this only includes updates to the database resource and not data contained by the database.

§delete_time: Option<Timestamp>

Output only. The timestamp at which this database was deleted. Only set if the database has been deleted.

§location_id: String

The location of the database. Available locations are listed at https://cloud.google.com/firestore/docs/locations.

§type: DatabaseType

The type of the database. See https://cloud.google.com/datastore/docs/firestore-or-datastore for information about how to choose.

§concurrency_mode: ConcurrencyMode

The concurrency control mode to use for this database.

§version_retention_period: Option<Duration>

Output only. The period during which past versions of data are retained in the database.

Any [read][google.firestore.v1.GetDocumentRequest.read_time] or [query][google.firestore.v1.ListDocumentsRequest.read_time] can specify a read_time within this window, and will read the state of the database at that time.

If the PITR feature is enabled, the retention period is 7 days. Otherwise, the retention period is 1 hour.

§earliest_version_time: Option<Timestamp>

Output only. The earliest timestamp at which older versions of the data can be read from the database. See [version_retention_period] above; this field is populated with now - version_retention_period.

This value is continuously updated, and becomes stale the moment it is queried. If you are using this value to recover data, make sure to account for the time from the moment when the value is queried to the moment when you initiate the recovery.

§point_in_time_recovery_enablement: PointInTimeRecoveryEnablement

Whether to enable the PITR feature on this database.

§app_engine_integration_mode: AppEngineIntegrationMode

The App Engine integration mode to use for this database.

§key_prefix: String

Output only. The key_prefix for this database. This key_prefix is used, in combination with the project ID (“<key prefix>~<project id>”) to construct the application ID that is returned from the Cloud Datastore APIs in Google App Engine first generation runtimes.

This value may be empty in which case the appid to use for URL-encoded keys is the project_id (eg: foo instead of v~foo).

§delete_protection_state: DeleteProtectionState

State of delete protection for the database.

§cmek_config: Option<CmekConfig>

Optional. Presence indicates CMEK is enabled for this database.

§previous_id: String

Output only. The database resource’s prior database ID. This field is only populated for deleted databases.

§source_info: Option<SourceInfo>

Output only. Information about the provenance of this database.

§tags: HashMap<String, String>

Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: “123/environment”: “production”, “123/costCenter”: “marketing”

§free_tier: Option<bool>

Output only. Background: Free tier is the ability of a Firestore database to use a small amount of resources every day without being charged. Once usage exceeds the free tier limit further usage is charged.

Whether this database can make use of the free tier. Only one database per project can be eligible for the free tier.

The first (or next) database that is created in a project without a free tier database will be marked as eligible for the free tier. Databases that are created while there is a free tier database will not be eligible for the free tier.

§etag: String

This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.

§database_edition: DatabaseEdition

Immutable. The edition of the database.

Implementations§

Source§

impl Database

Source

pub fn new() -> Self

Source

pub fn set_name<T: Into<String>>(self, v: T) -> Self

Sets the value of name.

§Example
let x = Database::new().set_name("example");
Source

pub fn set_uid<T: Into<String>>(self, v: T) -> Self

Sets the value of uid.

§Example
let x = Database::new().set_uid("example");
Source

pub fn set_create_time<T>(self, v: T) -> Self
where T: Into<Timestamp>,

Sets the value of create_time.

§Example
use wkt::Timestamp;
let x = Database::new().set_create_time(Timestamp::default()/* use setters */);
Source

pub fn set_or_clear_create_time<T>(self, v: Option<T>) -> Self
where T: Into<Timestamp>,

Sets or clears the value of create_time.

§Example
use wkt::Timestamp;
let x = Database::new().set_or_clear_create_time(Some(Timestamp::default()/* use setters */));
let x = Database::new().set_or_clear_create_time(None::<Timestamp>);
Source

pub fn set_update_time<T>(self, v: T) -> Self
where T: Into<Timestamp>,

Sets the value of update_time.

§Example
use wkt::Timestamp;
let x = Database::new().set_update_time(Timestamp::default()/* use setters */);
Source

pub fn set_or_clear_update_time<T>(self, v: Option<T>) -> Self
where T: Into<Timestamp>,

Sets or clears the value of update_time.

§Example
use wkt::Timestamp;
let x = Database::new().set_or_clear_update_time(Some(Timestamp::default()/* use setters */));
let x = Database::new().set_or_clear_update_time(None::<Timestamp>);
Source

pub fn set_delete_time<T>(self, v: T) -> Self
where T: Into<Timestamp>,

Sets the value of delete_time.

§Example
use wkt::Timestamp;
let x = Database::new().set_delete_time(Timestamp::default()/* use setters */);
Source

pub fn set_or_clear_delete_time<T>(self, v: Option<T>) -> Self
where T: Into<Timestamp>,

Sets or clears the value of delete_time.

§Example
use wkt::Timestamp;
let x = Database::new().set_or_clear_delete_time(Some(Timestamp::default()/* use setters */));
let x = Database::new().set_or_clear_delete_time(None::<Timestamp>);
Source

pub fn set_location_id<T: Into<String>>(self, v: T) -> Self

Sets the value of location_id.

§Example
let x = Database::new().set_location_id("example");
Source

pub fn set_type<T: Into<DatabaseType>>(self, v: T) -> Self

Sets the value of r#type.

§Example
use google_cloud_firestore_admin_v1::model::database::DatabaseType;
let x0 = Database::new().set_type(DatabaseType::FirestoreNative);
let x1 = Database::new().set_type(DatabaseType::DatastoreMode);
Source

pub fn set_concurrency_mode<T: Into<ConcurrencyMode>>(self, v: T) -> Self

Sets the value of concurrency_mode.

§Example
use google_cloud_firestore_admin_v1::model::database::ConcurrencyMode;
let x0 = Database::new().set_concurrency_mode(ConcurrencyMode::Optimistic);
let x1 = Database::new().set_concurrency_mode(ConcurrencyMode::Pessimistic);
let x2 = Database::new().set_concurrency_mode(ConcurrencyMode::OptimisticWithEntityGroups);
Source

pub fn set_version_retention_period<T>(self, v: T) -> Self
where T: Into<Duration>,

Sets the value of version_retention_period.

§Example
use wkt::Duration;
let x = Database::new().set_version_retention_period(Duration::default()/* use setters */);
Source

pub fn set_or_clear_version_retention_period<T>(self, v: Option<T>) -> Self
where T: Into<Duration>,

Sets or clears the value of version_retention_period.

§Example
use wkt::Duration;
let x = Database::new().set_or_clear_version_retention_period(Some(Duration::default()/* use setters */));
let x = Database::new().set_or_clear_version_retention_period(None::<Duration>);
Source

pub fn set_earliest_version_time<T>(self, v: T) -> Self
where T: Into<Timestamp>,

Sets the value of earliest_version_time.

§Example
use wkt::Timestamp;
let x = Database::new().set_earliest_version_time(Timestamp::default()/* use setters */);
Source

pub fn set_or_clear_earliest_version_time<T>(self, v: Option<T>) -> Self
where T: Into<Timestamp>,

Sets or clears the value of earliest_version_time.

§Example
use wkt::Timestamp;
let x = Database::new().set_or_clear_earliest_version_time(Some(Timestamp::default()/* use setters */));
let x = Database::new().set_or_clear_earliest_version_time(None::<Timestamp>);
Source

pub fn set_point_in_time_recovery_enablement<T: Into<PointInTimeRecoveryEnablement>>( self, v: T, ) -> Self

Sets the value of point_in_time_recovery_enablement.

§Example
use google_cloud_firestore_admin_v1::model::database::PointInTimeRecoveryEnablement;
let x0 = Database::new().set_point_in_time_recovery_enablement(PointInTimeRecoveryEnablement::PointInTimeRecoveryEnabled);
let x1 = Database::new().set_point_in_time_recovery_enablement(PointInTimeRecoveryEnablement::PointInTimeRecoveryDisabled);
Source

pub fn set_app_engine_integration_mode<T: Into<AppEngineIntegrationMode>>( self, v: T, ) -> Self

Sets the value of app_engine_integration_mode.

§Example
use google_cloud_firestore_admin_v1::model::database::AppEngineIntegrationMode;
let x0 = Database::new().set_app_engine_integration_mode(AppEngineIntegrationMode::Enabled);
let x1 = Database::new().set_app_engine_integration_mode(AppEngineIntegrationMode::Disabled);
Source

pub fn set_key_prefix<T: Into<String>>(self, v: T) -> Self

Sets the value of key_prefix.

§Example
let x = Database::new().set_key_prefix("example");
Source

pub fn set_delete_protection_state<T: Into<DeleteProtectionState>>( self, v: T, ) -> Self

Sets the value of delete_protection_state.

§Example
use google_cloud_firestore_admin_v1::model::database::DeleteProtectionState;
let x0 = Database::new().set_delete_protection_state(DeleteProtectionState::DeleteProtectionDisabled);
let x1 = Database::new().set_delete_protection_state(DeleteProtectionState::DeleteProtectionEnabled);
Source

pub fn set_cmek_config<T>(self, v: T) -> Self
where T: Into<CmekConfig>,

Sets the value of cmek_config.

§Example
use google_cloud_firestore_admin_v1::model::database::CmekConfig;
let x = Database::new().set_cmek_config(CmekConfig::default()/* use setters */);
Source

pub fn set_or_clear_cmek_config<T>(self, v: Option<T>) -> Self
where T: Into<CmekConfig>,

Sets or clears the value of cmek_config.

§Example
use google_cloud_firestore_admin_v1::model::database::CmekConfig;
let x = Database::new().set_or_clear_cmek_config(Some(CmekConfig::default()/* use setters */));
let x = Database::new().set_or_clear_cmek_config(None::<CmekConfig>);
Source

pub fn set_previous_id<T: Into<String>>(self, v: T) -> Self

Sets the value of previous_id.

§Example
let x = Database::new().set_previous_id("example");
Source

pub fn set_source_info<T>(self, v: T) -> Self
where T: Into<SourceInfo>,

Sets the value of source_info.

§Example
use google_cloud_firestore_admin_v1::model::database::SourceInfo;
let x = Database::new().set_source_info(SourceInfo::default()/* use setters */);
Source

pub fn set_or_clear_source_info<T>(self, v: Option<T>) -> Self
where T: Into<SourceInfo>,

Sets or clears the value of source_info.

§Example
use google_cloud_firestore_admin_v1::model::database::SourceInfo;
let x = Database::new().set_or_clear_source_info(Some(SourceInfo::default()/* use setters */));
let x = Database::new().set_or_clear_source_info(None::<SourceInfo>);
Source

pub fn set_tags<T, K, V>(self, v: T) -> Self
where T: IntoIterator<Item = (K, V)>, K: Into<String>, V: Into<String>,

Sets the value of tags.

§Example
let x = Database::new().set_tags([
    ("key0", "abc"),
    ("key1", "xyz"),
]);
Source

pub fn set_free_tier<T>(self, v: T) -> Self
where T: Into<bool>,

Sets the value of free_tier.

§Example
let x = Database::new().set_free_tier(true);
Source

pub fn set_or_clear_free_tier<T>(self, v: Option<T>) -> Self
where T: Into<bool>,

Sets or clears the value of free_tier.

§Example
let x = Database::new().set_or_clear_free_tier(Some(false));
let x = Database::new().set_or_clear_free_tier(None::<bool>);
Source

pub fn set_etag<T: Into<String>>(self, v: T) -> Self

Sets the value of etag.

§Example
let x = Database::new().set_etag("example");
Source

pub fn set_database_edition<T: Into<DatabaseEdition>>(self, v: T) -> Self

Sets the value of database_edition.

§Example
use google_cloud_firestore_admin_v1::model::database::DatabaseEdition;
let x0 = Database::new().set_database_edition(DatabaseEdition::Standard);
let x1 = Database::new().set_database_edition(DatabaseEdition::Enterprise);

Trait Implementations§

Source§

impl Clone for Database

Source§

fn clone(&self) -> Database

Returns a duplicate 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 Debug for Database

Source§

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

Formats the value using the given formatter. Read more
Source§

impl Default for Database

Source§

fn default() -> Database

Returns the “default value” for a type. Read more
Source§

impl Message for Database

Source§

fn typename() -> &'static str

The typename of this message.
Source§

impl PartialEq for Database

Source§

fn eq(&self, other: &Database) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for Database

Auto Trait Implementations§

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

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

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

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> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

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

Source§

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>,

Source§

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>,

Source§

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.
Source§

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

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

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
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

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

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,