module CubaApi::Serializer

Public Class Methods

included( base ) click to toggle source
# File lib/cuba_api/aspects/serializer.rb, line 43
def self.included( base )
  base.append_aspect :serializer
end

Public Instance Methods

serializer( obj, options = {}) click to toggle source
# File lib/cuba_api/aspects/serializer.rb, line 33
def serializer( obj, options = {})
  if options[:serializer] == false || obj.is_a?( String )
    obj
  else
    s = options[:serializer] ? options[:serializer].new( obj ) : self.class.serializer_factory.new_serializer( obj )
    s.use( options[ :use ] ) if options[ :use ]
    s
  end
end