feed-updater
904 Bytes
#!/usr/bin/env ruby
require File.dirname(__FILE__) + '/../config/environment'
(FeedReaderBlock.find(:all) + ExternalFeed.find(:all, :conditions => {:enabled => true})).each do |container|
unless container.address.nil?
begin
handler = FeedHandler.new
handler.process(container)
RAILS_DEFAULT_LOGGER.info("%s ID %d fetched at %s" % [container.class.name, container.id, container.fetched_at])
rescue FeedHandler::ParseError => ex
RAILS_DEFAULT_LOGGER.warn("Error parsing content from %s ID %d\n%s" % [container.class.name, container.id, ex.to_s])
rescue FeedHandler::FetchError => ex
RAILS_DEFAULT_LOGGER.warn("Error fetching content from %s ID %d\n%s" % [container.class.name, container.id, ex.to_s])
rescue Exception => ex
RAILS_DEFAULT_LOGGER.warn("Unknown error from %s ID %d\n%s" % [container.class.name, container.id, ex.to_s])
end
end
end