モジュール 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