Sha256: cd1e7230ccdab90fc295d7ac0300236772af16df9ca2934ab8e46b696ca81f13
Contents?: true
Size: 1.25 KB
Versions: 1
Compression:
Stored size: 1.25 KB
Contents
require 'faraday_middleware' require 'mog/version' module Mog class Client def initialize(options={}) @api_endpoint = options[:api_endpoint] || 'http://api.mog.com' @user_agent = options[:user_agent] || "Mog RubyGem Version #{Mog::VERSION}" @adapter = options[:adapter] || Faraday.default_adapter end def tracks response = request('/v2/charts/tracks.json') response.tracks end def albums response = request('/v2/charts/albums.json') response.albums end def artists response = request('/v2/charts/artists.json') response.artists end def playlists response = request('/v2/charts/playlists.json') response.playlists end private # Perform an HTTP GET request def request(url, params={}) response = connection.get do |req| req.url url, params end response.body end def connection options = { :headers => {'Accept' => "application/json", 'User-Agent' => @user_agent}, :url => @api_endpoint, } Faraday.new(options) do |builder| builder.use Faraday::Response::Rashify builder.use Faraday::Response::ParseJson builder.adapter(@adapter) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
mog-0.0.1 | lib/mog/client.rb |