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.
- #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.
577 578 579 |
# File 'lib/carddb/collection.rb', line 577 def initialize(data) @data = data || {} end |
Instance Attribute Details
#data ⇒ Object (readonly)
Returns the value of attribute data.
575 576 577 |
# File 'lib/carddb/collection.rb', line 575 def data @data end |
Instance Method Details
#field(key) ⇒ Object
Find a field by key
598 599 600 |
# File 'lib/carddb/collection.rb', line 598 def field(key) fields.find { |f| f.key == key.to_s } end |
#fields ⇒ Object
581 582 583 |
# File 'lib/carddb/collection.rb', line 581 def fields @fields ||= (data['fields'] || []).map { |f| FieldInfo.new(f) } end |
#filterable_fields ⇒ Object
585 586 587 |
# File 'lib/carddb/collection.rb', line 585 def filterable_fields data['filterableFields'] || [] end |
#link_fields ⇒ Object
593 594 595 |
# File 'lib/carddb/collection.rb', line 593 def link_fields @link_fields ||= (data['linkFields'] || []).map { |f| LinkFieldInfo.new(f) } end |
#searchable_fields ⇒ Object
589 590 591 |
# File 'lib/carddb/collection.rb', line 589 def searchable_fields data['searchableFields'] || [] end |