| 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.
| length | [R] | The length of the message in octets. |
| number | [R] | The sequence number of the message on the server. |
Provide human-readable stringification of class state.
# File net/pop.rb, line 605 def inspect "#<#{self.class} #{@number}#{@deleted ? ' deleted' : ''}>" 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') {|pop|
n = 1
pop.mails.each do |popmail|
File.open("inbox/#{n}", 'w') {|f|
f.write popmail.pop
}
popmail.delete
n += 1
end
}
# Example with block
POP3.start('pop.example.com', 110,
'YourAccount, 'YourPassword') {|pop|
n = 1
pop.mails.each do |popmail|
File.open("inbox/#{n}", 'w') {|f|
popmail.pop do |chunk| ####
f.write chunk
end
}
n += 1
end
}
This method raises a POPError if an error occurs.
# File net/pop.rb, line 643 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
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') {|pop|
n = 1
pop.mails.each do |popmail|
File.open("inbox/#{n}", 'w') {|f|
f.write popmail.pop
}
popmail.delete ####
n += 1
end
}
# File net/pop.rb, line 696 def delete @command.dele @number @deleted = true end