Class: Google::Apis::FirestoreV1::GoogleFirestoreAdminV1Field

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

Represents a single field in the database. Fields are grouped by their " Collection Group", which represent all collections in the database with the same ID.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleFirestoreAdminV1Field

Returns a new instance of GoogleFirestoreAdminV1Field.



2205
2206
2207
# File 'lib/google/apis/firestore_v1/classes.rb', line 2205

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

Instance Attribute Details

#index_configGoogle::Apis::FirestoreV1::GoogleFirestoreAdminV1IndexConfig

The index configuration for this field. Corresponds to the JSON property indexConfig



2172
2173
2174
# File 'lib/google/apis/firestore_v1/classes.rb', line 2172

def index_config
  @index_config
end

#nameString

Required. A field name of the form: projects/project_id/databases/ database_id/collectionGroups/collection_id/fields/field_pathA field path can be a simple field name, e.g. `address` or a path to fields within ` map_value` , e.g. `address.city`, or a special field path. The only valid special field is `*`, which represents any field. Field paths can be quoted using (backtick). The only character that must be escaped within a quoted field path is the backtick character itself, escaped using a backslash. Special characters in field paths that must be quoted include:,., (backtick), [, ], as well as any ascii symbolic characters. Examples: `address.city` represents a field named address.city, not the map key city in the field address. `represents a field named, not any field. A specialFieldcontains the default indexing settings for all fields. This field's resource name is:projects/project_id/databases/database_id/ collectionGroups/default/fields/Indexes defined on thisFieldwill be applied to all fields which do not have their ownFieldindex configuration. Corresponds to the JSON propertyname`

Returns:

  • (String)


2191
2192
2193
# File 'lib/google/apis/firestore_v1/classes.rb', line 2191

def name
  @name
end

#ttl_configGoogle::Apis::FirestoreV1::GoogleFirestoreAdminV1TtlConfig

The TTL (time-to-live) configuration for documents that have this Field set. A timestamp stored in a TTL-enabled field will be used to determine the expiration time of the document. The expiration time is the sum of the timestamp value and the expiration_offset. For Enterprise edition databases, the timestamp value may alternatively be stored in an array value in the TTL- enabled field. An expiration time in the past indicates that the document is eligible for immediate expiration. Using any other data type or leaving the field absent will disable expiration for the individual document. Corresponds to the JSON property ttlConfig



2203
2204
2205
# File 'lib/google/apis/firestore_v1/classes.rb', line 2203

def ttl_config
  @ttl_config
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2210
2211
2212
2213
2214
# File 'lib/google/apis/firestore_v1/classes.rb', line 2210

def update!(**args)
  @index_config = args[:index_config] if args.key?(:index_config)
  @name = args[:name] if args.key?(:name)
  @ttl_config = args[:ttl_config] if args.key?(:ttl_config)
end