#[non_exhaustive]
pub struct Database { pub name: String, pub state: State, pub create_time: Option<Timestamp>, pub restore_info: Option<RestoreInfo>, pub encryption_config: Option<EncryptionConfig>, pub encryption_info: Vec<EncryptionInfo>, pub version_retention_period: String, pub earliest_version_time: Option<Timestamp>, pub default_leader: String, pub database_dialect: DatabaseDialect, pub enable_drop_protection: bool, pub reconciling: bool, }
Expand description

A Cloud Spanner 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

Required. The name of the database. Values are of the form projects/<project>/instances/<instance>/databases/<database>, where <database> is as specified in the CREATE DATABASE statement. This name can be passed to other API methods to identify the database.

§state: State

Output only. The current database state.

§create_time: Option<Timestamp>

Output only. If exists, the time at which the database creation started.

§restore_info: Option<RestoreInfo>

Output only. Applicable only for restored databases. Contains information about the restore source.

§encryption_config: Option<EncryptionConfig>

Output only. For databases that are using customer managed encryption, this field contains the encryption configuration for the database. For databases that are using Google default or other types of encryption, this field is empty.

§encryption_info: Vec<EncryptionInfo>

Output only. For databases that are using customer managed encryption, this field contains the encryption information for the database, such as all Cloud KMS key versions that are in use. The encryption_status' field inside of each EncryptionInfo` is not populated.

For databases that are using Google default or other types of encryption, this field is empty.

This field is propagated lazily from the backend. There might be a delay from when a key version is being used and when it appears in this field.

§version_retention_period: String

Output only. The period in which Cloud Spanner retains all versions of data for the database. This is the same as the value of version_retention_period database option set using UpdateDatabaseDdl. Defaults to 1 hour, if not set.

§earliest_version_time: Option<Timestamp>

Output only. Earliest timestamp at which older versions of the data can be read. This value is continuously updated by Cloud Spanner 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.

§default_leader: String

Output only. The read-write region which contains the database’s leader replicas.

This is the same as the value of default_leader database option set using DatabaseAdmin.CreateDatabase or DatabaseAdmin.UpdateDatabaseDdl. If not explicitly set, this is empty.

§database_dialect: DatabaseDialect

Output only. The dialect of the Cloud Spanner Database.

§enable_drop_protection: bool

Whether drop protection is enabled for this database. Defaults to false, if not set. For more details, please see how to prevent accidental database deletion.

§reconciling: bool

Output only. If true, the database is being updated. If false, there are no ongoing update operations for 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.

Source

pub fn set_state<T: Into<State>>(self, v: T) -> Self

Sets the value of state.

Source

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

Sets the value of create_time.

Source

pub fn set_restore_info<T: Into<Option<RestoreInfo>>>(self, v: T) -> Self

Sets the value of restore_info.

Source

pub fn set_encryption_config<T: Into<Option<EncryptionConfig>>>( self, v: T, ) -> Self

Sets the value of encryption_config.

Source

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

Sets the value of version_retention_period.

Source

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

Sets the value of earliest_version_time.

Source

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

Sets the value of default_leader.

Source

pub fn set_database_dialect<T: Into<DatabaseDialect>>(self, v: T) -> Self

Sets the value of database_dialect.

Source

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

Sets the value of enable_drop_protection.

Source

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

Sets the value of reconciling.

Source

pub fn set_encryption_info<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<EncryptionInfo>,

Sets the value of encryption_info.

Trait Implementations§

Source§

impl Clone for Database

Source§

fn clone(&self) -> Database

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 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<'de> Deserialize<'de> for Database

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Message for Database

Source§

fn typename() -> &'static str

The typename of this message.
Source§

fn to_map(&self) -> Result<Map<String, Value>, AnyError>
where Self: Sized + Serialize,

Store the value into a JSON object.
Source§

fn from_map(map: &Map<String, Value>) -> Result<Self, AnyError>
where Self: DeserializeOwned,

Extract the value from a JSON object.
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 Serialize for Database

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
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> 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>,

Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T