Class: SmtpApiHeader
- Inherits:
-
Object
- Object
- SmtpApiHeader
- Defined in:
- lib/smtp_api_header.rb
Instance Method Summary collapse
- #addFilterSetting(fltr, setting, val) ⇒ Object
- #addSubVal(var, val) ⇒ Object
- #addTo(to) ⇒ Object
- #as_string ⇒ Object
- #asJSON ⇒ Object
-
#initialize ⇒ SmtpApiHeader
constructor
A new instance of SmtpApiHeader.
- #setCategory(cat) ⇒ Object
- #setUniqueArgs(val) ⇒ Object
Constructor Details
#initialize ⇒ SmtpApiHeader
Returns a new instance of SmtpApiHeader.
10 11 12 |
# File 'lib/smtp_api_header.rb', line 10 def initialize() @data = {} end |
Instance Method Details
#addFilterSetting(fltr, setting, val) ⇒ Object
40 41 42 43 44 45 46 47 48 49 50 51 |
# 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) ⇒ Object
19 20 21 22 23 24 25 26 27 28 |
# 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) ⇒ Object
14 15 16 17 |
# File 'lib/smtp_api_header.rb', line 14 def addTo(to) @data['to'] ||= [] @data['to'] += to.kind_of?(Array) ? to : [to] end |
#as_string ⇒ Object
58 59 60 61 62 |
# 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 |
#asJSON ⇒ Object
53 54 55 56 |
# File 'lib/smtp_api_header.rb', line 53 def asJSON() json = JSON.generate @data return json.gsub(/(["\]}])([,:])(["\[{])/, '\\1\\2 \\3') end |
#setCategory(cat) ⇒ Object
36 37 38 |
# File 'lib/smtp_api_header.rb', line 36 def setCategory(cat) @data['category'] = cat end |
#setUniqueArgs(val) ⇒ Object
30 31 32 33 34 |
# File 'lib/smtp_api_header.rb', line 30 def setUniqueArgs(val) if val.instance_of?(Hash) @data['unique_args'] = val end end |