class Msewage::Importer::API

Attributes

config[R]

Public Class Methods

new(config = Config.new) click to toggle source
# File lib/msewage-importer/api.rb, line 6
def initialize(config = Config.new)
  @config = config
end

Public Instance Methods

insert(record) click to toggle source
# File lib/msewage-importer/api.rb, line 10
def insert(record)
  res = HTTParty.put(new_source_url, :body => new_source_body(record))
  !res["code"].nil?
  print "."
end

Private Instance Methods

api_endpoint() click to toggle source
# File lib/msewage-importer/api.rb, line 59
def api_endpoint
  config.api_endpoint
end
client_uid() click to toggle source
# File lib/msewage-importer/api.rb, line 33
def client_uid
  @client_uid ||= retrieve_client_uid
end
new_source_body(record) click to toggle source
# File lib/msewage-importer/api.rb, line 22
def new_source_body(record)
  {
    :created_by => user_name,
    :desc => record["desc"] || record["description"],
    :latitude => record["latitude"] || record["lat"],
    :longitude => record["longitude"] || record["lon"],
    :name => record["name"],
    :source_type => record["source_type"]
  }
end
new_source_url() click to toggle source
# File lib/msewage-importer/api.rb, line 18
def new_source_url
  "#{api_endpoint}/sources/#{source_uid}?clientuid=#{client_uid}"
end
password() click to toggle source
# File lib/msewage-importer/api.rb, line 55
def password
  config.msewage.password
end
retrieve_client_uid() click to toggle source
# File lib/msewage-importer/api.rb, line 37
def retrieve_client_uid
  body = { :password => password }
  path = "#{api_endpoint}/users/#{user_name}"
  res = HTTParty.post(path, :body => body)
  res["clientuid"]
end
source_uid() click to toggle source
# File lib/msewage-importer/api.rb, line 46
def source_uid
  UUID.generate.gsub(/-/, '')
  #"0" * 16
end
user_name() click to toggle source
# File lib/msewage-importer/api.rb, line 51
def user_name
  config.msewage.username
end