Class: Google::Apis::FirestoreV1::GoogleFirestoreAdminV1Index
- Inherits:
-
Object
- Object
- Google::Apis::FirestoreV1::GoogleFirestoreAdminV1Index
- 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
Cloud Firestore indexes enable simple and complex queries against documents in a database.
Instance Attribute Summary collapse
-
#api_scope ⇒ String
The API scope supported by this index.
-
#density ⇒ String
Immutable.
-
#fields ⇒ Array<Google::Apis::FirestoreV1::GoogleFirestoreAdminV1IndexField>
The fields supported by this index.
-
#multikey ⇒ Boolean
(also: #multikey?)
Optional.
-
#name ⇒ String
Output only.
-
#query_scope ⇒ String
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.
-
#search_index_options ⇒ Google::Apis::FirestoreV1::GoogleFirestoreAdminV1SearchIndexOptions
Options for search indexes at the definition level.
-
#shard_count ⇒ Fixnum
Optional.
-
#state ⇒ String
Output only.
-
#unique ⇒ Boolean
(also: #unique?)
Optional.
Instance Method Summary collapse
-
#initialize(**args) ⇒ GoogleFirestoreAdminV1Index
constructor
A new instance of GoogleFirestoreAdminV1Index.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ GoogleFirestoreAdminV1Index
Returns a new instance of GoogleFirestoreAdminV1Index.
2498 2499 2500 |
# File 'lib/google/apis/firestore_v1/classes.rb', line 2498 def initialize(**args) update!(**args) end |
Instance Attribute Details
#api_scope ⇒ String
The API scope supported by this index.
Corresponds to the JSON property apiScope
2428 2429 2430 |
# File 'lib/google/apis/firestore_v1/classes.rb', line 2428 def api_scope @api_scope end |
#density ⇒ String
Immutable. The density configuration of the index.
Corresponds to the JSON property density
2433 2434 2435 |
# File 'lib/google/apis/firestore_v1/classes.rb', line 2433 def density @density end |
#fields ⇒ Array<Google::Apis::FirestoreV1::GoogleFirestoreAdminV1IndexField>
The fields supported by this index. For composite indexes, this requires a
minimum of 2 and a maximum of 100 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
2445 2446 2447 |
# File 'lib/google/apis/firestore_v1/classes.rb', line 2445 def fields @fields end |
#multikey ⇒ Boolean Also known as: multikey?
Optional. Whether the index is multikey. By default, the index is not multikey.
For non-multikey indexes, none of the paths in the index definition reach or
traverse an array, except via an explicit array index. For multikey indexes,
at most one of the paths in the index definition reach or traverse an array,
except via an explicit array index. Violations will result in errors. Note
this field only applies to index with MONGODB_COMPATIBLE_API ApiScope.
Corresponds to the JSON property multikey
2455 2456 2457 |
# File 'lib/google/apis/firestore_v1/classes.rb', line 2455 def multikey @multikey end |
#name ⇒ String
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 propertyname`
2464 2465 2466 |
# File 'lib/google/apis/firestore_v1/classes.rb', line 2464 def name @name end |
#query_scope ⇒ String
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
2474 2475 2476 |
# File 'lib/google/apis/firestore_v1/classes.rb', line 2474 def query_scope @query_scope end |
#search_index_options ⇒ Google::Apis::FirestoreV1::GoogleFirestoreAdminV1SearchIndexOptions
Options for search indexes at the definition level.
Corresponds to the JSON property searchIndexOptions
2479 2480 2481 |
# File 'lib/google/apis/firestore_v1/classes.rb', line 2479 def @search_index_options end |
#shard_count ⇒ Fixnum
Optional. The number of shards for the index.
Corresponds to the JSON property shardCount
2484 2485 2486 |
# File 'lib/google/apis/firestore_v1/classes.rb', line 2484 def shard_count @shard_count end |
#state ⇒ String
Output only. The serving state of the index.
Corresponds to the JSON property state
2489 2490 2491 |
# File 'lib/google/apis/firestore_v1/classes.rb', line 2489 def state @state end |
#unique ⇒ Boolean Also known as: unique?
Optional. Whether it is an unique index. Unique index ensures all values for
the indexed field(s) are unique across documents.
Corresponds to the JSON property unique
2495 2496 2497 |
# File 'lib/google/apis/firestore_v1/classes.rb', line 2495 def unique @unique end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 |
# File 'lib/google/apis/firestore_v1/classes.rb', line 2503 def update!(**args) @api_scope = args[:api_scope] if args.key?(:api_scope) @density = args[:density] if args.key?(:density) @fields = args[:fields] if args.key?(:fields) @multikey = args[:multikey] if args.key?(:multikey) @name = args[:name] if args.key?(:name) @query_scope = args[:query_scope] if args.key?(:query_scope) @search_index_options = args[:search_index_options] if args.key?(:search_index_options) @shard_count = args[:shard_count] if args.key?(:shard_count) @state = args[:state] if args.key?(:state) @unique = args[:unique] if args.key?(:unique) end |