Sha256: c5f20712b0a60f2c9a8bef4f19149e2b0753deedabe1eb6cf057da12caf96c47

Contents?: true

Size: 566 Bytes

Versions: 1

Compression:

Stored size: 566 Bytes

Contents

module Beatport
  module Client
    include HTTParty
    parser Beatport::Parser
    base_uri "http://api.beatport.com/catalog/3"
    format :json
#    default_params :v => '1.0', :format => 'json'
    
    def self.retrieve(path, klass, *args)
      result = get("/#{path}", :query => QueryBuilder.process(*args))

      case result['results']
      when Array
        Collection.new(klass, result)
      when Hash
        klass.new(result['results'])
      else
        raise "results is an unexpected class #{result['results'].class}"
      end
    end 
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
beatport-0.1.1 lib/beatport/client.rb