Class: RestPack::Serializer::Factory

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

Class Method Summary collapse

Class Method Details

.classify(identifier) ⇒ Object



9
10
11
12
13
14
15
16
17
# File 'lib/restpack_serializer/factory.rb', line 9

def self.classify(identifier)
  normalised_identifier = identifier.to_s.underscore
  [normalised_identifier, normalised_identifier.singularize].each do |format|
    klass = RestPack::Serializer.class_map[format]
    return klass.new if klass
  end

  raise "Invalid RestPack::Serializer : #{identifier}"
end

.create(*identifiers) ⇒ Object



2
3
4
5
# File 'lib/restpack_serializer/factory.rb', line 2

def self.create(*identifiers)
  serializers = identifiers.map { |identifier| self.classify(identifier) }
  serializers.count == 1 ? serializers.first : serializers
end