class Drillbit::Resource::Processors::Sorting

Attributes

parameters[RW]
resource[RW]

Public Class Methods

meta(*attrs) click to toggle source
# File lib/drillbit/resource/processors/sorting.rb, line 23
def self.meta(*attrs)
  new(*attrs).meta
end
new(resource, parameters = {}) click to toggle source

rubocop:disable Style/OptionHash

# File lib/drillbit/resource/processors/sorting.rb, line 13
def initialize(resource, parameters = {})
  self.resource   = resource
  self.parameters = Parameters::Sort.new(parameters['sort'])
end
processed(*attrs) click to toggle source

rubocop:enable Style/OptionHash

# File lib/drillbit/resource/processors/sorting.rb, line 19
def self.processed(*attrs)
  new(*attrs).processed
end

Public Instance Methods

meta() click to toggle source
# File lib/drillbit/resource/processors/sorting.rb, line 33
def meta
  return {} unless parameters.present?

  {
    'sort' => parameters.to_h,
  }
end
processed() click to toggle source
# File lib/drillbit/resource/processors/sorting.rb, line 27
def processed
  return resource unless parameters.present?

  resource.order(parameters.to_h)
end