Class: Couchbase::Options::GetAndTouch

Inherits:
Base
  • Object
show all
Defined in:
lib/couchbase/options.rb

Overview

Constant Summary collapse

DEFAULT =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

GetAndTouch.new.freeze

Instance Attribute Summary collapse

Attributes inherited from Base

#client_context, #parent_span, #retry_strategy, #timeout

Instance Method Summary collapse

Constructor Details

#initialize(transcoder: JsonTranscoder.new, timeout: nil, retry_strategy: nil, client_context: nil, parent_span: nil) {|self| ... } ⇒ GetAndTouch

Creates an instance of options for Collection#get_and_touch

Parameters:

  • transcoder (JsonTranscoder, #decode(String, Integer)) (defaults to: JsonTranscoder.new)

    used for decoding

  • timeout (Integer, #in_milliseconds, nil) (defaults to: nil)
  • retry_strategy (Proc, nil) (defaults to: nil)

    the custom retry strategy, if set

  • client_context (Hash, nil) (defaults to: nil)

    the client context data, if set

  • parent_span (Span, nil) (defaults to: nil)

    if set holds the parent span, that should be used for this request

Yield Parameters:



216
217
218
219
220
221
222
223
224
# File 'lib/couchbase/options.rb', line 216

def initialize(transcoder: JsonTranscoder.new,
               timeout: nil,
               retry_strategy: nil,
               client_context: nil,
               parent_span: nil)
  super(timeout: timeout, retry_strategy: retry_strategy, client_context: client_context, parent_span: parent_span)
  @transcoder = transcoder
  yield self if block_given?
end

Instance Attribute Details

#transcoderJsonTranscoder, #decode(String, Integer)

Returns:



204
205
206
# File 'lib/couchbase/options.rb', line 204

def transcoder
  @transcoder
end

Instance Method Details

#to_backendObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



227
228
229
230
231
# File 'lib/couchbase/options.rb', line 227

def to_backend
  {
    timeout: Utils::Time.extract_duration(@timeout),
  }
end