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.
629 630 631 |
# File 'lib/carddb/collection.rb', line 629 def initialize(data) @data = data || {} end |
Instance Attribute Details
#data ⇒ Object (readonly)
Returns the value of attribute data.
627 628 629 |
# File 'lib/carddb/collection.rb', line 627 def data @data end |
Instance Method Details
#field(key) ⇒ Object
Find a field by key
654 655 656 |
# File 'lib/carddb/collection.rb', line 654 def field(key) fields.find { |f| f.key == key.to_s } end |
#field_keys ⇒ Object
637 638 639 |
# File 'lib/carddb/collection.rb', line 637 def field_keys fields.map(&:key) end |
#fields ⇒ Object
633 634 635 |
# File 'lib/carddb/collection.rb', line 633 def fields @fields ||= (data['fields'] || []).map { |f| FieldInfo.new(f) } end |
#filterable_fields ⇒ Object
641 642 643 |
# File 'lib/carddb/collection.rb', line 641 def filterable_fields data['filterableFields'] || [] end |
#link_fields ⇒ Object
649 650 651 |
# File 'lib/carddb/collection.rb', line 649 def link_fields @link_fields ||= (data['linkFields'] || []).map { |f| LinkFieldInfo.new(f) } end |
#searchable_fields ⇒ Object
645 646 647 |
# File 'lib/carddb/collection.rb', line 645 def searchable_fields data['searchableFields'] || [] end |