25 lines
445 B
Ruby
25 lines
445 B
Ruby
class BaseSerializer
|
|
def initialize(request = {})
|
|
@request = EntityRequest.new(request)
|
|
@opts = { request: @request }
|
|
end
|
|
|
|
def set(opts)
|
|
@request.merge!(opts)
|
|
self
|
|
end
|
|
|
|
def represent(resource, opts = {})
|
|
self.class.entity_class
|
|
.represent(resource, @opts.reverse_merge(opts))
|
|
end
|
|
|
|
def self.entity(entity_class)
|
|
@entity_class ||= entity_class
|
|
end
|
|
|
|
def self.entity_class
|
|
@entity_class
|
|
end
|
|
end
|