lib/balanced.rb in balanced-0.2.5 vs lib/balanced.rb in balanced-0.3.0
- old
+ new
@@ -1,10 +1,11 @@
+$:.unshift File.join(File.dirname(__FILE__), "balanced", "resources")
+
require 'uri'
require 'balanced/version' unless defined? Balanced::VERSION
require 'balanced/client'
require 'balanced/utils'
-require 'balanced/base'
require 'balanced/resources'
module Balanced
@client = nil
@@ -15,38 +16,19 @@
:version => '1',
}
class << self
- attr_accessor 'client'
- attr_accessor 'config'
+ attr_accessor :client
+ attr_accessor :config
def configure(api_key=nil, options={})
- options = @config.merge! options
- @config = options
- @client = Balanced::Client.new(api_key, @config)
+ @client = Balanced::Client.new(api_key, @config.merge(options))
end
- def get uri, params = {}
- self.client.get uri, params
- end
-
- def post uri, data = {}
- self.client.post uri, data
- end
-
- def put uri, data = {}
- self.client.put uri, data
- end
-
- def delete uri
- self.client.delete uri
- end
-
def split_the_uri uri
- parsed_uri = URI.parse(uri)
- parsed_uri.path.sub(/\/$/, '').split('/')
+ URI.parse(uri).path.sub(/\/$/, '').split('/')
end
def from_uri uri
split_uri = split_the_uri(uri)
# this is such an ugly hack, basically, we're trying to
@@ -70,11 +52,20 @@
rescue NameError
return false
end
true
end
+
+ def method_missing(method, *args, &block)
+ case method
+ when :get, :post, :put, :delete
+ self.client.send method, *args
+ else
+ super
+ end
+ end
end
# configure on import so we don't have to configure for creating
# an api key
configure
-end
\ No newline at end of file
+end