Class: Io::Flow::V0::Models::QueryFilterStructuredForm

Inherits:
QueryFilterForm show all
Defined in:
lib/flow_commerce/flow_api_v0_client.rb

Instance Attribute Summary collapse

Attributes inherited from QueryFilterForm

#discriminator

Instance Method Summary collapse

Methods inherited from QueryFilterForm

from_json, #to_hash

Constructor Details

#initialize(incoming = {}) ⇒ QueryFilterStructuredForm

Returns a new instance of QueryFilterStructuredForm.



61277
61278
61279
61280
61281
61282
61283
61284
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 61277

def initialize(incoming={})
  super(:discriminator => QueryFilterForm::Types::QUERY_FILTER_STRUCTURED_FORM)
  opts = HttpClient::Helper.symbolize_keys(incoming)
  HttpClient::Preconditions.require_keys(opts, [:field, :operator, :values], 'QueryFilterStructuredForm')
  @field = HttpClient::Preconditions.assert_class('field', opts.delete(:field), String)
  @operator = HttpClient::Preconditions.assert_class('operator', opts.delete(:operator), String)
  @values = HttpClient::Preconditions.assert_class('values', opts.delete(:values), Array).map { |v| HttpClient::Preconditions.assert_class('values', v, String) }
end

Instance Attribute Details

#fieldObject (readonly)

Returns the value of attribute field.



61275
61276
61277
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 61275

def field
  @field
end

#operatorObject (readonly)

Returns the value of attribute operator.



61275
61276
61277
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 61275

def operator
  @operator
end

#valuesObject (readonly)

Returns the value of attribute values.



61275
61276
61277
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 61275

def values
  @values
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



61290
61291
61292
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 61290

def copy(incoming={})
  QueryFilterStructuredForm.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
end

#subtype_to_hashObject



61294
61295
61296
61297
61298
61299
61300
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 61294

def subtype_to_hash
  {
    :field => field,
    :operator => operator,
    :values => values
  }
end

#to_jsonObject



61286
61287
61288
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 61286

def to_json
  JSON.dump(to_hash)
end