module Fluent::Compat::TextParser::TypeConverterCompatParameters

Public Instance Methods

convert_type_converter_parameters!(conf) click to toggle source
# File lib/fluent/compat/parser.rb, line 124
def convert_type_converter_parameters!(conf)
  if conf["types"]
    delimiter = conf["types_delimiter"] || ','
    label_delimiter = conf["types_label_delimiter"] || ':'
    types = {}
    conf['types'].split(delimiter).each do |pair|
      key, value = pair.split(label_delimiter, 2)
      if value.start_with?("time#{label_delimiter}")
        value = value.split(label_delimiter, 2).join(':')
      elsif value.start_with?("array#{label_delimiter}")
        value = value.split(label_delimiter, 2).join(':')
      end
      types[key] = value
    end
    conf["types"] = JSON.dump(types)
  end
end