Class: Google::Apis::SpannerV1::ReadRequest

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

Overview

The request for Read and StreamingRead.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ ReadRequest

Returns a new instance of ReadRequest.



2727
2728
2729
# File 'lib/google/apis/spanner_v1/classes.rb', line 2727

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

Instance Attribute Details

#columnsArray<String>

Required. The columns of table to be returned for each row matching this request. Corresponds to the JSON property columns

Returns:

  • (Array<String>)


2667
2668
2669
# File 'lib/google/apis/spanner_v1/classes.rb', line 2667

def columns
  @columns
end

#indexString

If non-empty, the name of an index on table. This index is used instead of the table primary key when interpreting key_set and sorting result rows. See key_set for further information. Corresponds to the JSON property index

Returns:

  • (String)


2674
2675
2676
# File 'lib/google/apis/spanner_v1/classes.rb', line 2674

def index
  @index
end

#key_setGoogle::Apis::SpannerV1::KeySet

KeySet defines a collection of Cloud Spanner keys and/or key ranges. All the keys are expected to be in the same table or index. The keys need not be sorted in any particular way. If the same key is specified multiple times in the set (for example if two ranges, two keys, or a key and a range overlap), Cloud Spanner behaves as if the key were only specified once. Corresponds to the JSON property keySet



2683
2684
2685
# File 'lib/google/apis/spanner_v1/classes.rb', line 2683

def key_set
  @key_set
end

#limitFixnum

If greater than zero, only the first limit rows are yielded. If limit is zero, the default is no limit. A limit cannot be specified if partition_token is set. Corresponds to the JSON property limit

Returns:

  • (Fixnum)


2690
2691
2692
# File 'lib/google/apis/spanner_v1/classes.rb', line 2690

def limit
  @limit
end

#partition_tokenString

If present, results will be restricted to the specified partition previously created using PartitionRead(). There must be an exact match for the values of fields common to this message and the PartitionReadRequest message used to create this partition_token. Corresponds to the JSON property partitionToken NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


2699
2700
2701
# File 'lib/google/apis/spanner_v1/classes.rb', line 2699

def partition_token
  @partition_token
end

#request_optionsGoogle::Apis::SpannerV1::RequestOptions

Common request options for various APIs. Corresponds to the JSON property requestOptions



2704
2705
2706
# File 'lib/google/apis/spanner_v1/classes.rb', line 2704

def request_options
  @request_options
end

#resume_tokenString

If this request is resuming a previously interrupted read, resume_token should be copied from the last PartialResultSet yielded before the interruption. Doing this enables the new read to resume where the last read left off. The rest of the request parameters must exactly match the request that yielded this token. Corresponds to the JSON property resumeToken NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


2714
2715
2716
# File 'lib/google/apis/spanner_v1/classes.rb', line 2714

def resume_token
  @resume_token
end

#tableString

Required. The name of the table in the database to be read. Corresponds to the JSON property table

Returns:

  • (String)


2719
2720
2721
# File 'lib/google/apis/spanner_v1/classes.rb', line 2719

def table
  @table
end

#transactionGoogle::Apis::SpannerV1::TransactionSelector

This message is used to select the transaction in which a Read or ExecuteSql call runs. See TransactionOptions for more information about transactions. Corresponds to the JSON property transaction



2725
2726
2727
# File 'lib/google/apis/spanner_v1/classes.rb', line 2725

def transaction
  @transaction
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
# File 'lib/google/apis/spanner_v1/classes.rb', line 2732

def update!(**args)
  @columns = args[:columns] if args.key?(:columns)
  @index = args[:index] if args.key?(:index)
  @key_set = args[:key_set] if args.key?(:key_set)
  @limit = args[:limit] if args.key?(:limit)
  @partition_token = args[:partition_token] if args.key?(:partition_token)
  @request_options = args[:request_options] if args.key?(:request_options)
  @resume_token = args[:resume_token] if args.key?(:resume_token)
  @table = args[:table] if args.key?(:table)
  @transaction = args[:transaction] if args.key?(:transaction)
end