Spec-Zone.ru › OpenJDK 25

Интерфейс SSLSessionContext

public interface SSLSessionContext
SSLSessionContext представляет собой набор SSLSession, связанных с одной сущностью. Например, он может быть связан с сервером или клиентом, одновременно участвующим во многих сеансах.

Не во всех средах имеются контексты сеансов. Например, при возобновлении сеанса без сохранения состояния.

Контексты сеансов могут содержать не все сеансы. Например, сеансы без сохранения состояния не хранятся в контексте сеанса.

На хранение сеансов влияют следующие параметры SSLSessionContext:

  • Можно задать время, по истечении которого сеансы становятся недействительными.
  • Можно ограничить число сеансов, хранящихся в контексте.
Сеанс можно получить по его идентификатору, а также получить список всех идентификаторов сеансов в SSLSessionContext.
Начиная с:
1.4
См. также:
  • SSLSession

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

Модификатор и тип Метод Описание
Enumeration<byte[]> getIds()
Возвращает перечисление всех известных идентификаторов сеансов, сгруппированных в этом SSLSessionContext.
SSLSession getSession(byte[] sessionId)
Возвращает SSLSession, связанный с указанным идентификатором сеанса.
int getSessionCacheSize()
Возвращает размер кэша, используемого для хранения объектов SSLSession, сгруппированных в этом SSLSessionContext.
int getSessionTimeout()
Возвращает время ожидания для объектов SSLSession, сгруппированных в этом SSLSessionContext.
void setSessionCacheSize(int size)
Задает размер кэша, используемого для хранения объектов SSLSession, сгруппированных в этом SSLSessionContext.
void setSessionTimeout(int seconds)
Задает время ожидания для объектов SSLSession, сгруппированных в этом SSLSessionContext.

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

getSession

SSLSession getSession(byte[] sessionId)
Возвращает SSLSession, связанный с указанным идентификатором сеанса.
Параметры:
sessionId — идентификатор сеанса
Возвращает:
SSLSession или null, если указанный идентификатор сеанса не соответствует допустимому SSLSession.
Исключения:
NullPointerException — если sessionId равен null.

getIds

Enumeration<byte[]> getIds()
Возвращает перечисление всех известных идентификаторов сеансов, сгруппированных в этом SSLSessionContext.

Контексты сеансов могут содержать не все сеансы. Например, сеансы без сохранения состояния не хранятся в контексте сеанса.

Возвращает:
перечисление всех идентификаторов сеансов

setSessionTimeout

void setSessionTimeout(int seconds)
Задает время ожидания для объектов SSLSession, сгруппированных в этом SSLSessionContext.

Если время ожидания задано как «t» секунд, сеанс превышает это время ожидания через «t» секунд после момента его создания. Когда время ожидания сеанса истекает, объект SSLSession помечается так, чтобы последующие подключения не могли возобновить сеанс или повторно присоединиться к нему. Активные сеансы можно продолжать использовать, если не предпринимаются попытки возобновления или повторного присоединения. Проверка сеансов, время ожидания которых истекло, выполняется немедленно при каждом изменении времени ожидания для этого SSLSessionContext.

Примечание к API:
Обратите внимание, что реализация JDK использует значения по умолчанию как для размера кэша сеансов, так и для времени ожидания. Дополнительные сведения см. в разделах getSessionCacheSize и getSessionTimeout. Приложениям следует учитывать свои требования к производительности и при необходимости переопределять значения по умолчанию.
Параметры:
seconds — новое время ожидания сеанса в секундах; ноль означает отсутствие ограничения.
Исключения:
IllegalArgumentException — если заданное время ожидания равно < 0.
См. также:
  • getSessionTimeout()

getSessionTimeout

int getSessionTimeout()
Возвращает время ожидания для объектов SSLSession, сгруппированных в этом SSLSessionContext.

Если время ожидания задано как «t» секунд, сеанс превышает это время ожидания через «t» секунд после момента его создания. Когда время ожидания сеанса истекает, объект SSLSession помечается так, чтобы последующие подключения не могли возобновить сеанс или повторно присоединиться к нему. Активные сеансы можно продолжать использовать, если не предпринимаются попытки возобновления или повторного присоединения. Проверка сеансов, время ожидания которых истекло, выполняется немедленно при каждом изменении времени ожидания для этого SSLSessionContext.

Примечание к реализации:
Реализация JDK возвращает время ожидания сеанса, заданное методом setSessionTimeout, либо, если оно не задано, значение по умолчанию — 86400 секунд (24 часа).
Возвращает:
время ожидания сеанса в секундах; ноль означает отсутствие ограничения.
См. также:
  • setSessionTimeout(int)

setSessionCacheSize

void setSessionCacheSize(int size)
Задает размер кэша, используемого для хранения объектов SSLSession, сгруппированных в этом SSLSessionContext.
Примечание к API:
Обратите внимание, что реализация JDK использует значения по умолчанию как для размера кэша сеансов, так и для времени ожидания. Дополнительные сведения см. в разделах getSessionCacheSize и getSessionTimeout. Приложениям следует учитывать свои требования к производительности и при необходимости переопределять значения по умолчанию.
Параметры:
size — новый предел размера кэша сеансов; ноль означает отсутствие ограничения.
Исключения:
IllegalArgumentException — если указанный размер равен < 0.
См. также:
  • getSessionCacheSize()

getSessionCacheSize

int getSessionCacheSize()
Возвращает размер кэша, используемого для хранения объектов SSLSession, сгруппированных в этом SSLSessionContext.
Примечание к реализации:
Реализация JDK возвращает размер кэша, заданный методом setSessionCacheSize, либо, если он не задан, значение системного свойства javax.net.ssl.sessionCacheSize. Если не задано ни то ни другое, возвращается значение по умолчанию — 20480.
Возвращает:
размер кэша сеансов; ноль означает отсутствие ограничения по размеру.
См. также:
  • setSessionCacheSize(int)

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее дочерних компаний в США и других странах.
Авторское право © 1993, 2025, 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.
https://docs.oracle.com/en/java/javase/25/docs/api/java.base/javax/net/ssl/SSLSessionContext.html

Spec-Zone.ru

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