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

クラスResponseCache

java.lang.Object
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()  
  • メソッドのサマリー

    修飾子と型 メソッド 説明
    abstract CacheResponse get​(URI uri, String rqstMethod, Map<String,​List<String>> rqstHeaders)
    要求URI、要求メソッド、および要求ヘッダーに基づいて、キャッシュ内の応答を取得します。
    static ResponseCache getDefault()
    システム全体の応答キャッシュを取得します。
    abstract CacheRequest put​(URI uri, URLConnection conn)
    プロトコル・ハンドラがリソースの取得完了後にこのメソッドを呼び出し、ResponseCacheがそのリソースをキャッシュ内に格納すべきかどうかを決定します。
    static void setDefault​(ResponseCache responseCache)
    システム全体のキャッシュを設定(または設定解除)します。

    クラス java.lang.Objectで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • コンストラクタの詳細

    • 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の場合