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.



587
588
589
# File 'lib/carddb/collection.rb', line 587

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

Instance Attribute Details

#dataObject (readonly)

Returns the value of attribute data.



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

def data
  @data
end

Instance Method Details

#field(key) ⇒ Object

Find a field by key



608
609
610
# File 'lib/carddb/collection.rb', line 608

def field(key)
  fields.find { |f| f.key == key.to_s }
end

#fieldsObject



591
592
593
# File 'lib/carddb/collection.rb', line 591

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

#filterable_fieldsObject



595
596
597
# File 'lib/carddb/collection.rb', line 595

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


603
604
605
# File 'lib/carddb/collection.rb', line 603

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

#searchable_fieldsObject



599
600
601
# File 'lib/carddb/collection.rb', line 599

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