Class: Couchbase::Options::Query
- Defined in:
- lib/couchbase/options.rb,
/home/runner/work/couchbase-ruby-client/couchbase-ruby-client/lib/couchbase/options.rb
Overview
Options for Cluster#query
Instance Attribute Summary collapse
- #adhoc ⇒ Boolean
- #client_context_id ⇒ String
- #flex_index ⇒ Boolean
- #max_parallelism ⇒ Integer
- #metrics ⇒ Boolean
- #pipeline_batch ⇒ Integer
- #pipeline_cap ⇒ Integer
- #preserve_expiry ⇒ Boolean
- #profile ⇒ Symbol
- #readonly ⇒ Boolean
- #scan_cap ⇒ Integer
- #scan_wait ⇒ Integer, #in_milliseconds
- #scope_qualifier ⇒ String
- #transcoder ⇒ JsonTranscoder, #decode(String)
- #use_replica ⇒ Boolean?
Attributes inherited from Base
#client_context, #parent_span, #retry_strategy, #timeout
Instance Method Summary collapse
-
#consistent_with(mutation_state) ⇒ Object
Sets the mutation tokens this query should be consistent with.
-
#initialize(adhoc: true, client_context_id: nil, max_parallelism: nil, readonly: false, scan_wait: nil, scan_cap: nil, pipeline_cap: nil, pipeline_batch: nil, metrics: nil, profile: :off, flex_index: nil, preserve_expiry: nil, use_replica: nil, scope_qualifier: nil, scan_consistency: :not_bounded, mutation_state: nil, transcoder: JsonTranscoder.new, positional_parameters: nil, named_parameters: nil, timeout: nil, retry_strategy: nil, client_context: nil, parent_span: nil) {|self| ... } ⇒ Query
constructor
Creates new instance of options for Cluster#query.
-
#named_parameters(named) ⇒ Object
Sets named parameters for the query.
-
#positional_parameters(positional) ⇒ Object
Sets positional parameters for the query.
-
#raw(key, value) ⇒ Object
Allows providing custom JSON key/value pairs for advanced usage.
-
#scan_consistency=(level) ⇒ Object
Customizes the consistency guarantees for this query.
Constructor Details
#initialize(adhoc: true, client_context_id: nil, max_parallelism: nil, readonly: false, scan_wait: nil, scan_cap: nil, pipeline_cap: nil, pipeline_batch: nil, metrics: nil, profile: :off, flex_index: nil, preserve_expiry: nil, use_replica: nil, scope_qualifier: nil, scan_consistency: :not_bounded, mutation_state: nil, transcoder: JsonTranscoder.new, positional_parameters: nil, named_parameters: nil, timeout: nil, retry_strategy: nil, client_context: nil, parent_span: nil) {|self| ... } ⇒ Query
Either positional_parameters or named_parameters may be specified.
Creates new instance of options for Cluster#query
2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 |
# File 'lib/couchbase/options.rb', line 2267 def initialize(adhoc: true, client_context_id: nil, max_parallelism: nil, readonly: false, scan_wait: nil, scan_cap: nil, pipeline_cap: nil, pipeline_batch: nil, metrics: nil, profile: :off, flex_index: nil, preserve_expiry: nil, use_replica: nil, scope_qualifier: nil, scan_consistency: :not_bounded, mutation_state: nil, transcoder: JsonTranscoder.new, positional_parameters: nil, named_parameters: nil, timeout: nil, retry_strategy: nil, client_context: nil, parent_span: nil) raise ArgumentError, "Cannot pass positional and named parameters at the same time" if positional_parameters && named_parameters super(timeout: timeout, retry_strategy: retry_strategy, client_context: client_context, parent_span: parent_span) @adhoc = adhoc @client_context_id = client_context_id @max_parallelism = max_parallelism @readonly = readonly @scan_wait = scan_wait @scan_cap = scan_cap @pipeline_cap = pipeline_cap @pipeline_batch = pipeline_batch @metrics = metrics @profile = profile @flex_index = flex_index @preserve_expiry = preserve_expiry @use_replica = use_replica @scope_qualifier = scope_qualifier @scan_consistency = scan_consistency @mutation_state = mutation_state @transcoder = transcoder @positional_parameters = positional_parameters @named_parameters = named_parameters @raw_parameters = {} yield self if block_given? end |
Instance Attribute Details
#adhoc ⇒ Boolean
2188 2189 2190 |
# File 'lib/couchbase/options.rb', line 2188 def adhoc @adhoc end |
#client_context_id ⇒ String
2189 2190 2191 |
# File 'lib/couchbase/options.rb', line 2189 def client_context_id @client_context_id end |
#flex_index ⇒ Boolean
2198 2199 2200 |
# File 'lib/couchbase/options.rb', line 2198 def flex_index @flex_index end |
#max_parallelism ⇒ Integer
2190 2191 2192 |
# File 'lib/couchbase/options.rb', line 2190 def max_parallelism @max_parallelism end |
#metrics ⇒ Boolean
2196 2197 2198 |
# File 'lib/couchbase/options.rb', line 2196 def metrics @metrics end |
#pipeline_batch ⇒ Integer
2194 2195 2196 |
# File 'lib/couchbase/options.rb', line 2194 def pipeline_batch @pipeline_batch end |
#pipeline_cap ⇒ Integer
2195 2196 2197 |
# File 'lib/couchbase/options.rb', line 2195 def pipeline_cap @pipeline_cap end |
#preserve_expiry ⇒ Boolean
2199 2200 2201 |
# File 'lib/couchbase/options.rb', line 2199 def preserve_expiry @preserve_expiry end |
#profile ⇒ Symbol
2197 2198 2199 |
# File 'lib/couchbase/options.rb', line 2197 def profile @profile end |
#readonly ⇒ Boolean
2191 2192 2193 |
# File 'lib/couchbase/options.rb', line 2191 def readonly @readonly end |
#scan_cap ⇒ Integer
2193 2194 2195 |
# File 'lib/couchbase/options.rb', line 2193 def scan_cap @scan_cap end |
#scan_wait ⇒ Integer, #in_milliseconds
2192 2193 2194 |
# File 'lib/couchbase/options.rb', line 2192 def scan_wait @scan_wait end |
#scope_qualifier ⇒ String
2201 2202 2203 |
# File 'lib/couchbase/options.rb', line 2201 def scope_qualifier @scope_qualifier end |
#transcoder ⇒ JsonTranscoder, #decode(String)
2202 2203 2204 |
# File 'lib/couchbase/options.rb', line 2202 def transcoder @transcoder end |
#use_replica ⇒ Boolean?
2200 2201 2202 |
# File 'lib/couchbase/options.rb', line 2200 def use_replica @use_replica end |
Instance Method Details
#consistent_with(mutation_state) ⇒ Object
overrides consistency level set by #scan_consistency=
Sets the mutation tokens this query should be consistent with
2345 2346 2347 2348 |
# File 'lib/couchbase/options.rb', line 2345 def consistent_with(mutation_state) @scan_consistency = nil if @scan_consistency @mutation_state = mutation_state end |
#named_parameters(named) ⇒ Object
Sets named parameters for the query
2367 2368 2369 2370 |
# File 'lib/couchbase/options.rb', line 2367 def named_parameters(named) @named_parameters = named @positional_parameters = nil end |
#positional_parameters(positional) ⇒ Object
Sets positional parameters for the query
2353 2354 2355 2356 |
# File 'lib/couchbase/options.rb', line 2353 def positional_parameters(positional) @positional_parameters = positional @named_parameters = nil end |
#raw(key, value) ⇒ Object
Allows providing custom JSON key/value pairs for advanced usage
2320 2321 2322 |
# File 'lib/couchbase/options.rb', line 2320 def raw(key, value) @raw_parameters[key.to_s] = JSON.generate(value) end |
#scan_consistency=(level) ⇒ Object
overrides consistency level set by #consistent_with
Customizes the consistency guarantees for this query
[+:not_bounded+] The indexer will return whatever state it has to the query engine at the time of query. This is the default (for single-statement requests).
[+:request_plus+] The indexer will wait until all mutations have been processed at the time of request before returning to the query engine.
2335 2336 2337 2338 |
# File 'lib/couchbase/options.rb', line 2335 def scan_consistency=(level) @mutation_state = nil if @mutation_state @scan_consistency = level end |