Class: Google::Apis::DatastoreV1beta3::Query

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/datastore_v1beta3/classes.rb,
lib/google/apis/datastore_v1beta3/representations.rb,
lib/google/apis/datastore_v1beta3/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.



1479
1480
1481
# File 'lib/google/apis/datastore_v1beta3/classes.rb', line 1479

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

Instance Attribute Details

#distinct_onArray<Google::Apis::DatastoreV1beta3::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). Corresponds to the JSON property distinctOn



1428
1429
1430
# File 'lib/google/apis/datastore_v1beta3/classes.rb', line 1428

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)


1436
1437
1438
# File 'lib/google/apis/datastore_v1beta3/classes.rb', line 1436

def end_cursor
  @end_cursor
end

#filterGoogle::Apis::DatastoreV1beta3::Filter

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



1441
1442
1443
# File 'lib/google/apis/datastore_v1beta3/classes.rb', line 1441

def filter
  @filter
end

#kindArray<Google::Apis::DatastoreV1beta3::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



1447
1448
1449
# File 'lib/google/apis/datastore_v1beta3/classes.rb', line 1447

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)


1453
1454
1455
# File 'lib/google/apis/datastore_v1beta3/classes.rb', line 1453

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)


1459
1460
1461
# File 'lib/google/apis/datastore_v1beta3/classes.rb', line 1459

def offset
  @offset
end

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

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



1464
1465
1466
# File 'lib/google/apis/datastore_v1beta3/classes.rb', line 1464

def order
  @order
end

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

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



1469
1470
1471
# File 'lib/google/apis/datastore_v1beta3/classes.rb', line 1469

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)


1477
1478
1479
# File 'lib/google/apis/datastore_v1beta3/classes.rb', line 1477

def start_cursor
  @start_cursor
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
# File 'lib/google/apis/datastore_v1beta3/classes.rb', line 1484

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