Class: CardDB::DatasetSchema

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

Overview

Wrapper for DatasetSchema

Instance Attribute Summary collapse

Instance Method Summary collapse

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

#dataObject (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

#fieldsObject



581
582
583
# File 'lib/carddb/collection.rb', line 581

def fields
  @fields ||= (data['fields'] || []).map { |f| FieldInfo.new(f) }
end

#filterable_fieldsObject



585
586
587
# File 'lib/carddb/collection.rb', line 585

def filterable_fields
  data['filterableFields'] || []
end


593
594
595
# File 'lib/carddb/collection.rb', line 593

def link_fields
  @link_fields ||= (data['linkFields'] || []).map { |f| LinkFieldInfo.new(f) }
end

#searchable_fieldsObject



589
590
591
# File 'lib/carddb/collection.rb', line 589

def searchable_fields
  data['searchableFields'] || []
end