lib/errata.rb in errata-0.1.4 vs lib/errata.rb in errata-0.1.5

- old
+ new

@@ -1,17 +1,18 @@ -require 'rubygems' -require 'activesupport' +require 'active_support' require 'remote_table' require 'erratum' require 'erratum/delete' require 'erratum/reject' require 'erratum/replace' require 'erratum/simplify' require 'erratum/transform' require 'erratum/truncate' class Errata + ERRATUM_TYPES = %w{delete replace simplify transform truncate} + attr_reader :klass def initialize(options = {}) @klass = options[:klass] @_table = RemoteTable.new(:url => options[:url]) @@ -31,12 +32,12 @@ end private def rejections - @_rejections ||= @_table.rows.map { |erratum| ::Errata::Erratum::Reject.new(self, erratum) if erratum[:action] == 'reject' }.compact + @_rejections ||= @_table.rows.map { |hash| hash.symbolize_keys!; ::Errata::Erratum::Reject.new(self, hash) if hash[:action] == 'reject' }.compact end def corrections - @_corrections ||= @_table.rows.map { |erratum| "::Errata::Erratum::#{erratum[:action].camelcase}".constantize.new(self, erratum) if %w{delete replace simplify transform truncate}.include?(erratum[:action]) }.compact + @_corrections ||= @_table.rows.map { |hash| hash.symbolize_keys!; "::Errata::Erratum::#{hash[:action].camelcase}".constantize.new(self, hash) if ERRATUM_TYPES.include?(hash[:action]) }.compact end end