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.



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

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. Storing a timestamp value into a TTL-enabled field will be treated as the document's absolute expiration time. For Enterprise edition databases, the timestamp value may also be stored in an array value in the TTL-enabled field. Timestamp values in the past indicate 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



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

def ttl_config
  @ttl_config
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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

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