Class: Datadome::ValidationRequest
- Inherits:
-
Object
- Object
- Datadome::ValidationRequest
- Defined in:
- lib/datadome/validation_request.rb
Class Attribute Summary collapse
-
.definitions ⇒ Object
readonly
Returns the value of attribute definitions.
Class Method Summary collapse
Instance Method Summary collapse
- #[](name) ⇒ Object
- #[]=(name, value) ⇒ Object
-
#initialize ⇒ ValidationRequest
constructor
A new instance of ValidationRequest.
- #to_api_params ⇒ Object
Constructor Details
#initialize ⇒ ValidationRequest
Returns a new instance of ValidationRequest.
160 161 162 |
# File 'lib/datadome/validation_request.rb', line 160 def initialize @data = {} end |
Class Attribute Details
.definitions ⇒ Object (readonly)
Returns the value of attribute definitions.
10 11 12 |
# File 'lib/datadome/validation_request.rb', line 10 def definitions @definitions end |
Class Method Details
.from_env(env) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/datadome/validation_request.rb', line 20 def from_env(env) request = ::Rack::Request.new(env) new.tap do |validation_request| definitions.each do |definition| value = definition[:block].call(env, request) next if value.nil? validation_request[definition[:param_name]] = limit_size(value, size: definition[:max_size]) end end end |
.limit_size(value, size:) ⇒ Object
12 13 14 15 16 17 18 |
# File 'lib/datadome/validation_request.rb', line 12 def limit_size(value, size:) if value && size value[0, size] else value end end |
Instance Method Details
#[](name) ⇒ Object
164 165 166 |
# File 'lib/datadome/validation_request.rb', line 164 def [](name) @data[name] end |
#[]=(name, value) ⇒ Object
168 169 170 |
# File 'lib/datadome/validation_request.rb', line 168 def []=(name, value) @data[name] = value end |
#to_api_params ⇒ Object
172 173 174 |
# File 'lib/datadome/validation_request.rb', line 172 def to_api_params @data end |