Skip to content

Instantly share code, notes, and snippets.

@farcaller
Created May 17, 2012 22:37
Show Gist options
  • Save farcaller/2722071 to your computer and use it in GitHub Desktop.
Save farcaller/2722071 to your computer and use it in GitHub Desktop.
def fetchEpisodes(&block)
NSLog("will fetch")
block.send(:retain)
Dispatch::Queue.concurrent.async do
data = NSString.stringWithContentsOfURL(NSURL.URLWithString(@feedUrl))
NSLog("loaded #{data.length} bytes")
rss = SimpleRSS.parse(data.to_s)
NSLog("loaded #{rss.items.length} items")
episodes = rss.items
# episodes = rss.items.map do |item|
# item[:thumb_url] = sprintf("http://railscasts.com/assets/episodes/stills/%03d-%s.png",
# item[:title][1..-1].to_i, item[:guid])
# item
# end
NSLog("go dispatch back")
Dispatch::Queue.main.sync do
NSLog("go dispatch back to #{block} sync")
block.call(episodes)
block.send(:release)
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment