class PecCalcClient::Calc

Constants

PARAMS
URL

Attributes

delivery[RW]
places[RW]
take[RW]

Public Class Methods

new(params) click to toggle source
# File lib/pec_calc_client/calc.rb, line 14
def initialize(params)
  init_params params
end

Public Instance Methods

calc() click to toggle source
# File lib/pec_calc_client/calc.rb, line 18
def calc
  result = Connector.new(URL).request(prepare_params)
  prepare_result result.to_hash
end
prepare_params() click to toggle source
# File lib/pec_calc_client/calc.rb, line 23
def prepare_params
  out = to_h
  out[:deliver] = @delivery.to_h
  out[:take] = @take.to_h
  out[:places] = @places.each_with_index.map { |place, i| [i, place.to_a] }.to_h
  out
end

Private Instance Methods

prepare_result(result) click to toggle source
# File lib/pec_calc_client/calc.rb, line 33
def prepare_result(result)
  CalcResult.new result.to_hash
end