モジュール java.base
パッケージ javax.net.ssl

クラスSNIMatcher


  • public abstract class SNIMatcher
    extends Object
    このクラスのインスタンスは、SNIServerNameインスタンスに対してマッチング操作を実行するマッチャを表します。

    サーバーは、特定のSSLSocketまたはSSLEngineインスタンスで接続を受け入れるべきかどうかを、Server Name Indication (SNI)情報を使用して判断できます。 たとえば、単一の基礎となるネットワーク・アドレスで複数の仮想または名前ベースのサーバーがホストされている場合、サーバー・アプリケーションは、SNI情報を使用して、このサーバーが、クライアントがアクセスしようとしている正しいサーバーであるかどうかを判断できます。 このクラスのインスタンスは、サーバーによって、ホスト名などの特定のタイプの受け付け可能なサーバー名を確認するために使用できます。

    SNIMatcherオブジェクトは不変です。 サブクラスは、一度作成されたインスタンスの状態を変更できるメソッドの提供は実行できません。

    導入されたバージョン:
    1.8
    関連項目:
    SNIServerName, SNIHostName, SSLParameters.getSNIMatchers(), SSLParameters.setSNIMatchers(Collection)
    • コンストラクタの詳細

      • SNIMatcher

        protected SNIMatcher​(int type)
        指定されたサーバー名タイプを使用してSNIMatcherを作成します。
        パラメータ:
        type - このマッチャの実行対象となるサーバー名のタイプ
        例外:
        IllegalArgumentException - typeが0 - 255 (両端を含む)の範囲に含まれていない場合。
    • メソッドの詳細

      • getType

        public final int getType()
        このSNIMatcherオブジェクトのサーバー名タイプを返します。
        戻り値:
        このSNIMatcherオブジェクトのサーバー名タイプ。
        関連項目:
        SNIServerName
      • matches

        public abstract boolean matches​(SNIServerName serverName)
        指定されたSNIServerNameのマッチングを試みます。
        パラメータ:
        serverName - このマッチャによるマッチング操作の実行対象となるSNIServerNameインスタンス
        戻り値:
        マッチャが指定されたserverNameにマッチした場合にのみtrue
        例外:
        NullPointerException - serverNamenullである場合
        IllegalArgumentException - serverNameが、このマッチャに指定されたサーバー名タイプでない場合
        関連項目:
        SNIServerName