googleapis/google/datastore/admin/v1/index.proto
Google APIs d72ca0d2ef chore: update copyright year for auto-generated protos
PiperOrigin-RevId: 731738802
2025-02-27 08:38:54 -08:00

122 lines
4.2 KiB
Protocol Buffer

// Copyright 2025 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
syntax = "proto3";
package google.datastore.admin.v1;
import "google/api/field_behavior.proto";
option csharp_namespace = "Google.Cloud.Datastore.Admin.V1";
option go_package = "cloud.google.com/go/datastore/admin/apiv1/adminpb;adminpb";
option java_multiple_files = true;
option java_outer_classname = "IndexProto";
option java_package = "com.google.datastore.admin.v1";
option php_namespace = "Google\\Cloud\\Datastore\\Admin\\V1";
option ruby_package = "Google::Cloud::Datastore::Admin::V1";
// Datastore composite index definition.
message Index {
// For an ordered index, specifies whether each of the entity's ancestors
// will be included.
enum AncestorMode {
// The ancestor mode is unspecified.
ANCESTOR_MODE_UNSPECIFIED = 0;
// Do not include the entity's ancestors in the index.
NONE = 1;
// Include all the entity's ancestors in the index.
ALL_ANCESTORS = 2;
}
// The direction determines how a property is indexed.
enum Direction {
// The direction is unspecified.
DIRECTION_UNSPECIFIED = 0;
// The property's values are indexed so as to support sequencing in
// ascending order and also query by <, >, <=, >=, and =.
ASCENDING = 1;
// The property's values are indexed so as to support sequencing in
// descending order and also query by <, >, <=, >=, and =.
DESCENDING = 2;
}
// A property of an index.
message IndexedProperty {
// Required. The property name to index.
string name = 1 [(google.api.field_behavior) = REQUIRED];
// Required. The indexed property's direction. Must not be
// DIRECTION_UNSPECIFIED.
Direction direction = 2 [(google.api.field_behavior) = REQUIRED];
}
// The possible set of states of an index.
enum State {
// The state is unspecified.
STATE_UNSPECIFIED = 0;
// The index is being created, and cannot be used by queries.
// There is an active long-running operation for the index.
// The index is updated when writing an entity.
// Some index data may exist.
CREATING = 1;
// The index is ready to be used.
// The index is updated when writing an entity.
// The index is fully populated from all stored entities it applies to.
READY = 2;
// The index is being deleted, and cannot be used by queries.
// There is an active long-running operation for the index.
// The index is not updated when writing an entity.
// Some index data may exist.
DELETING = 3;
// The index was being created or deleted, but something went wrong.
// The index cannot by used by queries.
// There is no active long-running operation for the index,
// and the most recently finished long-running operation failed.
// The index is not updated when writing an entity.
// Some index data may exist.
ERROR = 4;
}
// Output only. Project ID.
string project_id = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The resource ID of the index.
string index_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
// Required. The entity kind to which this index applies.
string kind = 4 [(google.api.field_behavior) = REQUIRED];
// Required. The index's ancestor mode. Must not be
// ANCESTOR_MODE_UNSPECIFIED.
AncestorMode ancestor = 5 [(google.api.field_behavior) = REQUIRED];
// Required. An ordered sequence of property names and their index attributes.
//
// Requires:
//
// * A maximum of 100 properties.
repeated IndexedProperty properties = 6
[(google.api.field_behavior) = REQUIRED];
// Output only. The state of the index.
State state = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
}