Class: Api::V5::RewardsFilter

Inherits:
Object
  • Object
show all
Includes:
PaginationConcernFilter
Defined in:
app/filters/api/v5/rewards_filter.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from PaginationConcernFilter

#page_number, #per_page

Constructor Details

#initialize(collections = nil) ⇒ RewardsFilter

Returns a new instance of RewardsFilter.



10
11
12
# File 'app/filters/api/v5/rewards_filter.rb', line 10

def initialize(collections = nil)
  self.collections = collections unless collections.nil?
end

Instance Attribute Details

#collectionsObject

Returns the value of attribute collections.



8
9
10
# File 'app/filters/api/v5/rewards_filter.rb', line 8

def collections
  @collections
end

#error_messageObject

Returns the value of attribute error_message.



8
9
10
# File 'app/filters/api/v5/rewards_filter.rb', line 8

def error_message
  @error_message
end

Instance Method Details

#as_json(context, _version, options = {}) ⇒ Object



14
15
16
17
18
19
20
21
# File 'app/filters/api/v5/rewards_filter.rb', line 14

def as_json(context, _version, options = {})
  options[:each_serializer] = Api::V5::RewardSerializer
  ActiveModelSerializers::SerializableResource.new(collections,
                                                   { serialization_context: context,
                                                     include: %w[restaurant reservation],
                                                     serializer: ActiveModel::Serializer::CollectionSerializer,
                                                     adapter: :json_api }.merge(options)).as_json
end