Class: AcceptableApi::Mappers

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

Instance Method Summary collapse

Constructor Details

#initialize(mappers) ⇒ Mappers

Returns a new instance of Mappers.



36
37
38
# File 'lib/acceptable_api.rb', line 36

def initialize mappers
  self.mappers = mappers
end

Instance Method Details

#mime_typesObject



49
50
51
# File 'lib/acceptable_api.rb', line 49

def mime_types
  mappers.map { |m| m.mime_type }.sort.uniq
end

#to(accepts) ⇒ Object



40
41
42
43
44
45
46
47
# File 'lib/acceptable_api.rb', line 40

def to accepts
  acceptable_mime_types = accepts.order mime_types
  acceptable_mappers = acceptable_mime_types.map { |mt|
	mappers.detect { |m| m.mime_type == mt }
  }
  return acceptable_mappers if acceptable_mappers.any?
  [ MissingMapper.instance ]
end