Class: CDMDEXER::FieldTransformer
- Inherits:
 - 
      Object
      
        
- Object
 - CDMDEXER::FieldTransformer
 
 
- Extended by:
 - Forwardable
 
- Defined in:
 - lib/cdmdexer/field_transformer.rb
 
Instance Attribute Summary collapse
- 
  
    
      #field_mapping  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    
Returns the value of attribute field_mapping.
 - 
  
    
      #field_value  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    
Returns the value of attribute field_value.
 - 
  
    
      #formatter_klass  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    
Returns the value of attribute formatter_klass.
 
Instance Method Summary collapse
- 
  
    
      #initialize(field_mapping: FieldMapping.new, record: {}, formatter_klass: FieldFormatter)  ⇒ FieldTransformer 
    
    
  
  
  
    constructor
  
  
  
  
  
  
  
    
A new instance of FieldTransformer.
 - #reduce ⇒ Object
 - #value ⇒ Object
 
Constructor Details
#initialize(field_mapping: FieldMapping.new, record: {}, formatter_klass: FieldFormatter) ⇒ FieldTransformer
Returns a new instance of FieldTransformer.
      8 9 10 11 12 13 14  | 
    
      # File 'lib/cdmdexer/field_transformer.rb', line 8 def initialize(field_mapping: FieldMapping.new, record: {}, formatter_klass: FieldFormatter) @field_mapping = field_mapping @field_value = compact(record.at_path(origin_path)) @formatter_klass = formatter_klass end  | 
  
Instance Attribute Details
#field_mapping ⇒ Object (readonly)
Returns the value of attribute field_mapping.
      7 8 9  | 
    
      # File 'lib/cdmdexer/field_transformer.rb', line 7 def field_mapping @field_mapping end  | 
  
#field_value ⇒ Object (readonly)
Returns the value of attribute field_value.
      7 8 9  | 
    
      # File 'lib/cdmdexer/field_transformer.rb', line 7 def field_value @field_value end  | 
  
#formatter_klass ⇒ Object (readonly)
Returns the value of attribute formatter_klass.
      7 8 9  | 
    
      # File 'lib/cdmdexer/field_transformer.rb', line 7 def formatter_klass @formatter_klass end  | 
  
Instance Method Details
#reduce ⇒ Object
      16 17 18  | 
    
      # File 'lib/cdmdexer/field_transformer.rb', line 16 def reduce (blank?(value)) ? {} : { "#{dest_path}" => value } end  | 
  
#value ⇒ Object
      20 21 22  | 
    
      # File 'lib/cdmdexer/field_transformer.rb', line 20 def value @value ||= (!blank?(field_value)) ? transform_field : nil end  |