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
2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 |
# File 'lib/couchbase/options.rb', line 2172 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
2093 2094 2095 |
# File 'lib/couchbase/options.rb', line 2093 def adhoc @adhoc end |
#client_context_id ⇒ String
2094 2095 2096 |
# File 'lib/couchbase/options.rb', line 2094 def client_context_id @client_context_id end |
#flex_index ⇒ Boolean
2103 2104 2105 |
# File 'lib/couchbase/options.rb', line 2103 def flex_index @flex_index end |
#max_parallelism ⇒ Integer
2095 2096 2097 |
# File 'lib/couchbase/options.rb', line 2095 def max_parallelism @max_parallelism end |
#metrics ⇒ Boolean
2101 2102 2103 |
# File 'lib/couchbase/options.rb', line 2101 def metrics @metrics end |
#pipeline_batch ⇒ Integer
2099 2100 2101 |
# File 'lib/couchbase/options.rb', line 2099 def pipeline_batch @pipeline_batch end |
#pipeline_cap ⇒ Integer
2100 2101 2102 |
# File 'lib/couchbase/options.rb', line 2100 def pipeline_cap @pipeline_cap end |
#preserve_expiry ⇒ Boolean
2104 2105 2106 |
# File 'lib/couchbase/options.rb', line 2104 def preserve_expiry @preserve_expiry end |
#profile ⇒ Symbol
2102 2103 2104 |
# File 'lib/couchbase/options.rb', line 2102 def profile @profile end |
#readonly ⇒ Boolean
2096 2097 2098 |
# File 'lib/couchbase/options.rb', line 2096 def readonly @readonly end |
#scan_cap ⇒ Integer
2098 2099 2100 |
# File 'lib/couchbase/options.rb', line 2098 def scan_cap @scan_cap end |
#scan_wait ⇒ Integer, #in_milliseconds
2097 2098 2099 |
# File 'lib/couchbase/options.rb', line 2097 def scan_wait @scan_wait end |
#scope_qualifier ⇒ String
2106 2107 2108 |
# File 'lib/couchbase/options.rb', line 2106 def scope_qualifier @scope_qualifier end |
#transcoder ⇒ JsonTranscoder, #decode(String)
2107 2108 2109 |
# File 'lib/couchbase/options.rb', line 2107 def transcoder @transcoder end |
#use_replica ⇒ Boolean?
2105 2106 2107 |
# File 'lib/couchbase/options.rb', line 2105 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
2250 2251 2252 2253 |
# File 'lib/couchbase/options.rb', line 2250 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
2272 2273 2274 2275 |
# File 'lib/couchbase/options.rb', line 2272 def named_parameters(named) @named_parameters = named @positional_parameters = nil end |
#positional_parameters(positional) ⇒ Object
Sets positional parameters for the query
2258 2259 2260 2261 |
# File 'lib/couchbase/options.rb', line 2258 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
2225 2226 2227 |
# File 'lib/couchbase/options.rb', line 2225 def raw(key, value) @raw_parameters[key] = 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.
2240 2241 2242 2243 |
# File 'lib/couchbase/options.rb', line 2240 def scan_consistency=(level) @mutation_state = nil if @mutation_state @scan_consistency = level end |