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.



571
572
573
# File 'lib/carddb/collection.rb', line 571

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

Instance Attribute Details

#dataObject (readonly)

Returns the value of attribute data.



569
570
571
# File 'lib/carddb/collection.rb', line 569

def data
  @data
end

Instance Method Details

#field(key) ⇒ Object

Find a field by key



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

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

#fieldsObject



575
576
577
# File 'lib/carddb/collection.rb', line 575

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

#filterable_fieldsObject



579
580
581
# File 'lib/carddb/collection.rb', line 579

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


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

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

#searchable_fieldsObject



583
584
585
# File 'lib/carddb/collection.rb', line 583

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