要約
POP サーバー上のメール一通を表現するクラス。
メールの取得や消去といった操作をカプセル化します。 Net::POP3 クラスが生成するもので、ユーザが直接は生成しません。
目次
インスタンスメソッド
pop -> String
[permalink][rdoc][edit]all -> String
mail -> String
pop {|str| .... } -> nil
all {|str| .... } -> nil
mail {|str| .... } -> nil
pop(io) -> object
all(io) -> object
mail(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 }
- [PARAM] io:
- メールの内容を書きこむオブジェクト
- [EXCEPTION] TimeoutError:
- 通信がタイムアウトした場合に発生します
- [EXCEPTION] Net::POPError:
- サーバが認証失敗以外のエラーを報告した場合に発生します
- [EXCEPTION] Net::POPBadResponse:
- サーバからの応答がプロトコル上不正であった場合に発生します
delete -> ()
[permalink][rdoc][edit]delete! -> ()
-
メールに削除マークを付けます。
削除マークを付けたメールは読み出せなくなります。セッション終了時に実際に削除されます。 Net::POP3#reset を呼ぶと削除マークは取り消されます。
delete! は obsolete です。
- [EXCEPTION] TimeoutError:
- 通信がタイムアウトした場合に発生します
- [EXCEPTION] Net::POPError:
- サーバが認証失敗以外のエラーを報告した場合に発生します
- [EXCEPTION] Net::POPBadResponse:
- サーバからの応答がプロトコル上不正であった場合に発生します
[SEE_ALSO] Net::POPMail#deleted?
deleted? -> bool
[permalink][rdoc][edit]-
メールに削除マークが付けられている場合に真を返します。
[SEE_ALSO] Net::POPMail#delete
header(dest='') -> String
[permalink][rdoc][edit]-
メールヘッダを受信し、文字列として返します。
destを渡すとそのオブジェクトにデータを書き込みますが、これは obsolete なので使わないでください。
- [PARAM] dest:
- ヘッダを書き込む先(obsoleteなので使わないでください)
- [EXCEPTION] TimeoutError:
- 通信がタイムアウトした場合に発生します
- [EXCEPTION] Net::POPError:
- サーバが認証失敗以外のエラーを報告した場合に発生します
- [EXCEPTION] Net::POPBadResponse:
- サーバからの応答がプロトコル上不正であった場合に発生します
size -> Integer
[permalink][rdoc][edit]length -> Integer
-
メールのサイズ (単位はバイト) をかえします。
number -> Integer
[permalink][rdoc][edit]-
メールに対して振られた、そのメールボックスで一意な番号を返します。
サーバに接続しなおすとこの番号は変化する場合があります。メールごとに一意な識別子が必要なときは Net::POPMail#uidl を使ってください。
top(lines, dest='') -> String
[permalink][rdoc][edit]-
メールヘッダと本文 lines 行を受信し、文字列として返します。
destを渡すとそのオブジェクトにデータを書き込みますが、これは obsolete なので使わないでください。
- [PARAM] lines:
- 本文を読みだす行数
- [PARAM] dest:
- データを書き込む先(obsoleteなので使わないでください)
- [EXCEPTION] TimeoutError:
- 通信がタイムアウトした場合に発生します
- [EXCEPTION] Net::POPError:
- サーバが認証失敗以外のエラーを報告した場合に発生します
- [EXCEPTION] Net::POPBadResponse:
- サーバからの応答がプロトコル上不正であった場合に発生します
uidl -> String
[permalink][rdoc][edit]unique_id -> String
-
メールに対して振られた、サーバ上で一意な識別子 (UIDL) をかえします。
Net::POPMail#number と違い、この UIDL は接続しなおしても変化しません。