class Gitlab::Triage::Limiters::DateFieldLimiter

Constants

LIMITS

Public Class Methods

limiter_parameters() click to toggle source
# File lib/gitlab/triage/limiters/date_field_limiter.rb, line 10
def self.limiter_parameters
  [
    {
      name: :most_recent,
      type: Integer
    },
    {
      name: :oldest,
      type: Integer
    }
  ]
end

Public Instance Methods

initialize_variables(limit) click to toggle source
# File lib/gitlab/triage/limiters/date_field_limiter.rb, line 23
def initialize_variables(limit)
  @criterion = LIMITS.find(&limit.method(:[]))
  @threshold = limit[@criterion]
end
limit() click to toggle source
# File lib/gitlab/triage/limiters/date_field_limiter.rb, line 28
def limit
  case @criterion
  when :oldest
    @resources.first(@threshold)
  when :most_recent
    @resources.last(@threshold).reverse
  end
end

Private Instance Methods

initialize_resources(resources) click to toggle source
# File lib/gitlab/triage/limiters/date_field_limiter.rb, line 39
def initialize_resources(resources)
  resources.sort_by { |res| res[:created_at] }
end