Spec-Zone.ru › OpenJDK 27

Класс ResponseCache

java.lang.Object
java.net.ResponseCache
public abstract class ResponseCache extends Object
Представляет реализации кэшей URLConnection. Экземпляр такого класса можно зарегистрировать в системе с помощью ResponseCache.setDefault(ResponseCache), после чего система будет вызывать этот объект, чтобы:
  • сохранять в кэше данные ресурсов, полученные из внешнего источника
  • пытаться получить запрошенный ресурс, который мог быть сохранён в кэше
Реализация ResponseCache определяет, какие ресурсы следует кэшировать и как долго их следует хранить в кэше. Если запрошенный ресурс нельзя получить из кэша, обработчики протоколов загрузят его из исходного расположения. Параметр URLConnection#useCaches определяет, разрешено ли протоколу использовать кэшированный ответ. Дополнительные сведения о кэшировании HTTP см. в RFC 2616: протокол передачи гипертекста — HTTP/1.1
Начиная с версии:
1.5
Внешние спецификации
  • RFC 2616: протокол передачи гипертекста — HTTP/1.1

Краткое описание конструкторов

Конструктор Описание
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)
Устанавливает (или отключает) общесистемный кэш.

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
boolean equals(Object obj)
Определяет, является ли другой объект «равным» этому.
protected void finalize()
Устарело, планируется удаление: этот элемент API может быть удалён в будущей версии.
Финализация объявлена устаревшей и может быть удалена в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого объекта Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Заставляет текущий поток ожидать пробуждения, обычно посредством вызова notify или interrupt.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно посредством вызова notify или interrupt, либо до истечения заданного промежутка времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно посредством вызова notify или interrupt, либо до истечения заданного промежутка времени.

Подробное описание конструкторов

ResponseCache

public ResponseCache()
Конструктор для вызова подклассами.

Подробное описание методов

getDefault

public static ResponseCache getDefault()
Возвращает общесистемный кэш ответов.
Возвращает:
общесистемный ResponseCache
Начиная с версии:
1.5
См. также:
  • setDefault(ResponseCache)

setDefault

public static void setDefault(ResponseCache responseCache)
Устанавливает (или отключает) общесистемный кэш. Примечание: нестандартные обработчики протоколов могут игнорировать эту настройку.
Параметры:
responseCache — кэш ответов или null для отключения кэша.
Начиная с версии:
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 — Map, сопоставляющая имена полей заголовков запроса со списками значений полей, представляющими текущие заголовки запроса
Возвращает:
экземпляр 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() должен вернуть объект CacheRequest, содержащий OutputStream, который обработчик протокола будет использовать для записи ресурса в кэш. Если ресурс не нужно кэшировать, put должен вернуть null.
Параметры:
uri — URI для ссылки на запрошенный сетевой ресурс
conn — экземпляр URLConnection, используемый для получения кэшируемого ответа
Возвращает:
CacheRequest для записи кэшируемого ответа. Возвращаемое значение null означает, что вызывающий объект не намерен кэшировать ответ.
Выбрасывает:
IOException — при возникновении ошибки ввода-вывода
IllegalArgumentException — если любой из аргументов равен null

Сообщить об ошибке или предложить улучшение
Дополнительные сведения о справочнике API и документации для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API