Class: Couchbase::Options::View

Inherits:
Base
  • Object
show all
Defined in:
lib/couchbase/options.rb,
/Users/sergey.auseyau/code/couchbase-ruby-client/lib/couchbase/options.rb
more...

Overview

Options for Cluster#view_query

Instance Attribute Summary collapse

Attributes inherited from Base

#client_context, #parent_span, #retry_strategy, #timeout

Instance Method Summary collapse

Constructor Details

#initialize(scan_consistency: :not_bounded, namespace: :production, skip: nil, limit: nil, start_key: nil, end_key: nil, start_key_doc_id: nil, end_key_doc_id: nil, inclusive_end: nil, group: nil, group_level: nil, key: nil, keys: nil, order: nil, reduce: nil, on_error: nil, debug: false, timeout: nil, retry_strategy: nil, client_context: nil, parent_span: nil) {|self| ... } ⇒ View

Returns a new instance of View.

Parameters:

  • scan_consistency (:not_bounded, :request_plus, :update_after) (defaults to: :not_bounded)

    Specifies the level of consistency for the query

  • namespace (:production, :development) (defaults to: :production)
  • skip (Integer, nil) (defaults to: nil)

    Specifies the number of results to skip from the start of the result set

  • limit (Integer, nil) (defaults to: nil)

    Specifies the maximum number of results to return

  • start_key (#to_json, nil) (defaults to: nil)

    Specifies the key, to which the engine has to skip before result generation

  • end_key (#to_json, nil) (defaults to: nil)

    Specifies the key, at which the result generation has to be stopped

  • start_key_doc_id (String, nil) (defaults to: nil)

    Specifies the document id in case #start_key gives multiple results within the index

  • end_key_doc_id (String, nil) (defaults to: nil)

    Specifies the document id in case #end_key gives multiple results within the index

  • inclusive_end (Boolean, nil) (defaults to: nil)

    Specifies whether the #end_key/##end_key_doc_id values should be inclusive

  • group (Boolean, nil) (defaults to: nil)

    Specifies whether to enable grouping of the results

  • group_level (Integer, nil) (defaults to: nil)

    Specifies the depth within the key to group the results

  • key (#to_json, nil) (defaults to: nil)

    Specifies the key to fetch from the index

  • keys (Array<#to_json>, nil) (defaults to: nil)

    Specifies set of the keys to fetch from the index

  • order (:ascending, :descending, nil) (defaults to: nil)

    Specifies the order of the results that should be returned

  • reduce (Boolean, nil) (defaults to: nil)

    Specifies whether to enable the reduction function associated with this particular view index

  • on_error (:stop, :continue, nil) (defaults to: nil)

    Specifies the behaviour of the view engine should an error occur during the gathering of view index results which would result in only partial results being available

  • debug (Boolean, nil) (defaults to: false)

    allows to return debug information as part of the view response

  • 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:

[View source]

1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
# File 'lib/couchbase/options.rb', line 1797

def initialize(scan_consistency: :not_bounded,
               namespace: :production,
               skip: nil,
               limit: nil,
               start_key: nil,
               end_key: nil,
               start_key_doc_id: nil,
               end_key_doc_id: nil,
               inclusive_end: nil,
               group: nil,
               group_level: nil,
               key: nil,
               keys: nil,
               order: nil,
               reduce: nil,
               on_error: nil,
               debug: false,
               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)

  @scan_consistency = scan_consistency
  @namespace = namespace
  @skip = skip
  @limit = limit
  @start_key = start_key
  @end_key = end_key
  @start_key_doc_id = start_key_doc_id
  @end_key_doc_id = end_key_doc_id
  @inclusive_end = inclusive_end
  @group = group
  @group_level = group_level
  @key = key
  @keys = keys
  @order = order
  @reduce = reduce
  @on_error = on_error
  @debug = debug
  yield self if block_given?
end

Instance Attribute Details

#debugBoolean?

Returns:

  • (Boolean, nil)

1769
1770
1771
# File 'lib/couchbase/options.rb', line 1769

def debug
  @debug
end

#end_key#to_json?

Returns:

  • (#to_json, nil)

1758
1759
1760
# File 'lib/couchbase/options.rb', line 1758

def end_key
  @end_key
end

#end_key_doc_idString?

Returns:

  • (String, nil)

1760
1761
1762
# File 'lib/couchbase/options.rb', line 1760

def end_key_doc_id
  @end_key_doc_id
end

#groupBoolean?

Returns:

  • (Boolean, nil)

1762
1763
1764
# File 'lib/couchbase/options.rb', line 1762

def group
  @group
end

#group_levelInteger?

Returns:

  • (Integer, nil)

1763
1764
1765
# File 'lib/couchbase/options.rb', line 1763

def group_level
  @group_level
end

#inclusive_endBoolean?

Returns:

  • (Boolean, nil)

1761
1762
1763
# File 'lib/couchbase/options.rb', line 1761

def inclusive_end
  @inclusive_end
end

#key#to_json?

Returns:

  • (#to_json, nil)

1764
1765
1766
# File 'lib/couchbase/options.rb', line 1764

def key
  @key
end

#keysArray<#to_json>?

Returns:

  • (Array<#to_json>, nil)

1765
1766
1767
# File 'lib/couchbase/options.rb', line 1765

def keys
  @keys
end

#limitInteger

Returns:

  • (Integer)

1756
1757
1758
# File 'lib/couchbase/options.rb', line 1756

def limit
  @limit
end

#namespaceSymbol

Returns:

  • (Symbol)

1754
1755
1756
# File 'lib/couchbase/options.rb', line 1754

def namespace
  @namespace
end

#on_errorSymbol?

Returns:

  • (Symbol, nil)

1768
1769
1770
# File 'lib/couchbase/options.rb', line 1768

def on_error
  @on_error
end

#orderSymbol?

Returns:

  • (Symbol, nil)

1766
1767
1768
# File 'lib/couchbase/options.rb', line 1766

def order
  @order
end

#reduceBoolean?

Returns:

  • (Boolean, nil)

1767
1768
1769
# File 'lib/couchbase/options.rb', line 1767

def reduce
  @reduce
end

#scan_consistencySymbol

Returns:

  • (Symbol)

1753
1754
1755
# File 'lib/couchbase/options.rb', line 1753

def scan_consistency
  @scan_consistency
end

#skipInteger

Returns:

  • (Integer)

1755
1756
1757
# File 'lib/couchbase/options.rb', line 1755

def skip
  @skip
end

#start_key#to_json?

Returns:

  • (#to_json, nil)

1757
1758
1759
# File 'lib/couchbase/options.rb', line 1757

def start_key
  @start_key
end

#start_key_doc_idString?

Returns:

  • (String, nil)

1759
1760
1761
# File 'lib/couchbase/options.rb', line 1759

def start_key_doc_id
  @start_key_doc_id
end

Instance Method Details

#raw(key, value) ⇒ Object

Allows providing custom JSON key/value pairs for advanced usage

Parameters:

  • key (String)

    the parameter name (key of the JSON property)

  • value (Object)

    the parameter value (value of the JSON property)

[View source]

1844
1845
1846
# File 'lib/couchbase/options.rb', line 1844

def raw(key, value)
  @raw_parameters[key] = JSON.generate(value)
end