Class: CardDB::DatasetSchema
- Inherits:
-
Object
- Object
- CardDB::DatasetSchema
- Defined in:
- lib/carddb/collection.rb
Overview
Wrapper for DatasetSchema
Instance Attribute Summary collapse
-
#data ⇒ Object
readonly
Returns the value of attribute data.
Instance Method Summary collapse
-
#field(key) ⇒ Object
Find a field by key.
- #field_keys ⇒ Object
- #fields ⇒ Object
- #filterable_fields ⇒ Object
-
#initialize(data) ⇒ DatasetSchema
constructor
A new instance of DatasetSchema.
- #link_fields ⇒ Object
- #searchable_fields ⇒ Object
Constructor Details
#initialize(data) ⇒ DatasetSchema
Returns a new instance of DatasetSchema.
619 620 621 |
# File 'lib/carddb/collection.rb', line 619 def initialize(data) @data = data || {} end |
Instance Attribute Details
#data ⇒ Object (readonly)
Returns the value of attribute data.
617 618 619 |
# File 'lib/carddb/collection.rb', line 617 def data @data end |
Instance Method Details
#field(key) ⇒ Object
Find a field by key
644 645 646 |
# File 'lib/carddb/collection.rb', line 644 def field(key) fields.find { |f| f.key == key.to_s } end |
#field_keys ⇒ Object
627 628 629 |
# File 'lib/carddb/collection.rb', line 627 def field_keys fields.map(&:key) end |
#fields ⇒ Object
623 624 625 |
# File 'lib/carddb/collection.rb', line 623 def fields @fields ||= (data['fields'] || []).map { |f| FieldInfo.new(f) } end |
#filterable_fields ⇒ Object
631 632 633 |
# File 'lib/carddb/collection.rb', line 631 def filterable_fields data['filterableFields'] || [] end |
#link_fields ⇒ Object
639 640 641 |
# File 'lib/carddb/collection.rb', line 639 def link_fields @link_fields ||= (data['linkFields'] || []).map { |f| LinkFieldInfo.new(f) } end |
#searchable_fields ⇒ Object
635 636 637 |
# File 'lib/carddb/collection.rb', line 635 def searchable_fields data['searchableFields'] || [] end |