Class: Couchbase::Options::View

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

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:



1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
# File 'lib/couchbase/options.rb', line 1689

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)


1661
1662
1663
# File 'lib/couchbase/options.rb', line 1661

def debug
  @debug
end

#end_key#to_json?

Returns:

  • (#to_json, nil)


1650
1651
1652
# File 'lib/couchbase/options.rb', line 1650

def end_key
  @end_key
end

#end_key_doc_idString?

Returns:

  • (String, nil)


1652
1653
1654
# File 'lib/couchbase/options.rb', line 1652

def end_key_doc_id
  @end_key_doc_id
end

#groupBoolean?

Returns:

  • (Boolean, nil)


1654
1655
1656
# File 'lib/couchbase/options.rb', line 1654

def group
  @group
end

#group_levelInteger?

Returns:

  • (Integer, nil)


1655
1656
1657
# File 'lib/couchbase/options.rb', line 1655

def group_level
  @group_level
end

#inclusive_endBoolean?

Returns:

  • (Boolean, nil)


1653
1654
1655
# File 'lib/couchbase/options.rb', line 1653

def inclusive_end
  @inclusive_end
end

#key#to_json?

Returns:

  • (#to_json, nil)


1656
1657
1658
# File 'lib/couchbase/options.rb', line 1656

def key
  @key
end

#keysArray<#to_json>?

Returns:

  • (Array<#to_json>, nil)


1657
1658
1659
# File 'lib/couchbase/options.rb', line 1657

def keys
  @keys
end

#limitInteger

Returns:

  • (Integer)


1648
1649
1650
# File 'lib/couchbase/options.rb', line 1648

def limit
  @limit
end

#namespaceSymbol

Returns:

  • (Symbol)


1646
1647
1648
# File 'lib/couchbase/options.rb', line 1646

def namespace
  @namespace
end

#on_errorSymbol?

Returns:

  • (Symbol, nil)


1660
1661
1662
# File 'lib/couchbase/options.rb', line 1660

def on_error
  @on_error
end

#orderSymbol?

Returns:

  • (Symbol, nil)


1658
1659
1660
# File 'lib/couchbase/options.rb', line 1658

def order
  @order
end

#reduceBoolean?

Returns:

  • (Boolean, nil)


1659
1660
1661
# File 'lib/couchbase/options.rb', line 1659

def reduce
  @reduce
end

#scan_consistencySymbol

Returns:

  • (Symbol)


1645
1646
1647
# File 'lib/couchbase/options.rb', line 1645

def scan_consistency
  @scan_consistency
end

#skipInteger

Returns:

  • (Integer)


1647
1648
1649
# File 'lib/couchbase/options.rb', line 1647

def skip
  @skip
end

#start_key#to_json?

Returns:

  • (#to_json, nil)


1649
1650
1651
# File 'lib/couchbase/options.rb', line 1649

def start_key
  @start_key
end

#start_key_doc_idString?

Returns:

  • (String, nil)


1651
1652
1653
# File 'lib/couchbase/options.rb', line 1651

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)



1736
1737
1738
# File 'lib/couchbase/options.rb', line 1736

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