class Mail::EnvelopeFromElement - mail-2.5.4 Documentation

# class Mail::EnvelopeFromElement

### Public Class Methods

new( string ) click to toggle source

    # File lib/mail/elements/envelope_from_element.rb, line 6
    def initialize( string )
      parser = Mail::EnvelopeFromParser.new
      if @tree = parser.parse(string)
        @address = tree.addr_spec.text_value.strip
        @date_time = ::DateTime.parse("#{tree.ctime_date.text_value}")
      else
        raise Mail::Field::ParseError.new(EnvelopeFromElement, string, parser.failure_reason)
      end
    end

### Public Instance Methods

address() click to toggle source

    # File lib/mail/elements/envelope_from_element.rb, line 24
    def address
      @address
    end

date_time() click to toggle source

    # File lib/mail/elements/envelope_from_element.rb, line 20
    def date_time
      @date_time
    end

formatted_date_time() click to toggle source

RFC 4155:

    a timestamp indicating the UTC date and time when the message
    was originally received, conformant with the syntax of the
    traditional UNIX 'ctime' output sans timezone (note that the
    use of UTC precludes the need for a timezone indicator);

    # File lib/mail/elements/envelope_from_element.rb, line 33
    def formatted_date_time
      if @date_time.respond_to?(:ctime)
        @date_time.ctime
      else
        @date_time.strftime '%a %b %e %T %Y'
      end
    end

to_s() click to toggle source

    # File lib/mail/elements/envelope_from_element.rb, line 41
    def to_s
      "#{@address} #{formatted_date_time}"
    end

tree() click to toggle source

    # File lib/mail/elements/envelope_from_element.rb, line 16
    def tree
      @tree
    end