#[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
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.name: StringThe resource name of the Database.
Format: projects/{project}/databases/{database}
uid: StringOutput 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: StringThe location of the database. Available locations are listed at https://cloud.google.com/firestore/docs/locations.
type: DatabaseTypeThe type of the database. See https://cloud.google.com/datastore/docs/firestore-or-datastore for information about how to choose.
concurrency_mode: ConcurrencyModeThe 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: PointInTimeRecoveryEnablementWhether to enable the PITR feature on this database.
app_engine_integration_mode: AppEngineIntegrationModeThe App Engine integration mode to use for this database.
key_prefix: StringOutput 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: DeleteProtectionStateState of delete protection for the database.
cmek_config: Option<CmekConfig>Optional. Presence indicates CMEK is enabled for this database.
previous_id: StringOutput 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.
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: StringThis 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: DatabaseEditionImmutable. The edition of the database.
Implementations§
Source§impl Database
impl Database
pub fn new() -> Self
Sourcepub fn set_create_time<T>(self, v: T) -> Self
pub fn set_create_time<T>(self, v: T) -> Self
Sets the value of create_time.
§Example
use wkt::Timestamp;
let x = Database::new().set_create_time(Timestamp::default()/* use setters */);Sourcepub fn set_or_clear_create_time<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_create_time<T>(self, v: Option<T>) -> Self
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>);Sourcepub fn set_update_time<T>(self, v: T) -> Self
pub fn set_update_time<T>(self, v: T) -> Self
Sets the value of update_time.
§Example
use wkt::Timestamp;
let x = Database::new().set_update_time(Timestamp::default()/* use setters */);Sourcepub fn set_or_clear_update_time<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_update_time<T>(self, v: Option<T>) -> Self
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>);Sourcepub fn set_delete_time<T>(self, v: T) -> Self
pub fn set_delete_time<T>(self, v: T) -> Self
Sets the value of delete_time.
§Example
use wkt::Timestamp;
let x = Database::new().set_delete_time(Timestamp::default()/* use setters */);Sourcepub fn set_or_clear_delete_time<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_delete_time<T>(self, v: Option<T>) -> Self
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>);Sourcepub fn set_location_id<T: Into<String>>(self, v: T) -> Self
pub fn set_location_id<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_type<T: Into<DatabaseType>>(self, v: T) -> Self
pub fn set_type<T: Into<DatabaseType>>(self, v: T) -> Self
Sourcepub fn set_concurrency_mode<T: Into<ConcurrencyMode>>(self, v: T) -> Self
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);Sourcepub fn set_version_retention_period<T>(self, v: T) -> Self
pub fn set_version_retention_period<T>(self, v: T) -> Self
Sets the value of version_retention_period.
§Example
use wkt::Duration;
let x = Database::new().set_version_retention_period(Duration::default()/* use setters */);Sourcepub fn set_or_clear_version_retention_period<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_version_retention_period<T>(self, v: Option<T>) -> Self
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>);Sourcepub fn set_earliest_version_time<T>(self, v: T) -> Self
pub fn set_earliest_version_time<T>(self, v: T) -> Self
Sets the value of earliest_version_time.
§Example
use wkt::Timestamp;
let x = Database::new().set_earliest_version_time(Timestamp::default()/* use setters */);Sourcepub fn set_or_clear_earliest_version_time<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_earliest_version_time<T>(self, v: Option<T>) -> Self
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>);Sourcepub fn set_point_in_time_recovery_enablement<T: Into<PointInTimeRecoveryEnablement>>(
self,
v: T,
) -> Self
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);Sourcepub fn set_app_engine_integration_mode<T: Into<AppEngineIntegrationMode>>(
self,
v: T,
) -> Self
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);Sourcepub fn set_key_prefix<T: Into<String>>(self, v: T) -> Self
pub fn set_key_prefix<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_delete_protection_state<T: Into<DeleteProtectionState>>(
self,
v: T,
) -> Self
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);Sourcepub fn set_cmek_config<T>(self, v: T) -> Selfwhere
T: Into<CmekConfig>,
pub fn set_cmek_config<T>(self, v: T) -> Selfwhere
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 */);Sourcepub fn set_or_clear_cmek_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<CmekConfig>,
pub fn set_or_clear_cmek_config<T>(self, v: Option<T>) -> Selfwhere
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>);Sourcepub fn set_previous_id<T: Into<String>>(self, v: T) -> Self
pub fn set_previous_id<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_source_info<T>(self, v: T) -> Selfwhere
T: Into<SourceInfo>,
pub fn set_source_info<T>(self, v: T) -> Selfwhere
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 */);Sourcepub fn set_or_clear_source_info<T>(self, v: Option<T>) -> Selfwhere
T: Into<SourceInfo>,
pub fn set_or_clear_source_info<T>(self, v: Option<T>) -> Selfwhere
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>);Sourcepub fn set_free_tier<T>(self, v: T) -> Self
pub fn set_free_tier<T>(self, v: T) -> Self
Sourcepub fn set_or_clear_free_tier<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_free_tier<T>(self, v: Option<T>) -> Self
Sourcepub fn set_database_edition<T: Into<DatabaseEdition>>(self, v: T) -> Self
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);