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.
The sequence number of the message on the server.
The length of the message in octets.
The length of the message in octets.
# File tmp/rubies/ruby-2.5.9/lib/net/pop.rb, line 858
def delete
@command.dele @number
@deleted = true
end
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
# File tmp/rubies/ruby-2.5.9/lib/net/pop.rb, line 866
def deleted?
@deleted
end
True if the mail has been deleted.
# File tmp/rubies/ruby-2.5.9/lib/net/pop.rb, line 834
def header(dest = +'')
top(0, dest)
end
Fetches the message header.
The optional dest
argument is obsolete.
This method raises a POPError
if an error occurs.
# File tmp/rubies/ruby-2.5.9/lib/net/pop.rb, line 760
def inspect
+"#<#{self.class} #{@number}#{@deleted ? ' deleted' : ''}>"
end
Provide human-readable stringification of class state.
# File tmp/rubies/ruby-2.5.9/lib/net/pop.rb, line 802
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
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.
# File tmp/rubies/ruby-2.5.9/lib/net/pop.rb, line 822
def top(lines, dest = +'')
@command.top(@number, lines) do |chunk|
dest << chunk
end
dest
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.
# File tmp/rubies/ruby-2.5.9/lib/net/pop.rb, line 874
def unique_id
return @uid if @uid
@pop.set_all_uids
@uid
end
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.