class EasyOrderable::Assorter

Attributes

args[R]
custom_association_names[R]
relation[R]

Public Class Methods

new(relation, args, custom_association_names) click to toggle source
# File lib/easy_orderable/assorter.rb, line 3
def initialize(relation, args, custom_association_names)
  @relation = relation
  @args = args
  @custom_association_names = custom_association_names
end

Public Instance Methods

call() click to toggle source
# File lib/easy_orderable/assorter.rb, line 9
def call
  joined_relation.order(*order_args)
end

Private Instance Methods

joined_relation() click to toggle source
# File lib/easy_orderable/assorter.rb, line 17
def joined_relation
  Joiner.new(relation, args, custom_association_names).call
end
order_args() click to toggle source
# File lib/easy_orderable/assorter.rb, line 21
def order_args
  OrderArgumentsTransformer.new(args).call
end