概要 | パッケージ | クラス | 使用 | 階層ツリー | 非推奨 API | 索引 | ヘルプ
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

## javax.mail
クラス Transport

    java.lang.Object
      javax.mail.Service
          javax.mail.Transport

直系の既知のサブクラス:
  SMTPTransport

    public abstract class Transport

extends Service

メッセージトランスポートをモデル化する抽象クラスです。 サブクラスは実際の実装を提供します。

`Transport` は `Service` クラスを拡張します。 トランスポートの命名、トランスポートへの接続、 接続イベントのリスニングの為の多数の共通メソッドを提供します。

関連項目:
  `Service`, `ConnectionEvent`, `TransportEvent`

フィールドの概要

クラス javax.mail.Service から継承されたフィールド
`debug, session, url`

コンストラクタの概要
`Transport(Session session, URLName urlname)` コンストラクタです。

メソッドの概要
`void` | `addTransportListener(TransportListener l)` Transport イベントのリスナーを追加します。
`protected void` | `notifyTransportListeners(int type, Address[] validSent, Address[] validUnsent, Address[] invalid, Message msg)` 全ての TransportListener に通知します。
`void` | `removeTransportListener(TransportListener l)` Transport イベントのリスナーを削除します。
`static void` | `send(Message msg)` メッセージを送信します。
`static void` | `send(Message msg, Address[] addresses)` 指定されたアドレスにメッセージを送信します。
`abstract void` | `sendMessage(Message msg, Address[] addresses)` Message を指定されたリストのアドレスに送信します。

クラス javax.mail.Service から継承されたメソッド
`addConnectionListener, close, connect, connect, connect, connect, finalize, getURLName, isConnected, notifyConnectionListeners, protocolConnect, queueEvent, removeConnectionListener, setConnected, setURLName, toString`

クラス java.lang.Object から継承されたメソッド
`clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

コンストラクタの詳細

### Transport

    public Transport(Session session,
                     URLName urlname)

  コンストラクタです。

  パラメータ:
    `session` - この Transport の Session オブジェクト
    `urlname` - この Transport に使用される URLName オブジェクト

メソッドの詳細

### send

    public static void send(Message msg)
                     throws MessagingException

  メッセージを送信します。メッセージは、メッセージに指定された 全ての受信アドレス (`Message` メソッド `getAllRecipients` から返される) に、 各アドレスに適切なメッセージトランスポートを使用して送信されます。 `send` メソッドは、メッセージを送信する前に、 メッセージ上で `saveChanges` メソッドを呼び出します。

  メッセージの送信中、Transport により受信者アドレスの何れかについて無効である事が検出された場合、 SendFailedException がスローされます。 クライアントはこの例外を検査する事で、障害の詳細情報を得る事ができます。 メッセージが有効なアドレスに無事送信されているかどうかは、Transport 実装に依存します。 詳細については SendFailedException を参照して下さい。 又、送信が正常に終了した事は、メッセージが最終的な受信者に届いた事を意味しません。 配信の後の段階で障害が発生する事もあります。 Transport が受信者への配信に関するメッセージを受け取ったら、その後に発生する障害は、 配信されなかったメッセージの返信等、別の仕組みを通して報告される必要があります。

  パラメータ:
    `msg` - 送信するメッセージ
  例外:
    `SendFailedException` - メッセージが受信者の一部又は全部に送信できなかった場合
    `MessagingException`
  関連項目:
    `Message.saveChanges()`, `Message.getAllRecipients()`, `send(Message, Address[])`, `SendFailedException`

### send

    public static void send(Message msg,
                            Address[] addresses)
                     throws MessagingException

  指定されたアドレスにメッセージを送信します。 メッセージ自身に指定された受信者は全て無視します。 `send` メソッドは、メッセージを送信する前に、 メッセージ上で `saveChanges` メソッドを呼び出します。

  パラメータ:
    `msg` - 送信するメッセージ
    `addresses` - メッセージ送信先のアドレス
  例外:
    `SendFailedException` - メッセージが受信者の一部又は全部に送信できなかった場合
    `MessagingException`
  関連項目:
    `Message.saveChanges()`, `send(Message)`, `SendFailedException`

### sendMessage

    public abstract void sendMessage(Message msg,
                                     Address[] addresses)
                              throws MessagingException

  Message を指定されたリストのアドレスに送信します。 配信状態を示す適切な TransportEvent は、この Transport 上に登録されている 全ての TransportListener に配信されます。 又、アドレスの何れかが無効の場合、SendFailedException がスローされます。 但し、有効なアドレスにはメッセージが送信されます。

  静的な `send` メソッドとは異なり、`sendMessage` メソッドは、 メッセージ上で `saveChanges` メソッドを呼び出しません。 呼び出し側がこの呼び出しを行う必要があります。

  パラメータ:
    `msg` - 送信される Message
    `addresses` - このメッセージの送信先アドレスのリスト
  例外:
    `SendFailedException` - 無効なアドレスの為に送信が失敗した場合
    `MessagingException` - 接続が終了している場合、又は接続状態にない場合
  関連項目:
    `TransportEvent`

### addTransportListener

    public void addTransportListener(TransportListener l)

  Transport イベントのリスナーを追加します。

  ここで提供されるデフォルトの実装は、 このリスナーを内部の TransportListener リストに追加します。

  パラメータ:
    `l` - Transport イベントの Listener
  関連項目:
    `TransportEvent`

### removeTransportListener

    public void removeTransportListener(TransportListener l)

  Transport イベントのリスナーを削除します。

  ここで提供されるデフォルトの実装は、 このリスナーを内部の TransportListener リストから削除します。

  パラメータ:
    `l` - リスナー
  関連項目:
    `addTransportListener(javax.mail.event.TransportListener)`

### notifyTransportListeners

    protected void notifyTransportListeners(int type,
                                            Address[] validSent,
                                            Address[] validUnsent,
                                            Address[] invalid,
                                            Message msg)

  全ての TransportListener に通知します。 Transport 実装はこのメソッドを使用して、TransportEvent をブロードキャストする必要があります。

  提供されるデフォルトの実装は、イベントを内部イベントキューに入れます。 イベントディスパッチャスレッドはキューからイベントを出し、 登録された TransportListener にディスパッチします。 イベントのディスパッチは別個のスレッドで起こるため、デッドロック問題を防ぎます。

概要 | パッケージ | クラス | 使用 | 階層ツリー | 非推奨 API | 索引 | ヘルプ
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド