Class: CardDB::DatasetFilterValueConnection

Inherits:
Object
  • Object
show all
Defined in:
lib/carddb/collection.rb

Overview

Wrapper for distinct values returned for a single filter field.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(data) ⇒ DatasetFilterValueConnection

Returns a new instance of DatasetFilterValueConnection.



663
664
665
# File 'lib/carddb/collection.rb', line 663

def initialize(data)
  @data = data || {}
end

Instance Attribute Details

#dataObject (readonly)

Returns the value of attribute data.



661
662
663
# File 'lib/carddb/collection.rb', line 661

def data
  @data
end

Instance Method Details

#edgesObject



671
672
673
# File 'lib/carddb/collection.rb', line 671

def edges
  data['edges'] || []
end

#end_cursorObject



687
688
689
# File 'lib/carddb/collection.rb', line 687

def end_cursor
  page_info['endCursor']
end

#fieldObject



667
668
669
# File 'lib/carddb/collection.rb', line 667

def field
  data['field']
end

#has_next_page?Boolean

Returns:

  • (Boolean)


683
684
685
# File 'lib/carddb/collection.rb', line 683

def has_next_page?
  !!page_info['hasNextPage']
end

#page_infoObject



679
680
681
# File 'lib/carddb/collection.rb', line 679

def page_info
  data['pageInfo'] || {}
end

#valuesObject



675
676
677
# File 'lib/carddb/collection.rb', line 675

def values
  @values ||= edges.map { |edge| DatasetFilterValue.new(edge['node']) }
end