Module: RailsConnector::Configuration::Rss
- Defined in:
- lib/rails_connector/configuration/rss.rb
Overview
This module adds configuration options for the RSS feature.
Specify the RSS root in RAILS_ROOT/config/initializers/rails_connector.rb
:
RailsConnector::Configuration::Rss.root = lambda { NamedLink.get_object('news') }
Defined Under Namespace
Classes: RootNotFound, RootUndefined
Class Method Summary collapse
-
.root ⇒ Object
Returns the RSS root object.
-
.root=(obj_provider) ⇒ Object
Stores the obj providing lambda for later use.
Class Method Details
.root ⇒ Object
Returns the RSS root object. If no RSS root has been specified then RootUndefined is raised.
41 42 43 44 45 46 47 48 |
# File 'lib/rails_connector/configuration/rss.rb', line 41 def self.root raise RootUndefined unless @root_provider begin @root_provider.call rescue RailsConnector::ResourceNotFound raise RootNotFound end end |
.root=(obj_provider) ⇒ Object
Stores the obj providing lambda for later use
25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/rails_connector/configuration/rss.rb', line 25 def self.root=(obj_provider) case obj_provider when Obj Rails.logger.warn("Rss.root= called with an Obj. Use an Obj returning lambda instead.") root_id = obj_provider.id @root_provider = lambda { Obj.find(root_id) } when Proc @root_provider = obj_provider else raise ArgumentError.new("Rss.root= called with '#{obj_provider.class.name}' instead of a lambda.") end end |