Sha256: e2c42fea45359a41f599f3a10f1066e8152c0050e2c64f61d245ef039fda7ecc
Contents?: true
Size: 1.03 KB
Versions: 4
Compression:
Stored size: 1.03 KB
Contents
require_relative '../all_jobs_shared' class ParseDateJob < Remi::Job param(:format) { '%Y-%m-%d' } param(:if_blank) { nil } source :source_data do fields( { :date_string => { type: :date, in_format: params[:format] }, :stubbed_date => { type: :date, in_format: params[:format] } } ) end target :target_data transform :main do # Only needed for testing, would be nice to make it testable without this job.params[:if_blank] = ['high', 'low'].include?(job.params[:if_blank]) ? job.params[:if_blank].to_sym : job.params[:if_blank] Remi::SourceToTargetMap.apply(source_data.df, target_data.df) do map source(:date_string) .target(:parsed_date) .transform(Remi::Transform::ParseDate.new(in_format: job.params[:format], if_blank: job.params[:if_blank])) map source(:stubbed_date) .target(:parsed_stubbed_date) .transform(Remi::Transform::ParseDate.new(in_format: source_data.fields[:stubbed_date][:in_format], if_blank: job.params[:if_blank])) end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
remi-0.3.3 | jobs/transforms/parse_date_job.rb |
remi-0.3.2 | jobs/transforms/parse_date_job.rb |
remi-0.3.1 | jobs/transforms/parse_date_job.rb |
remi-0.3.0 | jobs/transforms/parse_date_job.rb |