Class: Comet::EmailOptions
- Inherits:
-
Object
- Object
- Comet::EmailOptions
- Defined in:
- lib/comet/models/email_options.rb
Overview
EmailOptions is a typed class wrapper around the underlying Comet Server API data structure.
Instance Attribute Summary collapse
-
#email_reporting_options ⇒ Object
Returns the value of attribute email_reporting_options.
-
#from_email ⇒ Object
Returns the value of attribute from_email.
-
#from_name ⇒ Object
Returns the value of attribute from_name.
-
#mode ⇒ Object
One of the EMAIL_DELIVERY_ constants.
-
#smtpallow_invalid_certificate ⇒ Object
Returns the value of attribute smtpallow_invalid_certificate.
-
#smtpallow_unencrypted ⇒ Object
Returns the value of attribute smtpallow_unencrypted.
-
#smtpcustom_ehlo ⇒ Object
Override the HELO/EHLO hostname for SMTP or MX Direct modes.
-
#smtphost ⇒ Object
Returns the value of attribute smtphost.
-
#smtppassword ⇒ Object
Returns the value of attribute smtppassword.
-
#smtpport ⇒ Object
Returns the value of attribute smtpport.
-
#smtpusername ⇒ Object
Returns the value of attribute smtpusername.
-
#unknown_json_fields ⇒ Object
Returns the value of attribute unknown_json_fields.
Instance Method Summary collapse
- #clear ⇒ Object
- #from_hash(obj) ⇒ Object
- #from_json(json_string) ⇒ Object
-
#initialize ⇒ EmailOptions
constructor
A new instance of EmailOptions.
-
#to_h ⇒ Hash
The complete object as a Ruby hash.
-
#to_hash ⇒ Hash
The complete object as a Ruby hash.
-
#to_json(options = {}) ⇒ String
The complete object as a JSON string.
Constructor Details
#initialize ⇒ EmailOptions
Returns a new instance of EmailOptions.
54 55 56 |
# File 'lib/comet/models/email_options.rb', line 54 def initialize clear end |
Instance Attribute Details
#email_reporting_options ⇒ Object
Returns the value of attribute email_reporting_options.
26 27 28 |
# File 'lib/comet/models/email_options.rb', line 26 def @email_reporting_options end |
#from_email ⇒ Object
Returns the value of attribute from_email.
16 17 18 |
# File 'lib/comet/models/email_options.rb', line 16 def from_email @from_email end |
#from_name ⇒ Object
Returns the value of attribute from_name.
19 20 21 |
# File 'lib/comet/models/email_options.rb', line 19 def from_name @from_name end |
#mode ⇒ Object
One of the EMAIL_DELIVERY_ constants
23 24 25 |
# File 'lib/comet/models/email_options.rb', line 23 def mode @mode end |
#smtpallow_invalid_certificate ⇒ Object
Returns the value of attribute smtpallow_invalid_certificate.
41 42 43 |
# File 'lib/comet/models/email_options.rb', line 41 def smtpallow_invalid_certificate @smtpallow_invalid_certificate end |
#smtpallow_unencrypted ⇒ Object
Returns the value of attribute smtpallow_unencrypted.
44 45 46 |
# File 'lib/comet/models/email_options.rb', line 44 def smtpallow_unencrypted @smtpallow_unencrypted end |
#smtpcustom_ehlo ⇒ Object
Override the HELO/EHLO hostname for SMTP or MX Direct modes. If blank, uses system default HELO/EHLO hostname.
49 50 51 |
# File 'lib/comet/models/email_options.rb', line 49 def smtpcustom_ehlo @smtpcustom_ehlo end |
#smtphost ⇒ Object
Returns the value of attribute smtphost.
29 30 31 |
# File 'lib/comet/models/email_options.rb', line 29 def smtphost @smtphost end |
#smtppassword ⇒ Object
Returns the value of attribute smtppassword.
38 39 40 |
# File 'lib/comet/models/email_options.rb', line 38 def smtppassword @smtppassword end |
#smtpport ⇒ Object
Returns the value of attribute smtpport.
32 33 34 |
# File 'lib/comet/models/email_options.rb', line 32 def smtpport @smtpport end |
#smtpusername ⇒ Object
Returns the value of attribute smtpusername.
35 36 37 |
# File 'lib/comet/models/email_options.rb', line 35 def smtpusername @smtpusername end |
#unknown_json_fields ⇒ Object
Returns the value of attribute unknown_json_fields.
52 53 54 |
# File 'lib/comet/models/email_options.rb', line 52 def unknown_json_fields @unknown_json_fields end |
Instance Method Details
#clear ⇒ Object
58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/comet/models/email_options.rb', line 58 def clear @from_email = '' @from_name = '' @mode = '' @email_reporting_options = [] @smtphost = '' @smtpport = 0 @smtpusername = '' @smtppassword = '' @smtpcustom_ehlo = '' @unknown_json_fields = {} end |
#from_hash(obj) ⇒ Object
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 |
# File 'lib/comet/models/email_options.rb', line 79 def from_hash(obj) raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash obj.each do |k, v| case k when 'FromEmail' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @from_email = v when 'FromName' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @from_name = v when 'Mode' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @mode = v when 'EmailReportingOptions' if v.nil? @email_reporting_options = [] else @email_reporting_options = Array.new(v.length) v.each_with_index do |v1, i1| @email_reporting_options[i1] = Comet::EmailReportingOption.new @email_reporting_options[i1].from_hash(v1) end end when 'SMTPHost' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @smtphost = v when 'SMTPPort' raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric @smtpport = v when 'SMTPUsername' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @smtpusername = v when 'SMTPPassword' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @smtppassword = v when 'SMTPAllowInvalidCertificate' @smtpallow_invalid_certificate = v when 'SMTPAllowUnencrypted' @smtpallow_unencrypted = v when 'SMTPCustomEhlo' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @smtpcustom_ehlo = v else @unknown_json_fields[k] = v end end end |
#from_json(json_string) ⇒ Object
72 73 74 75 76 |
# File 'lib/comet/models/email_options.rb', line 72 def from_json(json_string) raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String from_hash(JSON.parse(json_string)) end |
#to_h ⇒ Hash
Returns The complete object as a Ruby hash.
173 174 175 |
# File 'lib/comet/models/email_options.rb', line 173 def to_h to_hash end |
#to_hash ⇒ Hash
Returns The complete object as a Ruby hash.
137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 |
# File 'lib/comet/models/email_options.rb', line 137 def to_hash ret = {} ret['FromEmail'] = @from_email ret['FromName'] = @from_name ret['Mode'] = @mode unless @email_reporting_options.nil? ret['EmailReportingOptions'] = @email_reporting_options end unless @smtphost.nil? ret['SMTPHost'] = @smtphost end unless @smtpport.nil? ret['SMTPPort'] = @smtpport end unless @smtpusername.nil? ret['SMTPUsername'] = @smtpusername end unless @smtppassword.nil? ret['SMTPPassword'] = @smtppassword end unless @smtpallow_invalid_certificate.nil? ret['SMTPAllowInvalidCertificate'] = @smtpallow_invalid_certificate end unless @smtpallow_unencrypted.nil? ret['SMTPAllowUnencrypted'] = @smtpallow_unencrypted end unless @smtpcustom_ehlo.nil? ret['SMTPCustomEhlo'] = @smtpcustom_ehlo end @unknown_json_fields.each do |k, v| ret[k] = v end ret end |
#to_json(options = {}) ⇒ String
Returns The complete object as a JSON string.
178 179 180 |
# File 'lib/comet/models/email_options.rb', line 178 def to_json( = {}) to_hash.to_json() end |