class Embulk::Guess::NewlineGuessPlugin
Public Instance Methods
guess(config, sample)
click to toggle source
# File lib/embulk/guess/newline.rb, line 7 def guess(config, sample) if config.fetch('parser', {}).fetch('charset', nil).nil? require 'embulk/guess/charset' charset_guess = Guess::CharsetGuessPlugin.new return charset_guess.guess(config, sample) end cr_count = sample.count("\r") lf_count = sample.count("\n") crlf_count = sample.scan(/\r\n/).length if crlf_count > cr_count / 2 && crlf_count > lf_count / 2 return {"parser" => {"newline" => "CRLF"}} elsif cr_count > lf_count / 2 return {"parser" => {"newline" => "CR"}} else return {"parser" => {"newline" => "LF"}} end end