class Riak::Client::BeefcakeProtobuffsBackend::TimeSeriesGetOperator
Public Class Methods
new(backend, convert_timestamp)
click to toggle source
Calls superclass method
Riak::Client::BeefcakeProtobuffsBackend::Operator::new
# File lib/riak/client/beefcake/time_series_get_operator.rb, line 10 def initialize(backend, convert_timestamp) super(backend) @convert_timestamp = convert_timestamp end
Public Instance Methods
get(table_name, key_components, options = {})
click to toggle source
# File lib/riak/client/beefcake/time_series_get_operator.rb, line 15 def get(table_name, key_components, options = {}) codec = TsCellCodec.new(@convert_timestamp) request_options = options.merge(table: table_name, key: codec.cells_for(key_components)) request = TsGetReq.new request_options result = begin backend.protocol do |p| p.write :TsGetReq, request result = p.expect :TsGetResp, TsGetResp, empty_body_acceptable: true end rescue Riak::ProtobuffsErrorResponse => e raise unless e.code == 10 return nil end return nil if result == :empty Riak::TimeSeries::Collection.new(result.rows.map do |row| Riak::TimeSeries::Row.new codec.scalars_for row.cells end.to_a) end