class Npiregistry::Request

Constants

URL

Public Class Methods

execute(args) click to toggle source
# File lib/npiregistry/request.rb, line 11
def self.execute(args)
  new(args).execute
end
new(args) click to toggle source
# File lib/npiregistry/request.rb, line 15
def initialize args
  @options = (args[:options] || {}).dup
end

Public Instance Methods

default_headers() click to toggle source
# File lib/npiregistry/request.rb, line 49
def default_headers
  {
      :accept => '*/*',
      :user_agent => "NpiregistryRubyGem/#{Npiregistry::VERSION}"
  }
end
execute() click to toggle source
# File lib/npiregistry/request.rb, line 19
def execute
  return 'Please make sure there are enough parameters to make request.' if @options.empty?
  make_request
end
make_request() click to toggle source
# File lib/npiregistry/request.rb, line 43
def make_request
  uri = URI URL
  uri.query = URI.encode_www_form process_parameters
  JSON.parse Net::HTTP.get_response(uri).body
end
process_parameters() click to toggle source
# File lib/npiregistry/request.rb, line 24
def process_parameters
  options = OpenStruct.new(@options)
  {
      number: options.number,
      enumeration_type: options.enumeration_type,
      taxonomy_description: options.taxonomy_description,
      first_name: options.first_name,
      last_name: options.last_name,
      organization_name: options.organization_name,
      address_purpose: options.address_purpose,
      city: options.city,
      state: options.state,
      postal_code: options.postal_code,
      country_code: options.country_code,
      limit: options.limit,
      skip: options.skip
  }.delete_if { |key, val| val.nil? }
end