class RateLimiter::Validator
Validates whether a model's rate limit has been exceeded.
Public Class Methods
new(record, options = {})
click to toggle source
# File lib/rate_limiter/validator.rb, line 6 def initialize(record, options = {}) @record = record @options = options end
Public Instance Methods
validate()
click to toggle source
# File lib/rate_limiter/validator.rb, line 11 def validate return unless @record.rate_limit_exceeded? @record.errors.add(:base, I18n.t('rate_limiter.errors.rate_limit_exceeded', object_type: object_type, default: default_error_message)) false end
Private Instance Methods
default_error_message()
click to toggle source
# File lib/rate_limiter/validator.rb, line 21 def default_error_message "You cannot create a new #{object_type} yet." end
object_type()
click to toggle source
# File lib/rate_limiter/validator.rb, line 25 def object_type @record.class.name end