Class: Chicago::ETL::Screens::InvalidElement

Inherits:
ColumnScreen show all
Defined in:
lib/chicago/etl/screens/invalid_element.rb

Overview

Transformation which checks to see if a field’s value is in a column’s elements.

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from ColumnScreen

#column, #output_streams, #process_row

Methods inherited from Transformation

#added_fields, added_fields, adds_fields, #applies_to_stream?, #downstream_fields, #flush, #initialize, #output_streams, #process, #removed_fields, removed_fields, removes_fields, #required_options, required_options, requires_options, #upstream_fields

Constructor Details

This class inherits a constructor from Chicago::ETL::Transformation

Class Method Details

.for_columns(columns) ⇒ Object



7
8
9
# File 'lib/chicago/etl/screens/invalid_element.rb', line 7

def self.for_columns(columns)
  columns.select(&:elements).map {|column| new(:default, :column => column) }
end

Instance Method Details

#applies?(value) ⇒ Boolean

Returns:

  • (Boolean)


15
16
17
18
# File 'lib/chicago/etl/screens/invalid_element.rb', line 15

def applies?(value)
  column.elements && 
    !column.elements.map(&:downcase).include?(value.to_s.downcase)
end

#error(value) ⇒ Object



20
21
22
23
# File 'lib/chicago/etl/screens/invalid_element.rb', line 20

def error(value)
  super(value).
    merge(:error_detail => "'#{value}' is not a valid value.")
end

#severityObject



11
12
13
# File 'lib/chicago/etl/screens/invalid_element.rb', line 11

def severity
  3
end