Sha256: 94734d31b2153b8d433fb842aa1731400252f1326baea525dc67f57fefb66602
Contents?: true
Size: 1.09 KB
Versions: 11
Compression:
Stored size: 1.09 KB
Contents
require_relative '../param_builders/date_param_builder' require_relative 'base_query_param_builder' module Gitlab module Triage module APIQueryBuilders class DateQueryParamBuilder < BaseQueryParamBuilder ATTRIBUTES = %w[updated_at created_at].freeze def self.applicable?(condition) ATTRIBUTES.include?(condition[:attribute].to_s) && condition[:filter_in_ruby] != true end def initialize(condition_hash) date_param_builder = ParamBuilders::DateParamBuilder.new(ATTRIBUTES, condition_hash) super(build_param_name(condition_hash), date_param_builder.param_content) end def param_content param_contents end private def build_param_name(condition_hash) prefix = condition_hash[:attribute].to_s.sub(/_at\z/, '') suffix = case condition_hash[:condition].to_sym when :older_than 'before' when :newer_than 'after' end "#{prefix}_#{suffix}" end end end end end
Version data entries
11 entries across 11 versions & 2 rubygems