openGionopenGion
5.8.1.1

org.opengion.fukurou.mail
クラス MailMessage

java.lang.Object
  上位を拡張 org.opengion.fukurou.mail.MailMessage

public class MailMessage
extends java.lang.Object

MailMessage は、受信メールを処理するためのラッパークラスです。 メッセージオブジェクトを引数にとるコンストラクタによりオブジェクトが作成されます。 日本語処置などを簡易的に扱えるように、ラッパクラス的な使用方法を想定しています。 必要であれば(例えば、添付ファイルを取り出すために、MailAttachFiles を利用する場合など) 内部のメッセージオブジェクトを取り出すことが可能です。 MailReceiveListener クラスの receive( MailMessage ) メソッドで、メールごとにイベントが 発生して、処理する形態が一般的です。

バージョン
4.0
作成者
Kazuhiko Hasegawa
導入されたバージョン:
JDK5.0,

コンストラクタの概要
MailMessage(javax.mail.Message message, java.lang.String host, java.lang.String user)
          メッセージオブジェクトを指定して構築します。
 
メソッドの概要
 void deleteMessage(boolean flag)
          メッセージをメールサーバーから削除するかどうかをセットします。
 java.lang.String getContent()
          メールの本文(Content)を返します。
 java.lang.String getHeader(java.lang.String key)
          メールのヘッダー情報を文字列に変換して返します。
 java.lang.String getHeaders()
          メールの指定のヘッダー情報を文字列に変換して返します。
 java.lang.String getHost()
          内部の ホスト名を返します。
 javax.mail.Message getMessage()
          内部の メッセージオブジェクトを返します。
 java.lang.String getMessageID()
          メッセージID を取得します。
 java.lang.String getNotificationTo()
          受領確認がセットされている場合の 返信先アドレスを返します。
 java.lang.String getSimpleMessage()
          メールの内容を文字列として表現します。
 java.lang.String getSubject()
          メールのタイトル(Subject)を返します。
 java.lang.String getUser()
          内部の ユーザー名を返します。
static java.lang.String mimeDecode(java.lang.String text)
          エンコードされた文字列を、デコードします。
 void saveAttachFiles(java.lang.String dir, boolean useMsgId)
          メールの添付ファイルが存在する場合に、指定のフォルダにセーブします。
 void saveMessage(java.lang.String dir)
          メールの内容を文字列として指定のフォルダにセーブします。
 void saveSimpleMessage(java.lang.String dir)
          メールの内容と、あれば添付ファイルを指定のフォルダにセーブします。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

MailMessage

public MailMessage(javax.mail.Message message,
                   java.lang.String host,
                   java.lang.String user)
メッセージオブジェクトを指定して構築します。

パラメータ:
message - メッセージオブジェクト
host - ホスト
user - ユーザー
メソッドの詳細

getMessage

public javax.mail.Message getMessage()
内部の メッセージオブジェクトを返します。

戻り値:
メッセージオブジェクト

getHost

public java.lang.String getHost()
内部の ホスト名を返します。

戻り値:
ホスト名

getUser

public java.lang.String getUser()
内部の ユーザー名を返します。

戻り値:
ユーザー名

getHeader

public java.lang.String getHeader(java.lang.String key)
メールのヘッダー情報を文字列に変換して返します。 キーは、ヘッダー情報の取り出しと同一です。 例) Return-Path,Delivered-To,Date,From,To,Cc,Subject,Content-Type,Message-Id

パラメータ:
key - メールのヘッダーキー
戻り値:
キーに対するメールのヘッダー情報

getHeaders

public java.lang.String getHeaders()
メールの指定のヘッダー情報を文字列に変換して返します。 ヘッダー情報の取り出しキーと同一の項目を リターンコードで結合しています。 Return-Path,Delivered-To,Date,From,To,Cc,Subject,Content-Type,Message-Id

戻り値:
メールの指定のヘッダー情報

getSubject

public java.lang.String getSubject()
メールのタイトル(Subject)を返します。 日本語文字コード処理も行っています。(JIS→unicode変換等)

