module RSS::SyndicationModel

Constants

ELEMENTS
SY_UPDATEPERIOD_AVAILABLE_VALUES

Public Class Methods

append_features(klass) click to toggle source
Calls superclass method
# File lib/rss/syndication.rb, line 16
    def self.append_features(klass)
      super

      klass.install_must_call_validator(SY_PREFIX, SY_URI)
      klass.module_eval do
        [
          ["updatePeriod"],
          ["updateFrequency", :positive_integer]
        ].each do |name, type|
          install_text_element(name, SY_URI, "?",
                               "#{SY_PREFIX}_#{name}", type,
                               "#{SY_PREFIX}:#{name}")
        end

        %w(updateBase).each do |name|
          install_date_element(name, SY_URI, "?",
                               "#{SY_PREFIX}_#{name}", 'w3cdtf',
                               "#{SY_PREFIX}:#{name}")
        end
      end

      klass.module_eval("        alias_method(:_sy_updatePeriod=, :sy_updatePeriod=)
        def sy_updatePeriod=(new_value)
          new_value = new_value.strip
          validate_sy_updatePeriod(new_value) if @do_validate
          self._sy_updatePeriod = new_value
        end
", __FILE__, __LINE__ + 1)
    end

Private Instance Methods

validate_sy_updatePeriod(value) click to toggle source
# File lib/rss/syndication.rb, line 49
def validate_sy_updatePeriod(value)
  unless SY_UPDATEPERIOD_AVAILABLE_VALUES.include?(value)
    raise NotAvailableValueError.new("updatePeriod", value)
  end
end