Class: Levee::Validator

Inherits:
Object
  • Object
show all
Defined in:
lib/levee/validator.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(params) ⇒ Validator



5
6
7
8
# File 'lib/levee/validator.rb', line 5

def initialize(params)
  self.errors  = []
  self.params = params
end

Instance Attribute Details

#errorsObject

Returns the value of attribute errors.



3
4
5
# File 'lib/levee/validator.rb', line 3

def errors
  @errors
end

#paramsObject

Returns the value of attribute params.



3
4
5
# File 'lib/levee/validator.rb', line 3

def params
  @params
end

Class Method Details

._validationsObject



29
30
31
# File 'lib/levee/validator.rb', line 29

def self._validations
  @validations
end

.validations(*args) ⇒ Object



25
26
27
# File 'lib/levee/validator.rb', line 25

def self.validations(*args)
  @validations = args
end

Instance Method Details

#add_invalid_request_error(message) ⇒ Object



15
16
17
18
# File 'lib/levee/validator.rb', line 15

def add_invalid_request_error(message)
  error = {status: 400, code: 'invalid_request_error', message: message}
  errors << error 
end

#add_invalid_request_error!(message) ⇒ Object



20
21
22
23
# File 'lib/levee/validator.rb', line 20

def add_invalid_request_error!(message)
  add_invalid_request_error(message)
  raise message
end

#validate_paramsObject



10
11
12
13
# File 'lib/levee/validator.rb', line 10

def validate_params
  validations.each { |val| send(val) }
  self
end

#validationsObject



33
34
35
# File 'lib/levee/validator.rb', line 33

def validations
  self.class._validations
end