class Google::Apis::FirestoreV1beta2::GoogleFirestoreAdminV1beta2Index

Cloud Firestore indexes enable simple and complex queries against documents in a database.

Attributes

fields[RW]

The fields supported by this index. For composite indexes, this is always 2 or more fields. The last field entry is always for the field path `__name__`. If, on creation, `__name__` was not specified as the last field, it will be added automatically with the same direction as that of the last field defined. If the final field in a composite index is not directional, the `__name__` will be ordered ASCENDING (unless explicitly specified). For single field indexes, this will always be exactly one entry with a field path equal to the field path of the associated field. Corresponds to the JSON property `fields` @return [Array<Google::Apis::FirestoreV1beta2::GoogleFirestoreAdminV1beta2IndexField>]

name[RW]

Output only. A server defined name for this index. The form of this name for composite indexes will be: `projects/`project_id`/databases/`database_id`/ collectionGroups/`collection_id`/indexes/`composite_index_id“ For single field indexes, this field will be empty. Corresponds to the JSON property `name` @return [String]

query_scope[RW]

Indexes with a collection query scope specified allow queries against a collection that is the child of a specific document, specified at query time, and that has the same collection id. Indexes with a collection group query scope specified allow queries against all collections descended from a specific document, specified at query time, and that have the same collection id as this index. Corresponds to the JSON property `queryScope` @return [String]

state[RW]

Output only. The serving state of the index. Corresponds to the JSON property `state` @return [String]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/firestore_v1beta2/classes.rb, line 384
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/firestore_v1beta2/classes.rb, line 389
def update!(**args)
  @fields = args[:fields] if args.key?(:fields)
  @name = args[:name] if args.key?(:name)
  @query_scope = args[:query_scope] if args.key?(:query_scope)
  @state = args[:state] if args.key?(:state)
end