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.



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

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)


1762
1763
1764
# File 'lib/google/apis/firestore_v1/classes.rb', line 1762

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



1769
1770
1771
# File 'lib/google/apis/firestore_v1/classes.rb', line 1769

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)


1781
1782
1783
# File 'lib/google/apis/firestore_v1/classes.rb', line 1781

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)


1787
1788
1789
# File 'lib/google/apis/firestore_v1/classes.rb', line 1787

def create_time
  @create_time
end

#database_editionString

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

Returns:

  • (String)


1792
1793
1794
# File 'lib/google/apis/firestore_v1/classes.rb', line 1792

def database_edition
  @database_edition
end

#delete_protection_stateString

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

Returns:

  • (String)


1797
1798
1799
# File 'lib/google/apis/firestore_v1/classes.rb', line 1797

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)


1803
1804
1805
# File 'lib/google/apis/firestore_v1/classes.rb', line 1803

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)


1813
1814
1815
# File 'lib/google/apis/firestore_v1/classes.rb', line 1813

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)


1820
1821
1822
# File 'lib/google/apis/firestore_v1/classes.rb', line 1820

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)


1827
1828
1829
# File 'lib/google/apis/firestore_v1/classes.rb', line 1827

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)


1839
1840
1841
# File 'lib/google/apis/firestore_v1/classes.rb', line 1839

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)


1849
1850
1851
# File 'lib/google/apis/firestore_v1/classes.rb', line 1849

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)


1855
1856
1857
# File 'lib/google/apis/firestore_v1/classes.rb', line 1855

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)


1863
1864
1865
# File 'lib/google/apis/firestore_v1/classes.rb', line 1863

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)


1869
1870
1871
# File 'lib/google/apis/firestore_v1/classes.rb', line 1869

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)


1874
1875
1876
# File 'lib/google/apis/firestore_v1/classes.rb', line 1874

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)


1880
1881
1882
# File 'lib/google/apis/firestore_v1/classes.rb', line 1880

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)


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

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



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

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


1897
1898
1899
# File 'lib/google/apis/firestore_v1/classes.rb', line 1897

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)


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

def type
  @type
end

#uidString

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

Returns:

  • (String)


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

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)


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

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)


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

def version_retention_period
  @version_retention_period
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
# File 'lib/google/apis/firestore_v1/classes.rb', line 1931

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