gitlab-org--gitlab-foss/app/serializers/base_serializer.rb

25 lines
445 B
Ruby
Raw Normal View History

2016-10-28 12:32:07 +00:00
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