require 'xively-rb' module XivelyConnector class Connection < Xively::Client include XivelyConnector::Logging format :json # Mix in the ability to log include XivelyConnector::Logging attr_accessor :config def initialize(options) @logger = options[:logger] || logger @config = options[:config] || Configuration.new @logger.debug "XivelyConnector::Connection initialize" super(options[:api_key]) end #Set HTTParty params that we need to set after initialize is called #These params come from @options within initialize and include the following: #:ssl_ca_file - SSL CA File for SSL connections #:format - 'json', 'xml', 'html', etc. || Defaults to 'xml' #:format_header - :format Header string || Defaults to 'application/xml' #:pem_cert - /path/to/a/pem_formatted_certificate.pem for SSL connections #:pem_cert_pass - plaintext password, not recommended! def set_httparty_options(options={}) if options[:ssl_ca_file] ssl_ca_file opts[:ssl_ca_file] if options[:pem_cert_pass] pem File.read(options[:pem_cert]), options[:pem_cert_pass] else pem File.read(options[:pem_cert]) end end end end end