class Nokaya::MusicStore

Public Class Methods

new(args, options = {}) click to toggle source
Calls superclass method Nokaya::Apple::new
# File lib/nokaya/musicstore.rb, line 6
def initialize args, options = {}
  options = options.dup
  options['itunes'] = true
  super(args, options)
  @type = :musicstore
  find(args)
  @path = "#{@path}/musicstore-#{@workers.sanitize(args.join(' '))}-#{@workers.timed}"
end

Private Instance Methods

find(args) click to toggle source
# File lib/nokaya/musicstore.rb, line 17
def find args
  url = self.music_url(args)
  data = get(url)
  data['results'].each do |obj|
    next if obj['collectionName'].nil?
    link = obj['artworkUrl100'].gsub('100x100', '1200x1200')
    next if @urls.include?(link)
    @urls << link
    @filenames << "#{@workers.sanitize(obj['collectionName'])}.jpg"
  end
end
get(url) click to toggle source
# File lib/nokaya/musicstore.rb, line 29
def get url
  begin
    JSON.parse(open(url).read)
  rescue SocketError
    Logs.rec.error 'No connexion'
    return {'results' => []}
  end
end