POP サーバー上のメール一通を表現するクラス。
メールの取得や消去といった操作をカプセル化します。 Net::POP3 クラスが生成するもので、ユーザが直接は生成しません。
pop -> String[permalink][rdoc]all -> Stringmail -> Stringpop {|str| .... } -> nilall {|str| .... } -> nilmail {|str| .... } -> nilpop(io) -> objectall(io) -> objectmail(io) -> objectメールを受信します。
引数もブロックも与えられなかった場合にはメールの内容を文字列で返します。
ブロックが渡されたときは、メールの内容を少しずつ読み込み、読みこんだ文字列を引数としてブロックを呼びだします。
ブロックなしで、オブジェクトを引数として渡すとそのオブジェクトにメールの内容を << メソッドで順次書き込みます。通常 IO オブジェクトを渡します。この場合引数として渡したオブジェクトを返します。
pop, all, mail はすべて同じ効果ですが、 all と mail は obsolete です。
使用例:
require 'net/pop'
Net::POP3.start('pop.example.com', 110,
'YourAccount', 'YourPassword') {|pop|
pop.mails.each do |m|
puts m.pop
end
}
ブロックを利用する例:
require 'net/pop'
Net::POP3.start('pop.example.com', 110) {|pop|
pop.each_mail do |m|
m.pop do |str|
print str
end
end
}
delete -> ()[permalink][rdoc]delete! -> ()メールに削除マークを付けます。
削除マークを付けたメールは読み出せなくなります。セッション終了時に実際に削除されます。 Net::POP3#reset を呼ぶと削除マークは取り消されます。
delete! は obsolete です。
[SEE_ALSO] Net::POPMail#deleted?
deleted? -> bool[permalink][rdoc]メールに削除マークが付けられている場合に真を返します。
[SEE_ALSO] Net::POPMail#delete
header(dest='') -> String[permalink][rdoc]メールヘッダを受信し、文字列として返します。
destを渡すとそのオブジェクトにデータを書き込みますが、これは obsolete なので使わないでください。
size -> Integer[permalink][rdoc]length -> Integerメールのサイズ (単位はバイト) をかえします。
number -> Integer[permalink][rdoc]メールに対して振られた、そのメールボックスで一意な番号を返します。
サーバに接続しなおすとこの番号は変化する場合があります。メールごとに一意な識別子が必要なときは Net::POPMail#uidl を使ってください。
top(lines, dest='') -> String[permalink][rdoc]メールヘッダと本文 lines 行を受信し、文字列として返します。
destを渡すとそのオブジェクトにデータを書き込みますが、これは obsolete なので使わないでください。
uidl -> String[permalink][rdoc]unique_id -> Stringメールに対して振られた、サーバ上で一意な識別子 (UIDL) をかえします。
Net::POPMail#number と違い、この UIDL は接続しなおしても変化しません。