Class: Google::Apis::DatastoreV1::Query

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/datastore_v1/classes.rb,
lib/google/apis/datastore_v1/representations.rb,
lib/google/apis/datastore_v1/representations.rb

Overview

A query for entities.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Query

Returns a new instance of Query.



2217
2218
2219
# File 'lib/google/apis/datastore_v1/classes.rb', line 2217

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#distinct_onArray<Google::Apis::DatastoreV1::PropertyReference>

The properties to make distinct. The query results will contain the first result for each distinct combination of values for the given properties (if empty, all results are returned). Requires: * If order is specified, the set of distinct on properties must appear before the non-distinct on properties in order. Corresponds to the JSON property distinctOn



2166
2167
2168
# File 'lib/google/apis/datastore_v1/classes.rb', line 2166

def distinct_on
  @distinct_on
end

#end_cursorString

An ending point for the query results. Query cursors are returned in query result batches and can only be used to limit the same query. Corresponds to the JSON property endCursor NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


2174
2175
2176
# File 'lib/google/apis/datastore_v1/classes.rb', line 2174

def end_cursor
  @end_cursor
end

#filterGoogle::Apis::DatastoreV1::Filter

A holder for any type of filter. Corresponds to the JSON property filter



2179
2180
2181
# File 'lib/google/apis/datastore_v1/classes.rb', line 2179

def filter
  @filter
end

#kindArray<Google::Apis::DatastoreV1::KindExpression>

The kinds to query (if empty, returns entities of all kinds). Currently at most 1 kind may be specified. Corresponds to the JSON property kind



2185
2186
2187
# File 'lib/google/apis/datastore_v1/classes.rb', line 2185

def kind
  @kind
end

#limitFixnum

The maximum number of results to return. Applies after all other constraints. Optional. Unspecified is interpreted as no limit. Must be >= 0 if specified. Corresponds to the JSON property limit

Returns:

  • (Fixnum)


2191
2192
2193
# File 'lib/google/apis/datastore_v1/classes.rb', line 2191

def limit
  @limit
end

#offsetFixnum

The number of results to skip. Applies before limit, but after all other constraints. Optional. Must be >= 0 if specified. Corresponds to the JSON property offset

Returns:

  • (Fixnum)


2197
2198
2199
# File 'lib/google/apis/datastore_v1/classes.rb', line 2197

def offset
  @offset
end

#orderArray<Google::Apis::DatastoreV1::PropertyOrder>

The order to apply to the query results (if empty, order is unspecified). Corresponds to the JSON property order



2202
2203
2204
# File 'lib/google/apis/datastore_v1/classes.rb', line 2202

def order
  @order
end

#projectionArray<Google::Apis::DatastoreV1::Projection>

The projection to return. Defaults to returning all properties. Corresponds to the JSON property projection



2207
2208
2209
# File 'lib/google/apis/datastore_v1/classes.rb', line 2207

def projection
  @projection
end

#start_cursorString

A starting point for the query results. Query cursors are returned in query result batches and can only be used to continue the same query. Corresponds to the JSON property startCursor NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


2215
2216
2217
# File 'lib/google/apis/datastore_v1/classes.rb', line 2215

def start_cursor
  @start_cursor
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
# File 'lib/google/apis/datastore_v1/classes.rb', line 2222

def update!(**args)
  @distinct_on = args[:distinct_on] if args.key?(:distinct_on)
  @end_cursor = args[:end_cursor] if args.key?(:end_cursor)
  @filter = args[:filter] if args.key?(:filter)
  @kind = args[:kind] if args.key?(:kind)
  @limit = args[:limit] if args.key?(:limit)
  @offset = args[:offset] if args.key?(:offset)
  @order = args[:order] if args.key?(:order)
  @projection = args[:projection] if args.key?(:projection)
  @start_cursor = args[:start_cursor] if args.key?(:start_cursor)
end