Class: Desiru::Persistence::Models::ApiRequest
- Defined in:
- lib/desiru/persistence/models/api_request.rb
Overview
Tracks REST API requests
Instance Method Summary collapse
Instance Method Details
#duration_ms ⇒ Object
30 31 32 33 34 |
# File 'lib/desiru/persistence/models/api_request.rb', line 30 def duration_ms return nil unless response_time (response_time * 1000).round end |
#success? ⇒ Boolean
26 27 28 |
# File 'lib/desiru/persistence/models/api_request.rb', line 26 def success? status_code >= 200 && status_code < 300 end |
#validate ⇒ Object
15 16 17 18 19 20 21 22 23 24 |
# File 'lib/desiru/persistence/models/api_request.rb', line 15 def validate super # Validate method column separately due to name conflict with Ruby's method method if self[:method].nil? || self[:method].to_s.empty? errors.add(:method, 'is required') elsif !%w[GET POST PUT PATCH DELETE].include?(self[:method]) errors.add(:method, 'must be GET, POST, PUT, PATCH, or DELETE') end validates_presence i[path status_code] end |