class AFCSalesforce::DataTruncator

Constants

MAX_LENGTH
MAX_VALUE

Public Class Methods

truncate_hash(hash) click to toggle source
# File lib/afc_salesforce/data_truncator.rb, line 24
def truncate_hash(hash)
  hash.inject({}) { |hash, (key, value)| hash[key] = truncate_value(key, value); hash }
end

Private Class Methods

truncate_value(key, value) click to toggle source
# File lib/afc_salesforce/data_truncator.rb, line 32
def truncate_value(key, value)
  max = MAX_VALUE[key] || MAX_LENGTH[key]
  return value unless max

  if value.is_a? String
    value[0...max]
  elsif value.is_a?(Float) || value.is_a?(Integer)
    [value, max].min
  else
    value
  end
end