Module | FeedTools::FeedToolsHelper |
In: |
lib/feed_tools/helpers/feed_tools_helper.rb
|
Returns the default path to load local files from
# File lib/feed_tools/helpers/feed_tools_helper.rb, line 38 38: def self.default_local_path 39: @@default_local_path 40: end
Sets the default path to load local files from
# File lib/feed_tools/helpers/feed_tools_helper.rb, line 43 43: def self.default_local_path=(new_default_local_path) 44: @@default_local_path = new_default_local_path 45: end
Loads a feed within a block for more consistent syntax and control over the FeedTools environment.
# File lib/feed_tools/helpers/feed_tools_helper.rb, line 50 50: def with_feed(options={}) 51: FeedTools::GenericHelper.validate_options([ :from_file, 52: :from_url, 53: :from_data, 54: :feed_cache ], 55: options.keys) 56: options = { :feed_cache => 57: FeedTools.configurations[:feed_cache] }.merge(options) 58: if options[:from_file] 59: file_path = File.expand_path(@@default_local_path + '/' + 60: options[:from_file]) 61: if !File.exists?(file_path) 62: file_path = File.expand_path(options[:from_file]) 63: end 64: if !File.exists?(file_path) 65: raise "No such file - #{file_path}" 66: end 67: feed = FeedTools::Feed.open("file://#{file_path}") 68: elsif options[:from_url] 69: feed = FeedTools::Feed.open(options[:from_url]) 70: elsif options[:from_data] 71: feed = FeedTools::Feed.new 72: feed.feed_data = options[:from_data] 73: else 74: raise "No data source specified" 75: end 76: @@save_cache = FeedTools.configurations[:feed_cache].to_s 77: FeedTools.configurations[:feed_cache] = options[:feed_cache].to_s 78: yield feed 79: FeedTools.configurations[:feed_cache] = @@save_cache 80: feed = nil 81: end