Skip to content

Instantly share code, notes, and snippets.

@mwhagedorn
Created October 31, 2011 20:04
Show Gist options
  • Save mwhagedorn/1328707 to your computer and use it in GitHub Desktop.
Save mwhagedorn/1328707 to your computer and use it in GitHub Desktop.
require 'hashie'
require 'faraday'
require 'faraday_middleware'
gem "multi_json"
module Meterman
class Client
def initialize(adapter = Faraday.default_adapter, host = Meterman.host,port = Meterman.port, options={})
@adapter,@host,@port, @http_options = adapter,host,port,options
end
def meta_data_service_client
@meta_data_service_client ||= Faraday.new(:url => "http://#{@host}:#{@port}/reportingService/metering/serviceTypes") do |builder|
builder.use Faraday::Response::Mashify
builder.use Faraday::Response::ParseJson
builder.adapter @adapter
end
end
def query_service_client
@query_service_client ||= Faraday.new(:url => "http://#{@host}:#{@port}/reportingClient/GetServices.action") do |builder|
builder.use Faraday::Response::Mashify
builder.use Faraday::Response::ParseJson
builder.adapter @adapter
end
end
def service_types
meta_data_service_client.get
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment