class SmtpApiHeader

Public Class Methods

new() click to toggle source
# File lib/smtp_api_header.rb, line 10
def initialize()
  @data = {}
end

Public Instance Methods

addFilterSetting(fltr, setting, val) click to toggle source
# File lib/smtp_api_header.rb, line 40
def addFilterSetting(fltr, setting, val)
  if not @data['filters']
    @data['filters'] = {}
  end
  if not @data['filters'][fltr]
    @data['filters'][fltr] = {}
  end
  if not @data['filters'][fltr]['settings']
    @data['filters'][fltr]['settings'] = {}
  end
  @data['filters'][fltr]['settings'][setting] = val
end
addSubVal(var, val) click to toggle source
# File lib/smtp_api_header.rb, line 19
def addSubVal(var, val)
  if not @data['sub']
    @data['sub'] = {}
  end
  if val.instance_of?(Array)
    @data['sub'][var] = val
  else
    @data['sub'][var] = [val]
  end
end
addTo(to) click to toggle source
# File lib/smtp_api_header.rb, line 14
def addTo(to)
  @data['to'] ||= []
  @data['to'] += to.kind_of?(Array) ? to : [to]
end
asJSON() click to toggle source
# File lib/smtp_api_header.rb, line 53
def asJSON()
  json = JSON.generate @data
  return json.gsub(/(["\]}])([,:])(["\[{])/, '\\1\\2 \\3')
end
as_string() click to toggle source
# File lib/smtp_api_header.rb, line 58
def as_string()
  json  = asJSON()
  str = 'X-SMTPAPI: %s' % json.gsub(/(.{1,72})( +|$\n?)|(.{1,72})/,"\\1\\3\n")
  return str
end
setCategory(cat) click to toggle source
# File lib/smtp_api_header.rb, line 36
def setCategory(cat)
  @data['category'] = cat
end
setUniqueArgs(val) click to toggle source
# File lib/smtp_api_header.rb, line 30
def setUniqueArgs(val)
  if val.instance_of?(Hash)
    @data['unique_args'] = val
  end
end