1187 lines
43 KiB
Ruby
1187 lines
43 KiB
Ruby
# Copyright 2015 Google Inc.
|
|
#
|
|
# 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.
|
|
|
|
require 'date'
|
|
require 'google/apis/core/base_service'
|
|
require 'google/apis/core/json_representation'
|
|
require 'google/apis/core/hashable'
|
|
require 'google/apis/errors'
|
|
|
|
module Google
|
|
module Apis
|
|
module DatastoreV1beta2
|
|
|
|
#
|
|
class AllocateIdsRequest
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# A list of keys with incomplete key paths to allocate IDs for. No key may be
|
|
# reserved/read-only.
|
|
# Corresponds to the JSON property `keys`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::Key>]
|
|
attr_accessor :keys
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@keys = args[:keys] unless args[:keys].nil?
|
|
end
|
|
end
|
|
|
|
#
|
|
class AllocateIdsResponse
|
|
include Google::Apis::Core::Hashable
|
|
|
|
#
|
|
# Corresponds to the JSON property `header`
|
|
# @return [Google::Apis::DatastoreV1beta2::ResponseHeader]
|
|
attr_accessor :header
|
|
|
|
# The keys specified in the request (in the same order), each with its key path
|
|
# completed with a newly allocated ID.
|
|
# Corresponds to the JSON property `keys`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::Key>]
|
|
attr_accessor :keys
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@header = args[:header] unless args[:header].nil?
|
|
@keys = args[:keys] unless args[:keys].nil?
|
|
end
|
|
end
|
|
|
|
#
|
|
class BeginTransactionRequest
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The transaction isolation level. Either snapshot or serializable. The default
|
|
# isolation level is snapshot isolation, which means that another transaction
|
|
# may not concurrently modify the data that is modified by this transaction.
|
|
# Optionally, a transaction can request to be made serializable which means that
|
|
# another transaction cannot concurrently modify the data that is read or
|
|
# modified by this transaction.
|
|
# Corresponds to the JSON property `isolationLevel`
|
|
# @return [String]
|
|
attr_accessor :isolation_level
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@isolation_level = args[:isolation_level] unless args[:isolation_level].nil?
|
|
end
|
|
end
|
|
|
|
#
|
|
class BeginTransactionResponse
|
|
include Google::Apis::Core::Hashable
|
|
|
|
#
|
|
# Corresponds to the JSON property `header`
|
|
# @return [Google::Apis::DatastoreV1beta2::ResponseHeader]
|
|
attr_accessor :header
|
|
|
|
# The transaction identifier (always present).
|
|
# Corresponds to the JSON property `transaction`
|
|
# @return [String]
|
|
attr_accessor :transaction
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@header = args[:header] unless args[:header].nil?
|
|
@transaction = args[:transaction] unless args[:transaction].nil?
|
|
end
|
|
end
|
|
|
|
#
|
|
class CommitRequest
|
|
include Google::Apis::Core::Hashable
|
|
|
|
#
|
|
# Corresponds to the JSON property `ignoreReadOnly`
|
|
# @return [Boolean]
|
|
attr_accessor :ignore_read_only
|
|
alias_method :ignore_read_only?, :ignore_read_only
|
|
|
|
# The type of commit to perform. Either TRANSACTIONAL or NON_TRANSACTIONAL.
|
|
# Corresponds to the JSON property `mode`
|
|
# @return [String]
|
|
attr_accessor :mode
|
|
|
|
# A set of changes to apply.
|
|
# Corresponds to the JSON property `mutation`
|
|
# @return [Google::Apis::DatastoreV1beta2::Mutation]
|
|
attr_accessor :mutation
|
|
|
|
# The transaction identifier, returned by a call to beginTransaction. Must be
|
|
# set when mode is TRANSACTIONAL.
|
|
# Corresponds to the JSON property `transaction`
|
|
# @return [String]
|
|
attr_accessor :transaction
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@ignore_read_only = args[:ignore_read_only] unless args[:ignore_read_only].nil?
|
|
@mode = args[:mode] unless args[:mode].nil?
|
|
@mutation = args[:mutation] unless args[:mutation].nil?
|
|
@transaction = args[:transaction] unless args[:transaction].nil?
|
|
end
|
|
end
|
|
|
|
#
|
|
class CommitResponse
|
|
include Google::Apis::Core::Hashable
|
|
|
|
#
|
|
# Corresponds to the JSON property `header`
|
|
# @return [Google::Apis::DatastoreV1beta2::ResponseHeader]
|
|
attr_accessor :header
|
|
|
|
# The result of performing the mutation (if any).
|
|
# Corresponds to the JSON property `mutationResult`
|
|
# @return [Google::Apis::DatastoreV1beta2::MutationResult]
|
|
attr_accessor :mutation_result
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@header = args[:header] unless args[:header].nil?
|
|
@mutation_result = args[:mutation_result] unless args[:mutation_result].nil?
|
|
end
|
|
end
|
|
|
|
# A filter that merges the multiple other filters using the given operation.
|
|
class CompositeFilter
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The list of filters to combine. Must contain at least one filter.
|
|
# Corresponds to the JSON property `filters`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::Filter>]
|
|
attr_accessor :filters
|
|
|
|
# The operator for combining multiple filters. Only "and" is currently supported.
|
|
# Corresponds to the JSON property `operator`
|
|
# @return [String]
|
|
attr_accessor :operator
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@filters = args[:filters] unless args[:filters].nil?
|
|
@operator = args[:operator] unless args[:operator].nil?
|
|
end
|
|
end
|
|
|
|
# An entity.
|
|
class Entity
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# A unique identifier for an entity.
|
|
# Corresponds to the JSON property `key`
|
|
# @return [Google::Apis::DatastoreV1beta2::Key]
|
|
attr_accessor :key
|
|
|
|
# The entity's properties.
|
|
# Corresponds to the JSON property `properties`
|
|
# @return [Hash<String,Google::Apis::DatastoreV1beta2::Property>]
|
|
attr_accessor :properties
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@key = args[:key] unless args[:key].nil?
|
|
@properties = args[:properties] unless args[:properties].nil?
|
|
end
|
|
end
|
|
|
|
# The result of fetching an entity from the datastore.
|
|
class EntityResult
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# An entity.
|
|
# Corresponds to the JSON property `entity`
|
|
# @return [Google::Apis::DatastoreV1beta2::Entity]
|
|
attr_accessor :entity
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@entity = args[:entity] unless args[:entity].nil?
|
|
end
|
|
end
|
|
|
|
# A holder for any type of filter. Exactly one field should be specified.
|
|
class Filter
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# A filter that merges the multiple other filters using the given operation.
|
|
# Corresponds to the JSON property `compositeFilter`
|
|
# @return [Google::Apis::DatastoreV1beta2::CompositeFilter]
|
|
attr_accessor :composite_filter
|
|
|
|
# A filter on a specific property.
|
|
# Corresponds to the JSON property `propertyFilter`
|
|
# @return [Google::Apis::DatastoreV1beta2::PropertyFilter]
|
|
attr_accessor :property_filter
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@composite_filter = args[:composite_filter] unless args[:composite_filter].nil?
|
|
@property_filter = args[:property_filter] unless args[:property_filter].nil?
|
|
end
|
|
end
|
|
|
|
# A GQL query.
|
|
class GqlQuery
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# When false, the query string must not contain a literal.
|
|
# Corresponds to the JSON property `allowLiteral`
|
|
# @return [Boolean]
|
|
attr_accessor :allow_literal
|
|
alias_method :allow_literal?, :allow_literal
|
|
|
|
# A named argument must set field GqlQueryArg.name. No two named arguments may
|
|
# have the same name. For each non-reserved named binding site in the query
|
|
# string, there must be a named argument with that name, but not necessarily the
|
|
# inverse.
|
|
# Corresponds to the JSON property `nameArgs`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::GqlQueryArg>]
|
|
attr_accessor :name_args
|
|
|
|
# Numbered binding site @1 references the first numbered argument, effectively
|
|
# using 1-based indexing, rather than the usual 0. A numbered argument must NOT
|
|
# set field GqlQueryArg.name. For each binding site numbered i in query_string,
|
|
# there must be an ith numbered argument. The inverse must also be true.
|
|
# Corresponds to the JSON property `numberArgs`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::GqlQueryArg>]
|
|
attr_accessor :number_args
|
|
|
|
# The query string.
|
|
# Corresponds to the JSON property `queryString`
|
|
# @return [String]
|
|
attr_accessor :query_string
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@allow_literal = args[:allow_literal] unless args[:allow_literal].nil?
|
|
@name_args = args[:name_args] unless args[:name_args].nil?
|
|
@number_args = args[:number_args] unless args[:number_args].nil?
|
|
@query_string = args[:query_string] unless args[:query_string].nil?
|
|
end
|
|
end
|
|
|
|
# A binding argument for a GQL query.
|
|
class GqlQueryArg
|
|
include Google::Apis::Core::Hashable
|
|
|
|
#
|
|
# Corresponds to the JSON property `cursor`
|
|
# @return [String]
|
|
attr_accessor :cursor
|
|
|
|
# Must match regex "[A-Za-z_$][A-Za-z_$0-9]*". Must not match regex "__.*__".
|
|
# Must not be "".
|
|
# Corresponds to the JSON property `name`
|
|
# @return [String]
|
|
attr_accessor :name
|
|
|
|
# A message that can hold any of the supported value types and associated
|
|
# metadata.
|
|
# Corresponds to the JSON property `value`
|
|
# @return [Google::Apis::DatastoreV1beta2::Value]
|
|
attr_accessor :value
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@cursor = args[:cursor] unless args[:cursor].nil?
|
|
@name = args[:name] unless args[:name].nil?
|
|
@value = args[:value] unless args[:value].nil?
|
|
end
|
|
end
|
|
|
|
# A unique identifier for an entity.
|
|
class Key
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# An identifier for a particular subset of entities.
|
|
# Entities are partitioned into various subsets, each used by different datasets
|
|
# and different namespaces within a dataset and so forth.
|
|
# Corresponds to the JSON property `partitionId`
|
|
# @return [Google::Apis::DatastoreV1beta2::PartitionId]
|
|
attr_accessor :partition_id
|
|
|
|
# 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 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. A path can never
|
|
# be empty. The path can have at most 100 elements.
|
|
# Corresponds to the JSON property `path`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::KeyPathElement>]
|
|
attr_accessor :path
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@partition_id = args[:partition_id] unless args[:partition_id].nil?
|
|
@path = args[:path] unless args[:path].nil?
|
|
end
|
|
end
|
|
|
|
# A (kind, ID/name) pair used to construct a key path.
|
|
# At most one of name or ID may be set. If either is set, the element is
|
|
# complete. If neither is set, the element is incomplete.
|
|
class KeyPathElement
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The ID of the entity. Never equal to zero. Values less than zero are
|
|
# discouraged and will not be supported in the future.
|
|
# Corresponds to the JSON property `id`
|
|
# @return [String]
|
|
attr_accessor :id
|
|
|
|
# The kind of the entity. A kind matching regex "__.*__" is reserved/read-only.
|
|
# A kind must not contain more than 500 characters. Cannot be "".
|
|
# Corresponds to the JSON property `kind`
|
|
# @return [String]
|
|
attr_accessor :kind
|
|
|
|
# The name of the entity. A name matching regex "__.*__" is reserved/read-only.
|
|
# A name must not be more than 500 characters. Cannot be "".
|
|
# Corresponds to the JSON property `name`
|
|
# @return [String]
|
|
attr_accessor :name
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@id = args[:id] unless args[:id].nil?
|
|
@kind = args[:kind] unless args[:kind].nil?
|
|
@name = args[:name] unless args[:name].nil?
|
|
end
|
|
end
|
|
|
|
# A representation of a kind.
|
|
class KindExpression
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The name of the kind.
|
|
# Corresponds to the JSON property `name`
|
|
# @return [String]
|
|
attr_accessor :name
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@name = args[:name] unless args[:name].nil?
|
|
end
|
|
end
|
|
|
|
#
|
|
class LookupRequest
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# Keys of entities to look up from the datastore.
|
|
# Corresponds to the JSON property `keys`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::Key>]
|
|
attr_accessor :keys
|
|
|
|
# Options for this lookup request. Optional.
|
|
# Corresponds to the JSON property `readOptions`
|
|
# @return [Google::Apis::DatastoreV1beta2::ReadOptions]
|
|
attr_accessor :read_options
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@keys = args[:keys] unless args[:keys].nil?
|
|
@read_options = args[:read_options] unless args[:read_options].nil?
|
|
end
|
|
end
|
|
|
|
#
|
|
class LookupResponse
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# A list of keys that were not looked up due to resource constraints.
|
|
# Corresponds to the JSON property `deferred`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::Key>]
|
|
attr_accessor :deferred
|
|
|
|
# Entities found.
|
|
# Corresponds to the JSON property `found`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::EntityResult>]
|
|
attr_accessor :found
|
|
|
|
#
|
|
# Corresponds to the JSON property `header`
|
|
# @return [Google::Apis::DatastoreV1beta2::ResponseHeader]
|
|
attr_accessor :header
|
|
|
|
# Entities not found, with only the key populated.
|
|
# Corresponds to the JSON property `missing`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::EntityResult>]
|
|
attr_accessor :missing
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@deferred = args[:deferred] unless args[:deferred].nil?
|
|
@found = args[:found] unless args[:found].nil?
|
|
@header = args[:header] unless args[:header].nil?
|
|
@missing = args[:missing] unless args[:missing].nil?
|
|
end
|
|
end
|
|
|
|
# A set of changes to apply.
|
|
class Mutation
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# Keys of entities to delete. Each key must have a complete key path and must
|
|
# not be reserved/read-only.
|
|
# Corresponds to the JSON property `delete`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::Key>]
|
|
attr_accessor :delete
|
|
|
|
# Ignore a user specified read-only period. Optional.
|
|
# Corresponds to the JSON property `force`
|
|
# @return [Boolean]
|
|
attr_accessor :force
|
|
alias_method :force?, :force
|
|
|
|
# Entities to insert. Each inserted entity's key must have a complete path and
|
|
# must not be reserved/read-only.
|
|
# Corresponds to the JSON property `insert`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::Entity>]
|
|
attr_accessor :insert
|
|
|
|
# Insert entities with a newly allocated ID. Each inserted entity's key must
|
|
# omit the final identifier in its path and must not be reserved/read-only.
|
|
# Corresponds to the JSON property `insertAutoId`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::Entity>]
|
|
attr_accessor :insert_auto_id
|
|
|
|
# Entities to update. Each updated entity's key must have a complete path and
|
|
# must not be reserved/read-only.
|
|
# Corresponds to the JSON property `update`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::Entity>]
|
|
attr_accessor :update
|
|
|
|
# Entities to upsert. Each upserted entity's key must have a complete path and
|
|
# must not be reserved/read-only.
|
|
# Corresponds to the JSON property `upsert`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::Entity>]
|
|
attr_accessor :upsert
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@delete = args[:delete] unless args[:delete].nil?
|
|
@force = args[:force] unless args[:force].nil?
|
|
@insert = args[:insert] unless args[:insert].nil?
|
|
@insert_auto_id = args[:insert_auto_id] unless args[:insert_auto_id].nil?
|
|
@update = args[:update] unless args[:update].nil?
|
|
@upsert = args[:upsert] unless args[:upsert].nil?
|
|
end
|
|
end
|
|
|
|
#
|
|
class MutationResult
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# Number of index writes.
|
|
# Corresponds to the JSON property `indexUpdates`
|
|
# @return [Fixnum]
|
|
attr_accessor :index_updates
|
|
|
|
# Keys for insertAutoId entities. One per entity from the request, in the same
|
|
# order.
|
|
# Corresponds to the JSON property `insertAutoIdKeys`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::Key>]
|
|
attr_accessor :insert_auto_id_keys
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@index_updates = args[:index_updates] unless args[:index_updates].nil?
|
|
@insert_auto_id_keys = args[:insert_auto_id_keys] unless args[:insert_auto_id_keys].nil?
|
|
end
|
|
end
|
|
|
|
# An identifier for a particular subset of entities.
|
|
# Entities are partitioned into various subsets, each used by different datasets
|
|
# and different namespaces within a dataset and so forth.
|
|
class PartitionId
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The dataset ID.
|
|
# Corresponds to the JSON property `datasetId`
|
|
# @return [String]
|
|
attr_accessor :dataset_id
|
|
|
|
# The namespace.
|
|
# Corresponds to the JSON property `namespace`
|
|
# @return [String]
|
|
attr_accessor :namespace
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@dataset_id = args[:dataset_id] unless args[:dataset_id].nil?
|
|
@namespace = args[:namespace] unless args[:namespace].nil?
|
|
end
|
|
end
|
|
|
|
# An entity property.
|
|
class Property
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# A blob key value.
|
|
# Corresponds to the JSON property `blobKeyValue`
|
|
# @return [String]
|
|
attr_accessor :blob_key_value
|
|
|
|
# A blob value. May be a maximum of 1,000,000 bytes. When indexed is true, may
|
|
# have at most 500 bytes.
|
|
# Corresponds to the JSON property `blobValue`
|
|
# @return [String]
|
|
attr_accessor :blob_value
|
|
|
|
# A boolean value.
|
|
# Corresponds to the JSON property `booleanValue`
|
|
# @return [Boolean]
|
|
attr_accessor :boolean_value
|
|
alias_method :boolean_value?, :boolean_value
|
|
|
|
# A timestamp value.
|
|
# Corresponds to the JSON property `dateTimeValue`
|
|
# @return [DateTime]
|
|
attr_accessor :date_time_value
|
|
|
|
# A double value.
|
|
# Corresponds to the JSON property `doubleValue`
|
|
# @return [Float]
|
|
attr_accessor :double_value
|
|
|
|
# An entity.
|
|
# Corresponds to the JSON property `entityValue`
|
|
# @return [Google::Apis::DatastoreV1beta2::Entity]
|
|
attr_accessor :entity_value
|
|
|
|
# If the value should be indexed.
|
|
# The indexed property may be set for a null value. When indexed is true,
|
|
# stringValue is limited to 500 characters and the blob value is limited to 500
|
|
# bytes. Input values by default have indexed set to true; however, you can
|
|
# explicitly set indexed to true if you want. (An output value never has indexed
|
|
# explicitly set to true.) If a value is itself an entity, it cannot have
|
|
# indexed set to true.
|
|
# Corresponds to the JSON property `indexed`
|
|
# @return [Boolean]
|
|
attr_accessor :indexed
|
|
alias_method :indexed?, :indexed
|
|
|
|
# An integer value.
|
|
# Corresponds to the JSON property `integerValue`
|
|
# @return [String]
|
|
attr_accessor :integer_value
|
|
|
|
# A unique identifier for an entity.
|
|
# Corresponds to the JSON property `keyValue`
|
|
# @return [Google::Apis::DatastoreV1beta2::Key]
|
|
attr_accessor :key_value
|
|
|
|
# A list value. Cannot contain another list value. A Value instance that sets
|
|
# field list_value must not set field meaning or field indexed.
|
|
# Corresponds to the JSON property `listValue`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::Value>]
|
|
attr_accessor :list_value
|
|
|
|
# The meaning field is reserved and should not be used.
|
|
# Corresponds to the JSON property `meaning`
|
|
# @return [Fixnum]
|
|
attr_accessor :meaning
|
|
|
|
# A UTF-8 encoded string value. When indexed is true, may have at most 500
|
|
# characters.
|
|
# Corresponds to the JSON property `stringValue`
|
|
# @return [String]
|
|
attr_accessor :string_value
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@blob_key_value = args[:blob_key_value] unless args[:blob_key_value].nil?
|
|
@blob_value = args[:blob_value] unless args[:blob_value].nil?
|
|
@boolean_value = args[:boolean_value] unless args[:boolean_value].nil?
|
|
@date_time_value = args[:date_time_value] unless args[:date_time_value].nil?
|
|
@double_value = args[:double_value] unless args[:double_value].nil?
|
|
@entity_value = args[:entity_value] unless args[:entity_value].nil?
|
|
@indexed = args[:indexed] unless args[:indexed].nil?
|
|
@integer_value = args[:integer_value] unless args[:integer_value].nil?
|
|
@key_value = args[:key_value] unless args[:key_value].nil?
|
|
@list_value = args[:list_value] unless args[:list_value].nil?
|
|
@meaning = args[:meaning] unless args[:meaning].nil?
|
|
@string_value = args[:string_value] unless args[:string_value].nil?
|
|
end
|
|
end
|
|
|
|
# A representation of a property in a projection.
|
|
class PropertyExpression
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The aggregation function to apply to the property. Optional. Can only be used
|
|
# when grouping by at least one property. Must then be set on all properties in
|
|
# the projection that are not being grouped by. Aggregation functions: first
|
|
# selects the first result as determined by the query's order.
|
|
# Corresponds to the JSON property `aggregationFunction`
|
|
# @return [String]
|
|
attr_accessor :aggregation_function
|
|
|
|
# A reference to a property relative to the kind expressions.
|
|
# Corresponds to the JSON property `property`
|
|
# @return [Google::Apis::DatastoreV1beta2::PropertyReference]
|
|
attr_accessor :property
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@aggregation_function = args[:aggregation_function] unless args[:aggregation_function].nil?
|
|
@property = args[:property] unless args[:property].nil?
|
|
end
|
|
end
|
|
|
|
# A filter on a specific property.
|
|
class PropertyFilter
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The operator to filter by. One of lessThan, lessThanOrEqual, greaterThan,
|
|
# greaterThanOrEqual, equal, or hasAncestor.
|
|
# Corresponds to the JSON property `operator`
|
|
# @return [String]
|
|
attr_accessor :operator
|
|
|
|
# A reference to a property relative to the kind expressions.
|
|
# Corresponds to the JSON property `property`
|
|
# @return [Google::Apis::DatastoreV1beta2::PropertyReference]
|
|
attr_accessor :property
|
|
|
|
# A message that can hold any of the supported value types and associated
|
|
# metadata.
|
|
# Corresponds to the JSON property `value`
|
|
# @return [Google::Apis::DatastoreV1beta2::Value]
|
|
attr_accessor :value
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@operator = args[:operator] unless args[:operator].nil?
|
|
@property = args[:property] unless args[:property].nil?
|
|
@value = args[:value] unless args[:value].nil?
|
|
end
|
|
end
|
|
|
|
# The desired order for a specific property.
|
|
class PropertyOrder
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The direction to order by. One of ascending or descending. Optional, defaults
|
|
# to ascending.
|
|
# Corresponds to the JSON property `direction`
|
|
# @return [String]
|
|
attr_accessor :direction
|
|
|
|
# A reference to a property relative to the kind expressions.
|
|
# Corresponds to the JSON property `property`
|
|
# @return [Google::Apis::DatastoreV1beta2::PropertyReference]
|
|
attr_accessor :property
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@direction = args[:direction] unless args[:direction].nil?
|
|
@property = args[:property] unless args[:property].nil?
|
|
end
|
|
end
|
|
|
|
# A reference to a property relative to the kind expressions.
|
|
class PropertyReference
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The name of the property.
|
|
# Corresponds to the JSON property `name`
|
|
# @return [String]
|
|
attr_accessor :name
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@name = args[:name] unless args[:name].nil?
|
|
end
|
|
end
|
|
|
|
# A query.
|
|
class Query
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# An ending point for the query results. Optional. Query cursors are returned in
|
|
# query result batches.
|
|
# Corresponds to the JSON property `endCursor`
|
|
# @return [String]
|
|
attr_accessor :end_cursor
|
|
|
|
# A holder for any type of filter. Exactly one field should be specified.
|
|
# Corresponds to the JSON property `filter`
|
|
# @return [Google::Apis::DatastoreV1beta2::Filter]
|
|
attr_accessor :filter
|
|
|
|
# The properties to group by (if empty, no grouping is applied to the result set)
|
|
# .
|
|
# Corresponds to the JSON property `groupBy`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::PropertyReference>]
|
|
attr_accessor :group_by
|
|
|
|
# The kinds to query (if empty, returns entities from all kinds).
|
|
# Corresponds to the JSON property `kinds`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::KindExpression>]
|
|
attr_accessor :kinds
|
|
|
|
# The maximum number of results to return. Applies after all other constraints.
|
|
# Optional.
|
|
# Corresponds to the JSON property `limit`
|
|
# @return [Fixnum]
|
|
attr_accessor :limit
|
|
|
|
# The number of results to skip. Applies before limit, but after all other
|
|
# constraints (optional, defaults to 0).
|
|
# Corresponds to the JSON property `offset`
|
|
# @return [Fixnum]
|
|
attr_accessor :offset
|
|
|
|
# The order to apply to the query results (if empty, order is unspecified).
|
|
# Corresponds to the JSON property `order`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::PropertyOrder>]
|
|
attr_accessor :order
|
|
|
|
# The projection to return. If not set the entire entity is returned.
|
|
# Corresponds to the JSON property `projection`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::PropertyExpression>]
|
|
attr_accessor :projection
|
|
|
|
# A starting point for the query results. Optional. Query cursors are returned
|
|
# in query result batches.
|
|
# Corresponds to the JSON property `startCursor`
|
|
# @return [String]
|
|
attr_accessor :start_cursor
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@end_cursor = args[:end_cursor] unless args[:end_cursor].nil?
|
|
@filter = args[:filter] unless args[:filter].nil?
|
|
@group_by = args[:group_by] unless args[:group_by].nil?
|
|
@kinds = args[:kinds] unless args[:kinds].nil?
|
|
@limit = args[:limit] unless args[:limit].nil?
|
|
@offset = args[:offset] unless args[:offset].nil?
|
|
@order = args[:order] unless args[:order].nil?
|
|
@projection = args[:projection] unless args[:projection].nil?
|
|
@start_cursor = args[:start_cursor] unless args[:start_cursor].nil?
|
|
end
|
|
end
|
|
|
|
# A batch of results produced by a query.
|
|
class QueryResultBatch
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# A cursor that points to the position after the last result in the batch. May
|
|
# be absent. TODO(arfuller): Once all plans produce cursors update documentation
|
|
# here.
|
|
# Corresponds to the JSON property `endCursor`
|
|
# @return [String]
|
|
attr_accessor :end_cursor
|
|
|
|
# The result type for every entity in entityResults. full for full entities,
|
|
# projection for entities with only projected properties, keyOnly for entities
|
|
# with only a key.
|
|
# Corresponds to the JSON property `entityResultType`
|
|
# @return [String]
|
|
attr_accessor :entity_result_type
|
|
|
|
# The results for this batch.
|
|
# Corresponds to the JSON property `entityResults`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::EntityResult>]
|
|
attr_accessor :entity_results
|
|
|
|
# The state of the query after the current batch. One of notFinished,
|
|
# moreResultsAfterLimit, noMoreResults.
|
|
# Corresponds to the JSON property `moreResults`
|
|
# @return [String]
|
|
attr_accessor :more_results
|
|
|
|
# The number of results skipped because of Query.offset.
|
|
# Corresponds to the JSON property `skippedResults`
|
|
# @return [Fixnum]
|
|
attr_accessor :skipped_results
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@end_cursor = args[:end_cursor] unless args[:end_cursor].nil?
|
|
@entity_result_type = args[:entity_result_type] unless args[:entity_result_type].nil?
|
|
@entity_results = args[:entity_results] unless args[:entity_results].nil?
|
|
@more_results = args[:more_results] unless args[:more_results].nil?
|
|
@skipped_results = args[:skipped_results] unless args[:skipped_results].nil?
|
|
end
|
|
end
|
|
|
|
#
|
|
class ReadOptions
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The read consistency to use. One of default, strong, or eventual. Cannot be
|
|
# set when transaction is set. Lookup and ancestor queries default to strong,
|
|
# global queries default to eventual and cannot be set to strong. Optional.
|
|
# Default is default.
|
|
# Corresponds to the JSON property `readConsistency`
|
|
# @return [String]
|
|
attr_accessor :read_consistency
|
|
|
|
# The transaction to use. Optional.
|
|
# Corresponds to the JSON property `transaction`
|
|
# @return [String]
|
|
attr_accessor :transaction
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@read_consistency = args[:read_consistency] unless args[:read_consistency].nil?
|
|
@transaction = args[:transaction] unless args[:transaction].nil?
|
|
end
|
|
end
|
|
|
|
#
|
|
class ResponseHeader
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# Identifies what kind of resource this is. Value: the fixed string "datastore#
|
|
# responseHeader".
|
|
# Corresponds to the JSON property `kind`
|
|
# @return [String]
|
|
attr_accessor :kind
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@kind = args[:kind] unless args[:kind].nil?
|
|
end
|
|
end
|
|
|
|
#
|
|
class RollbackRequest
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The transaction identifier, returned by a call to beginTransaction.
|
|
# Corresponds to the JSON property `transaction`
|
|
# @return [String]
|
|
attr_accessor :transaction
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@transaction = args[:transaction] unless args[:transaction].nil?
|
|
end
|
|
end
|
|
|
|
#
|
|
class RollbackResponse
|
|
include Google::Apis::Core::Hashable
|
|
|
|
#
|
|
# Corresponds to the JSON property `header`
|
|
# @return [Google::Apis::DatastoreV1beta2::ResponseHeader]
|
|
attr_accessor :header
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@header = args[:header] unless args[:header].nil?
|
|
end
|
|
end
|
|
|
|
#
|
|
class RunQueryRequest
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# A GQL query.
|
|
# Corresponds to the JSON property `gqlQuery`
|
|
# @return [Google::Apis::DatastoreV1beta2::GqlQuery]
|
|
attr_accessor :gql_query
|
|
|
|
# An identifier for a particular subset of entities.
|
|
# Entities are partitioned into various subsets, each used by different datasets
|
|
# and different namespaces within a dataset and so forth.
|
|
# Corresponds to the JSON property `partitionId`
|
|
# @return [Google::Apis::DatastoreV1beta2::PartitionId]
|
|
attr_accessor :partition_id
|
|
|
|
# A query.
|
|
# Corresponds to the JSON property `query`
|
|
# @return [Google::Apis::DatastoreV1beta2::Query]
|
|
attr_accessor :query
|
|
|
|
# The options for this query.
|
|
# Corresponds to the JSON property `readOptions`
|
|
# @return [Google::Apis::DatastoreV1beta2::ReadOptions]
|
|
attr_accessor :read_options
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@gql_query = args[:gql_query] unless args[:gql_query].nil?
|
|
@partition_id = args[:partition_id] unless args[:partition_id].nil?
|
|
@query = args[:query] unless args[:query].nil?
|
|
@read_options = args[:read_options] unless args[:read_options].nil?
|
|
end
|
|
end
|
|
|
|
#
|
|
class RunQueryResponse
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# A batch of results produced by a query.
|
|
# Corresponds to the JSON property `batch`
|
|
# @return [Google::Apis::DatastoreV1beta2::QueryResultBatch]
|
|
attr_accessor :batch
|
|
|
|
#
|
|
# Corresponds to the JSON property `header`
|
|
# @return [Google::Apis::DatastoreV1beta2::ResponseHeader]
|
|
attr_accessor :header
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@batch = args[:batch] unless args[:batch].nil?
|
|
@header = args[:header] unless args[:header].nil?
|
|
end
|
|
end
|
|
|
|
# A message that can hold any of the supported value types and associated
|
|
# metadata.
|
|
class Value
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# A blob key value.
|
|
# Corresponds to the JSON property `blobKeyValue`
|
|
# @return [String]
|
|
attr_accessor :blob_key_value
|
|
|
|
# A blob value. May be a maximum of 1,000,000 bytes. When indexed is true, may
|
|
# have at most 500 bytes.
|
|
# Corresponds to the JSON property `blobValue`
|
|
# @return [String]
|
|
attr_accessor :blob_value
|
|
|
|
# A boolean value.
|
|
# Corresponds to the JSON property `booleanValue`
|
|
# @return [Boolean]
|
|
attr_accessor :boolean_value
|
|
alias_method :boolean_value?, :boolean_value
|
|
|
|
# A timestamp value.
|
|
# Corresponds to the JSON property `dateTimeValue`
|
|
# @return [DateTime]
|
|
attr_accessor :date_time_value
|
|
|
|
# A double value.
|
|
# Corresponds to the JSON property `doubleValue`
|
|
# @return [Float]
|
|
attr_accessor :double_value
|
|
|
|
# An entity.
|
|
# Corresponds to the JSON property `entityValue`
|
|
# @return [Google::Apis::DatastoreV1beta2::Entity]
|
|
attr_accessor :entity_value
|
|
|
|
# If the value should be indexed.
|
|
# The indexed property may be set for a null value. When indexed is true,
|
|
# stringValue is limited to 500 characters and the blob value is limited to 500
|
|
# bytes. Input values by default have indexed set to true; however, you can
|
|
# explicitly set indexed to true if you want. (An output value never has indexed
|
|
# explicitly set to true.) If a value is itself an entity, it cannot have
|
|
# indexed set to true.
|
|
# Corresponds to the JSON property `indexed`
|
|
# @return [Boolean]
|
|
attr_accessor :indexed
|
|
alias_method :indexed?, :indexed
|
|
|
|
# An integer value.
|
|
# Corresponds to the JSON property `integerValue`
|
|
# @return [String]
|
|
attr_accessor :integer_value
|
|
|
|
# A unique identifier for an entity.
|
|
# Corresponds to the JSON property `keyValue`
|
|
# @return [Google::Apis::DatastoreV1beta2::Key]
|
|
attr_accessor :key_value
|
|
|
|
# A list value. Cannot contain another list value. A Value instance that sets
|
|
# field list_value must not set field meaning or field indexed.
|
|
# Corresponds to the JSON property `listValue`
|
|
# @return [Array<Google::Apis::DatastoreV1beta2::Value>]
|
|
attr_accessor :list_value
|
|
|
|
# The meaning field is reserved and should not be used.
|
|
# Corresponds to the JSON property `meaning`
|
|
# @return [Fixnum]
|
|
attr_accessor :meaning
|
|
|
|
# A UTF-8 encoded string value. When indexed is true, may have at most 500
|
|
# characters.
|
|
# Corresponds to the JSON property `stringValue`
|
|
# @return [String]
|
|
attr_accessor :string_value
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@blob_key_value = args[:blob_key_value] unless args[:blob_key_value].nil?
|
|
@blob_value = args[:blob_value] unless args[:blob_value].nil?
|
|
@boolean_value = args[:boolean_value] unless args[:boolean_value].nil?
|
|
@date_time_value = args[:date_time_value] unless args[:date_time_value].nil?
|
|
@double_value = args[:double_value] unless args[:double_value].nil?
|
|
@entity_value = args[:entity_value] unless args[:entity_value].nil?
|
|
@indexed = args[:indexed] unless args[:indexed].nil?
|
|
@integer_value = args[:integer_value] unless args[:integer_value].nil?
|
|
@key_value = args[:key_value] unless args[:key_value].nil?
|
|
@list_value = args[:list_value] unless args[:list_value].nil?
|
|
@meaning = args[:meaning] unless args[:meaning].nil?
|
|
@string_value = args[:string_value] unless args[:string_value].nil?
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|