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

クラスResponseCache


  • public abstract class ResponseCache
    extends Object
    URLConnectionのキャッシュの実装を表します。 そのようなクラスのインスタンスをシステムに登録するには、ResponseCache.setDefault(ResponseCache)を実行します。システムがこのオブジェクトを呼び出す目的は、次のとおりです。
    • 外部リソースから取得されたリソース・データをキャッシュ内に格納します。
    • キャッシュに格納された可能性のある、要求されたリソースの取得を試みます。
    ResponseCache実装は、キャッシュすべきリソースとそのキャッシュ期間を決定します。 要求されたリソースがキャッシュから取得不可能な場合、プロトコル・ハンドラはそのリソースを元の場所から取得します。 URLConnection#useCachesの設定によって、プロトコルがキャッシュ内の応答を使用できるかどうかが決まります。 HTTPキャッシュ処理の詳細については、「RFC 2616: Hypertext Transfer Protocol -- HTTP/1.1」を参照してください。
    導入されたバージョン:
    1.5
    • コンストラクタの詳細

      • ResponseCache

        public ResponseCache()
    • メソッドの詳細

      • getDefault

        public static ResponseCache getDefault()
        システム全体の応答キャッシュを取得します。
        戻り値:
        システム全体のResponseCache
        例外:
        SecurityException - セキュリティ・マネージャがインストールされていて、それがNetPermission(getResponseCache)を拒否した場合
        導入されたバージョン:
        1.5
        関連項目:
        setDefault(ResponseCache)
      • setDefault

        public static void setDefault​(ResponseCache responseCache)
        システム全体のキャッシュを設定(または設定解除)します。 注: 標準でないプロトコル・ハンドラは、この設定を無視する可能性があります。
        パラメータ:
        responseCache−応答キャッシュ。キャッシュを設定解除する場合はnull
        例外:
        SecurityException - セキュリティ・マネージャがインストールされていて、それがNetPermission(setResponseCache)を拒否した場合
        導入されたバージョン:
        1.5
        関連項目:
        getDefault()
      • get

        public abstract CacheResponse get​(URI uri,
                                          String rqstMethod,
                                          Map<String,​List<String>> rqstHeaders)
                                   throws IOException
        要求URI、要求メソッド、および要求ヘッダーに基づいて、キャッシュ内の応答を取得します。 通常、プロトコル・ハンドラは、ネットワーク・リソースの取得要求を送信する前に、このメソッドを呼び出します。 キャッシュ内の応答が返された場合、そのリソースが代わりに使用されます。
        パラメータ:
        uri - 要求されたネットワーク・リソースの参照に使用されるURI
        rqstMethod−要求メソッドを表すString
        rqstHeaders - 現在の要求ヘッダーを表す、要求ヘッダー・フィールド名からフィールド値のリストへのマップ
        戻り値:
        キャッシュから取得可能な場合はCacheResponseインスタンス。それ以外の場合はnull
        例外:
        IOException - 入出力エラーが発生した場合
        IllegalArgumentException - 引数のいずれかがnullの場合
        関連項目:
        URLConnection.setUseCaches(boolean), URLConnection.getUseCaches(), URLConnection.setDefaultUseCaches(boolean), URLConnection.getDefaultUseCaches()
      • put

        public abstract CacheRequest put​(URI uri,
                                         URLConnection conn)
                                  throws IOException
        プロトコル・ハンドラがリソースの取得完了後にこのメソッドを呼び出し、ResponseCacheがそのリソースをキャッシュ内に格納すべきかどうかを決定します。 リソースがキャッシュに格納される場合、put()は、OutputStreamを含むCacheRequestオブジェクトを返します。プロトコル・ハンドラはこれを使ってリソースをキャッシュ内に書き込みます。 リソースがキャッシュに格納されない場合、putはnullを返します。
        パラメータ:
        uri - 要求されたネットワーク・リソースの参照に使用されるURI
        conn−キャッシュ対象の応答の取得に使用されるURLConnectionインスタンス
        戻り値:
        キャッシュ対象の応答を記録するためのCacheRequest nullが返された場合、それは、呼出し元が応答をキャッシュに格納するつもりがないことを示す。
        例外:
        IOException - 入出力エラーが発生した場合
        IllegalArgumentException - 引数のいずれかがnullの場合