Class: Google::Apis::FirestoreV1::GoogleFirestoreAdminV1Database

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/firestore_v1/classes.rb,
lib/google/apis/firestore_v1/representations.rb,
lib/google/apis/firestore_v1/representations.rb

Overview

A Cloud Firestore Database.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleFirestoreAdminV1Database

Returns a new instance of GoogleFirestoreAdminV1Database.



2048
2049
2050
# File 'lib/google/apis/firestore_v1/classes.rb', line 2048

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#app_engine_integration_modeString

The App Engine integration mode to use for this database. Corresponds to the JSON property appEngineIntegrationMode

Returns:

  • (String)


1884
1885
1886
# File 'lib/google/apis/firestore_v1/classes.rb', line 1884

def app_engine_integration_mode
  @app_engine_integration_mode
end

#cmek_configGoogle::Apis::FirestoreV1::GoogleFirestoreAdminV1CmekConfig

The CMEK (Customer Managed Encryption Key) configuration for a Firestore database. If not present, the database is secured by the default Google encryption key. Corresponds to the JSON property cmekConfig



1891
1892
1893
# File 'lib/google/apis/firestore_v1/classes.rb', line 1891

def cmek_config
  @cmek_config
end

#concurrency_modeString

The default concurrency control mode to use for this database. If unspecified in a CreateDatabase request, this will default based on the database edition: Optimistic for Enterprise and Pessimistic for all other databases. While transactions can explicitly specify their own concurrency mode, this setting defines the default behavior when left unspecified. Important: This database- level setting is not respected for Firestore with MongoDB compatibility. All transactions through the MongoDB compatibility layer will use optimistic concurrency control, regardless of this setting. Corresponds to the JSON property concurrencyMode

Returns:

  • (String)


1903
1904
1905
# File 'lib/google/apis/firestore_v1/classes.rb', line 1903

def concurrency_mode
  @concurrency_mode
end

#create_timeString

Output only. The timestamp at which this database was created. Databases created before 2016 do not populate create_time. Corresponds to the JSON property createTime

Returns:

  • (String)


1909
1910
1911
# File 'lib/google/apis/firestore_v1/classes.rb', line 1909

def create_time
  @create_time
end

#database_editionString

Immutable. The edition of the database. Corresponds to the JSON property databaseEdition

Returns:

  • (String)


1914
1915
1916
# File 'lib/google/apis/firestore_v1/classes.rb', line 1914

def database_edition
  @database_edition
end

#delete_protection_stateString

State of delete protection for the database. Corresponds to the JSON property deleteProtectionState

Returns:

  • (String)


1919
1920
1921
# File 'lib/google/apis/firestore_v1/classes.rb', line 1919

def delete_protection_state
  @delete_protection_state
end

#delete_timeString

Output only. The timestamp at which this database was deleted. Only set if the database has been deleted. Corresponds to the JSON property deleteTime

Returns:

  • (String)


1925
1926
1927
# File 'lib/google/apis/firestore_v1/classes.rb', line 1925

def delete_time
  @delete_time
end

#earliest_version_timeString

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. Corresponds to the JSON property earliestVersionTime

Returns:

  • (String)


1935
1936
1937
# File 'lib/google/apis/firestore_v1/classes.rb', line 1935

def earliest_version_time
  @earliest_version_time
end

#etagString

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. Corresponds to the JSON property etag

Returns:

  • (String)


1942
1943
1944
# File 'lib/google/apis/firestore_v1/classes.rb', line 1942

def etag
  @etag
end

#firestore_data_access_modeString

Optional. The Firestore API data access mode to use for this database. If not set on write: - the default value is DATA_ACCESS_MODE_DISABLED for Enterprise edition. - the default value is DATA_ACCESS_MODE_ENABLED for Standard edition. Corresponds to the JSON property firestoreDataAccessMode

Returns:

  • (String)


1949
1950
1951
# File 'lib/google/apis/firestore_v1/classes.rb', line 1949

def firestore_data_access_mode
  @firestore_data_access_mode
end

#free_tierBoolean Also known as: free_tier?

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. Corresponds to the JSON property freeTier

Returns:

  • (Boolean)


1961
1962
1963
# File 'lib/google/apis/firestore_v1/classes.rb', line 1961

def free_tier
  @free_tier
end

#key_prefixString

Output only. The key_prefix for this database. This key_prefix is used, in combination with the 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). Corresponds to the JSON property keyPrefix

Returns:

  • (String)


1971
1972
1973
# File 'lib/google/apis/firestore_v1/classes.rb', line 1971

def key_prefix
  @key_prefix
end

#location_idString

Required. The location of the database. Available locations are listed at https://cloud.google.com/firestore/docs/locations. Corresponds to the JSON property locationId

Returns:

  • (String)


1977
1978
1979
# File 'lib/google/apis/firestore_v1/classes.rb', line 1977

def location_id
  @location_id
end

#mongodb_compatible_data_access_modeString

Optional. The MongoDB compatible API data access mode to use for this database. If not set on write, the default value is DATA_ACCESS_MODE_ENABLED for Enterprise edition. The value is always DATA_ACCESS_MODE_DISABLED for Standard edition. Corresponds to the JSON property mongodbCompatibleDataAccessMode

