| 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