class EmailNugget::Envelope

Attributes

context[RW]
date[RW]
helo[RW]
ip[RW]
mail_from[RW]
misc[RW]
rcpt_to[RW]

Public Class Methods

new(args = {}) click to toggle source
# File lib/email_nugget/envelope.rb, line 5
def initialize(args = {})
  self.ip = args[:ip] || args['ip'] || ""
  self.helo = args[:helo] || args['helo'] || ""
  self.mail_from = args[:mail_from] || args['mail_from'] || ""
  self.rcpt_to = args[:rcpt_to] || args['rcpt_to'] || []
  self.date = args[:date] || args['date'] || ""
  self.context = args[:context] || args['context'] || ""
  self.misc = args[:misc] || args['misc'] || {}
  self.ensure_fields
end

Public Instance Methods

ensure_fields() click to toggle source
# File lib/email_nugget/envelope.rb, line 16
def ensure_fields
  if !self.rcpt_to.is_a?(Array)
    self.rcpt_to = [self.rcpt_to]
  end

  if !self.misc.is_a?(Hash)
    if self.misc.is_a?(Array)
      temp = {}
      self.misc.each do |m|
        temp[m] = 1 
      end
      self.misc = temp
    elsif self.misc.is_a?(String) || self.misc.is_a?(Integer)
      temp = {self.misc => 1}
      self.misc = temp
    else
      self.misc = {}
    end
  end
end