Class: RESO::API::QueryFormatter
- Inherits:
-
Object
- Object
- RESO::API::QueryFormatter
- Defined in:
- lib/reso_api/app/models/reso/api/query_formatter.rb
Constant Summary collapse
- OPERATOR_MAP =
{ '>' => 'gt', '>=' => 'ge', '<' => 'lt', '<=' => 'le', '=' => 'eq', '!=' => 'ne' }.freeze
- OPERATOR_PATTERN =
/\s*(>=|<=|!=|>|<|=)\s*/
Class Method Summary collapse
Class Method Details
.format_value(value) ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/reso_api/app/models/reso/api/query_formatter.rb', line 15 def self.format_value(value) case value when String then "'#{value.gsub("'", "''")}'" when Integer then value.to_s when Float then value.to_s when Time, DateTime then value.utc.strftime('%Y-%m-%dT%H:%M:%SZ') when Date then value.strftime('%Y-%m-%d') when TrueClass, FalseClass then value.to_s when NilClass then 'null' else value.to_s end end |
.translate_operator(op) ⇒ Object
28 29 30 |
# File 'lib/reso_api/app/models/reso/api/query_formatter.rb', line 28 def self.translate_operator(op) OPERATOR_MAP[op.strip] || raise(ArgumentError, "Unknown operator: #{op}") end |