swivel 0.0.20 → 0.0.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. data/lib/swivel.rb +14 -6
  2. metadata +3 -2
data/lib/swivel.rb CHANGED
@@ -459,10 +459,6 @@ module Swivel
459
459
  end
460
460
  @headers = options[:headers] || Hash.new
461
461
  @headers.merge! 'Accept' => 'application/xml'
462
- if @config.has_key?(:api_key) && !@config[:api_key].blank?
463
- encoded = Base64.encode64(':' + @config[:api_key])
464
- @headers.merge! 'Authorization' => "Basic #{encoded}"
465
- end
466
462
  end
467
463
 
468
464
  # Call Swivel's REST endpoint. This method actually performs the HTTP stuff
@@ -501,7 +497,8 @@ module Swivel
501
497
  def call path, params = Hash.new, method = :get
502
498
  response =
503
499
  Net::HTTP.start @config[:host], @config[:port] do |http|
504
- request = "Net::HTTP::#{method.to_s.camelize}".constantize.new path, @headers
500
+ request_class = "Net::HTTP::#{method.to_s.camelize}".constantize
501
+ request = request_class.new path, headers
505
502
  if [:delete, :post, :put].include? method
506
503
  http.read_timeout = @config[:timeout_up]
507
504
  http.request request, params.to_query_string
@@ -515,8 +512,9 @@ module Swivel
515
512
  doc = REXML::Document.new xml
516
513
  Response.class_for(doc.root.elements[1].name).new xml, self
517
514
  rescue Exception => e
518
- raise e
519
515
  #xml.blank? ? nil : xml
516
+ warn "Failure while communicating with swivel: #{xml}\n"
517
+ raise e
520
518
  end
521
519
 
522
520
  %w/ data_columns data_sets graphs users /.each do |obj|
@@ -702,5 +700,15 @@ module Swivel
702
700
  end
703
701
  call '/rest/graphs', options, :post
704
702
  end
703
+
704
+ protected
705
+ def headers
706
+ if @config.has_key?(:api_key) && !@config[:api_key].blank?
707
+ encoded = Base64.encode64(':' + @config[:api_key])
708
+ @headers.merge 'Authorization' => "Basic #{encoded}"
709
+ else
710
+ @headers
711
+ end
712
+ end
705
713
  end
706
714
  end
metadata CHANGED
@@ -1,9 +1,9 @@
1
1
  --- !ruby/object:Gem::Specification
2
- rubygems_version: 0.9.2
2
+ rubygems_version: 0.9.4
3
3
  specification_version: 1
4
4
  name: swivel
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.0.20
6
+ version: 0.0.21
7
7
  date: 2007-08-08 00:00:00 -07:00
8
8
  summary: Ruby interface to the Swivel API.
9
9
  require_paths:
@@ -33,6 +33,7 @@ files:
33
33
  - README
34
34
  - Rakefile
35
35
  - lib/swivel.rb
36
+ - lib/test
36
37
  - bin/swivel
37
38
  - CHANGELOG
38
39
  test_files: []