Module: Sheetah::Messaging::Validations::ClassMethods

Defined in:
lib/sheetah/messaging/validations.rb

Instance Method Summary collapse

Instance Method Details

#def_validator(base: validator&.class || BaseValidator, &block) ⇒ Object



9
10
11
# File 'lib/sheetah/messaging/validations.rb', line 9

def def_validator(base: validator&.class || BaseValidator, &block)
  @validator = Class.new(base, &block).new.freeze
end

#validate(message) ⇒ Object



21
22
23
# File 'lib/sheetah/messaging/validations.rb', line 21

def validate(message)
  validator&.validate(message)
end

#validatorObject



13
14
15
16
17
18
19
# File 'lib/sheetah/messaging/validations.rb', line 13

def validator
  if defined?(@validator)
    @validator
  elsif superclass.respond_to?(:validator)
    superclass.validator
  end
end