Net::POP3::POPMail (Class)

In: net/pop.rb
Parent: Object

This class represents a message which exists on the POP server. Instances of this class are created by the POP3 class; they should not be directly created by the user.

Methods

all   delete   delete!   deleted?   header   inspect   mail   pop   top   uidl   unique_id  

External Aliases

length -> size

Attributes

length  [R]  The length of the message in octets.
number  [R]  The sequence number of the message on the server.

Public Instance methods

all( dest = '' )

Alias for pop

Marks a message for deletion on the server. Deletion does not actually occur until the end of the session; deletion may be cancelled for all marked messages by calling POP3#reset().

This method raises a POPError if an error occurs.

Example

    POP3.start('pop.example.com', 110,
               'YourAccount, 'YourPassword') do |pop|
      n = 1
      pop.mails.each do |popmail|
        File.open("inbox/#{n}", 'w') do |f|
          f.write popmail.pop
        end
        popmail.delete         ####
        n += 1
      end
    end

[Source]

# File net/pop.rb, line 716
    def delete
      @command.dele @number
      @deleted = true
    end
delete!()

Alias for delete

True if the mail has been deleted.

[Source]

# File net/pop.rb, line 724
    def deleted?
      @deleted
    end

Fetches the message header.

The optional dest argument is obsolete.

This method raises a POPError if an error occurs.

[Source]

# File net/pop.rb, line 692
    def header( dest = '' )
      top(0, dest)
    end

Provide human-readable stringification of class state.

[Source]

# File net/pop.rb, line 618
    def inspect
      "#<#{self.class} #{@number}#{@deleted ? ' deleted' : ''}>"
    end
mail( dest = '' )

Alias for pop

This method fetches the message. If called with a block, the message is yielded to the block one chunk at a time. If called without a block, the message is returned as a String. The optional dest argument will be prepended to the returned String; this argument is essentially obsolete.

Example without block

    POP3.start('pop.example.com', 110,
               'YourAccount, 'YourPassword') do |pop|
      n = 1
      pop.mails.each do |popmail|
        File.open("inbox/#{n}", 'w') do |f|
          f.write popmail.pop
        end
        popmail.delete
        n += 1
      end
    end

Example with block

    POP3.start('pop.example.com', 110,
               'YourAccount, 'YourPassword') do |pop|
      n = 1
      pop.mails.each do |popmail|
        File.open("inbox/#{n}", 'w') do |f|
          popmail.pop do |chunk|            ####
            f.write chunk
          end
        end
        n += 1
      end
    end

This method raises a POPError if an error occurs.

[Source]

# File net/pop.rb, line 660
    def pop( dest = '', &block ) # :yield: message_chunk

      if block_given?
        @command.retr(@number, &block)
        nil
      else
        @command.retr(@number) do |chunk|
          dest << chunk
        end
        dest
      end
    end

Fetches the message header and lines lines of body.

The optional dest argument is obsolete.

This method raises a POPError if an error occurs.

[Source]

# File net/pop.rb, line 680
    def top( lines, dest = '' )
      @command.top(@number, lines) do |chunk|
        dest << chunk
      end
      dest
    end
uidl()

Alias for unique_id

Returns the unique-id of the message. Normally the unique-id is a hash string of the message.

This method raises a POPError if an error occurs.

[Source]

# File net/pop.rb, line 732
    def unique_id
      return @uid if @uid
      @pop.set_all_uids
      @uid
    end

[Validate]