戻り値:
メールのタイトル
変更履歴:
4.3.3.5 (2008/11/08) 日本語MIMEエンコードされた文字列を mimeDecode でデコードします。

getContent

public java.lang.String getContent()
メールの本文(Content)を返します。 日本語文字コード処理も行っています。(JIS→unicode変換等)

戻り値:
メールの本文

getMessageID

public java.lang.String getMessageID()
メッセージID を取得します。 基本的には、メッセージIDをそのまま(前後の >, <)は取り除きます。 メッセージIDのないメールは、"unknown." + SentData + "." + From という文字列を 作成します。 さらに、送信日やFrom がない場合、または、文字列として取り出せない場合、 "unknown" を返します。

戻り値:
メッセージID
変更履歴:
4.3.3.5 (2008/11/08) 送信時刻がNULLの場合の処理を追加

deleteMessage

public void deleteMessage(boolean flag)
メッセージをメールサーバーから削除するかどうかをセットします。

パラメータ:
flag - 削除するかどうか true:行う/false:行わない

getSimpleMessage

public java.lang.String getSimpleMessage()
メールの内容を文字列として表現します。 デバッグや、簡易的なメールの内容の取り出し、エラー時のメール保存に使用します。

戻り値:
メールの内容の文字列表現

saveSimpleMessage

public void saveSimpleMessage(java.lang.String dir)
メールの内容と、あれば添付ファイルを指定のフォルダにセーブします。 saveMessage( dir )と、saveAttachFiles( dir,true ) を同時に呼び出しています。

パラメータ:
dir - メールと添付ファイルをセーブするフォルダ

saveMessage

public void saveMessage(java.lang.String dir)
メールの内容を文字列として指定のフォルダにセーブします。 メッセージID.txt という本文にセーブします。 デバッグや、簡易的なメールの内容の取り出し、エラー時のメール保存に使用します。

パラメータ:
dir - メールの内容をセーブするフォルダ

saveAttachFiles

public void saveAttachFiles(java.lang.String dir,
                            boolean useMsgId)
メールの添付ファイルが存在する場合に、指定のフォルダにセーブします。 添付ファイルが存在する場合のみ、処理を実行します。 useMsgId にtrue を設定すると、メッセージID というフォルダを作成し、その下に、 連番 + "_" + 添付ファイル名 でセーブします。(メールには同一ファイル名を複数添付できる為) false の場合は、指定のディレクトリ直下に、連番 + "_" + 添付ファイル名 でセーブします。

パラメータ:
dir - 添付ファイルをセーブするフォルダ
useMsgId - メッセージIDフォルダを作成してセーブ場合:true 指定のディレクトリ直下にセーブする場合:false
変更履歴:
4.3.3.5 (2008/11/08) ディレクトリ指定時のセパレータのチェックを追加

getNotificationTo

public java.lang.String getNotificationTo()
受領確認がセットされている場合の 返信先アドレスを返します。 セットされていない場合は、null を返します。 受領確認は、Disposition-Notification-To ヘッダにセットされる事とし、 このヘッダの内容を返します。セットされていなければ、null を返します。

戻り値:
返信先アドレス(Disposition-Notification-To ヘッダの内容)

mimeDecode

public static final java.lang.String mimeDecode(java.lang.String text)
エンコードされた文字列を、デコードします。 MIMEエンコード は、 =? で開始するエンコード文字列 ですが、場合によって、前のスペースが 存在しない場合があります。 また、メーラーによっては、エンコード文字列を ダブルコーテーションでくくる処理が入っている 場合もあります。 これらの一連のエンコード文字列をデコードします。

パラメータ:
text - エンコードされた文字列(されていない場合は、そのまま返します)
戻り値:
デコードされた文字列
変更履歴:
4.3.3.5 (2008/11/08) 日本語MIMEエンコードされた文字列をデコードします。

openGion 5.8.1.1

Webアプリケーションフレームワーク openGion
SourceForge.JPCopyright (c) 2009 The openGion Project.