Class: Google::Cloud::Datastore::V1::Key

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/datastore/v1/entity.rb

Overview

A unique identifier for an entity. If a key's partition ID or any of its path kinds or names are reserved/read-only, the key is reserved/read-only. A reserved/read-only key is forbidden in certain documented contexts.

Defined Under Namespace

Classes: PathElement

Instance Attribute Summary collapse

Instance Attribute Details

#partition_id::Google::Cloud::Datastore::V1::PartitionId

Returns Entities are partitioned into subsets, currently identified by a project ID and namespace ID. Queries are scoped to a single partition.

Returns:



86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
# File 'proto_docs/google/datastore/v1/entity.rb', line 86

class Key
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # A (kind, ID/name) pair used to construct a key path.
  #
  # If either name or ID is set, the element is complete.
  # If neither is set, the element is incomplete.
  # @!attribute [rw] kind
  #   @return [::String]
  #     The kind of the entity.
  #
  #     A kind matching regex `__.*__` is reserved/read-only.
  #     A kind must not contain more than 1500 bytes when UTF-8 encoded.
  #     Cannot be `""`.
  #
  #     Must be valid UTF-8 bytes. Legacy values that are not valid UTF-8 are
  #     encoded as `__bytes<X>__` where `<X>` is the base-64 encoding of the
  #     bytes.
  # @!attribute [rw] id
  #   @return [::Integer]
  #     The auto-allocated ID of the entity.
  #
  #     Never equal to zero. Values less than zero are discouraged and may not
  #     be supported in the future.
  # @!attribute [rw] name
  #   @return [::String]
  #     The name of the entity.
  #
  #     A name matching regex `__.*__` is reserved/read-only.
  #     A name must not be more than 1500 bytes when UTF-8 encoded.
  #     Cannot be `""`.
  #
  #     Must be valid UTF-8 bytes. Legacy values that are not valid UTF-8 are
  #     encoded as `__bytes<X>__` where `<X>` is the base-64 encoding of the
  #     bytes.
  class PathElement
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#path::Array<::Google::Cloud::Datastore::V1::Key::PathElement>

Returns The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element identifies a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors.

An entity path is always fully complete: all of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. For example, the last path element of the key of Mutation.insert may have no identifier.

A path can never be empty, and a path can have at most 100 elements.

Returns:

  • (::Array<::Google::Cloud::Datastore::V1::Key::PathElement>)

    The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element identifies a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors.

    An entity path is always fully complete: all of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. For example, the last path element of the key of Mutation.insert may have no identifier.

    A path can never be empty, and a path can have at most 100 elements.



86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
# File 'proto_docs/google/datastore/v1/entity.rb', line 86

class Key
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # A (kind, ID/name) pair used to construct a key path.
  #
  # If either name or ID is set, the element is complete.
  # If neither is set, the element is incomplete.
  # @!attribute [rw] kind
  #   @return [::String]
  #     The kind of the entity.
  #
  #     A kind matching regex `__.*__` is reserved/read-only.
  #     A kind must not contain more than 1500 bytes when UTF-8 encoded.
  #     Cannot be `""`.
  #
  #     Must be valid UTF-8 bytes. Legacy values that are not valid UTF-8 are
  #     encoded as `__bytes<X>__` where `<X>` is the base-64 encoding of the
  #     bytes.
  # @!attribute [rw] id
  #   @return [::Integer]
  #     The auto-allocated ID of the entity.
  #
  #     Never equal to zero. Values less than zero are discouraged and may not
  #     be supported in the future.
  # @!attribute [rw] name
  #   @return [::String]
  #     The name of the entity.
  #
  #     A name matching regex `__.*__` is reserved/read-only.
  #     A name must not be more than 1500 bytes when UTF-8 encoded.
  #     Cannot be `""`.
  #
  #     Must be valid UTF-8 bytes. Legacy values that are not valid UTF-8 are
  #     encoded as `__bytes<X>__` where `<X>` is the base-64 encoding of the
  #     bytes.
  class PathElement
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end