class Urbanairship::Reports::Helper
Constants
- AUTHORIZED_PRECISIONS
Public Instance Methods
get_period_params(start_date, end_date, precision)
click to toggle source
# File lib/urbanairship/reports/response_statistics.rb, line 7 def get_period_params(start_date, end_date, precision) validates_parameters_presence!(start_date, end_date, precision) validates_precision_format!(precision) begin start_parsed = Time.parse(start_date).iso8601 end_parsed = Time.parse(end_date).iso8601 "?start=#{start_parsed}&end=#{end_parsed}&precision=#{precision}" rescue ArgumentError fail ArgumentError, 'start_date and end_date must be valid date strings' end end
Private Instance Methods
validates_parameters_presence!(start_date, end_date, precision)
click to toggle source
# File lib/urbanairship/reports/response_statistics.rb, line 23 def validates_parameters_presence!(start_date, end_date, precision) return unless [start_date, end_date, precision].any?(&:nil?) fail ArgumentError, 'the parameters cannot be set to nil' end
validates_precision_format!(precision)
click to toggle source
# File lib/urbanairship/reports/response_statistics.rb, line 30 def validates_precision_format!(precision) return if AUTHORIZED_PRECISIONS.include?(precision) fail ArgumentError, 'Precision must be "HOURLY", "DAILY", or "MONTHLY"' end