Returns:

  • (String)


1985
1986
1987
# File 'lib/google/apis/firestore_v1/classes.rb', line 1985

def mongodb_compatible_data_access_mode
  @mongodb_compatible_data_access_mode
end

#nameString

The resource name of the Database. Format: projects/project/databases/ database` Corresponds to the JSON propertyname`

Returns:

  • (String)


1991
1992
1993
# File 'lib/google/apis/firestore_v1/classes.rb', line 1991

def name
  @name
end

#point_in_time_recovery_enablementString

Whether to enable the PITR feature on this database. Corresponds to the JSON property pointInTimeRecoveryEnablement

Returns:

  • (String)


1996
1997
1998
# File 'lib/google/apis/firestore_v1/classes.rb', line 1996

def point_in_time_recovery_enablement
  @point_in_time_recovery_enablement
end

#previous_idString

Output only. The database resource's prior database ID. This field is only populated for deleted databases. Corresponds to the JSON property previousId

Returns:

  • (String)


2002
2003
2004
# File 'lib/google/apis/firestore_v1/classes.rb', line 2002

def previous_id
  @previous_id
end

#realtime_updates_modeString

Immutable. The default Realtime Updates mode to use for this database. Corresponds to the JSON property realtimeUpdatesMode

Returns:

  • (String)


2007
2008
2009
# File 'lib/google/apis/firestore_v1/classes.rb', line 2007

def realtime_updates_mode
  @realtime_updates_mode
end

#source_infoGoogle::Apis::FirestoreV1::GoogleFirestoreAdminV1SourceInfo

Information about the provenance of this database. Corresponds to the JSON property sourceInfo



2012
2013
2014
# File 'lib/google/apis/firestore_v1/classes.rb', line 2012

def source_info
  @source_info
end

#tagsHash<String,String>

Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: "123/environment": "production", "123/costCenter": " marketing" Corresponds to the JSON property tags

Returns:

  • (Hash<String,String>)


2019
2020
2021
# File 'lib/google/apis/firestore_v1/classes.rb', line 2019

def tags
  @tags
end

#typeString

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

Returns:

  • (String)


2025
2026
2027
# File 'lib/google/apis/firestore_v1/classes.rb', line 2025

def type
  @type
end

#uidString

Output only. The system-generated UUID4 for this Database. Corresponds to the JSON property uid

Returns:

  • (String)


2030
2031
2032
# File 'lib/google/apis/firestore_v1/classes.rb', line 2030

def uid
  @uid
end

#update_timeString

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. Corresponds to the JSON property updateTime

Returns:

  • (String)


2037
2038
2039
# File 'lib/google/apis/firestore_v1/classes.rb', line 2037

def update_time
  @update_time
end

#version_retention_periodString

Output only. The period during which past versions of data are retained in the database. Any read or query 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. Corresponds to the JSON property versionRetentionPeriod

Returns:

  • (String)


2046
2047
2048
# File 'lib/google/apis/firestore_v1/classes.rb', line 2046

def version_retention_period
  @version_retention_period
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
# File 'lib/google/apis/firestore_v1/classes.rb', line 2053

def update!(**args)
  @app_engine_integration_mode = args[:app_engine_integration_mode] if args.key?(:app_engine_integration_mode)
  @cmek_config = args[:cmek_config] if args.key?(:cmek_config)
  @concurrency_mode = args[:concurrency_mode] if args.key?(:concurrency_mode)
  @create_time = args[:create_time] if args.key?(:create_time)
  @database_edition = args[:database_edition] if args.key?(:database_edition)
  @delete_protection_state = args[:delete_protection_state] if args.key?(:delete_protection_state)
  @delete_time = args[:delete_time] if args.key?(:delete_time)
  @earliest_version_time = args[:earliest_version_time] if args.key?(:earliest_version_time)
  @etag = args[:etag] if args.key?(:etag)
  @firestore_data_access_mode = args[:firestore_data_access_mode] if args.key?(:firestore_data_access_mode)
  @free_tier = args[:free_tier] if args.key?(:free_tier)
  @key_prefix = args[:key_prefix] if args.key?(:key_prefix)
  @location_id = args[:location_id] if args.key?(:location_id)
  @mongodb_compatible_data_access_mode = args[:mongodb_compatible_data_access_mode] if args.key?(:mongodb_compatible_data_access_mode)
  @name = args[:name] if args.key?(:name)
  @point_in_time_recovery_enablement = args[:point_in_time_recovery_enablement] if args.key?(:point_in_time_recovery_enablement)
  @previous_id = args[:previous_id] if args.key?(:previous_id)
  @realtime_updates_mode = args[:realtime_updates_mode] if args.key?(:realtime_updates_mode)
  @source_info = args[:source_info] if args.key?(:source_info)
  @tags = args[:tags] if args.key?(:tags)
  @type = args[:type] if args.key?(:type)
  @uid = args[:uid] if args.key?(:uid)
  @update_time = args[:update_time] if args.key?(:update_time)
  @version_retention_period = args[:version_retention_period] if args.key?(:version_retention_period)
end