Интерфейс SSLSessionContext
public interface SSLSessionContext
SSLSessionContext представляет набор SSLSession, связанных с одним объектом. Например, он может быть связан с сервером или клиентом, участвующими во многих сессиях одновременно. Не все среды содержат контексты сессий. Например, бессостоятельные возобновления сессий.
Контексты сессий могут не содержать всех сессий. Например, бессостоятельные сессии не хранятся в контексте сессии.
Существуют SSLSessionContext параметра, которые влияют на способ хранения сессий:
- Сессии могут истекать по истечении указанного лимита времени.
- Количество сессий, которые могут храниться в контексте, может быть ограничено.
SSLSessionContext могут быть перечислены.- Since:
- 1.4
- См. также:
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
Enumeration |
getIds() |
Возвращает перечисление всех известных идентификаторов сессий, сгруппированных под этим SSLSessionContext. |
SSLSession |
getSession |
Возвращает SSLSession, связанную с указанным идентификатором сессии. |
int |
getSessionCacheSize() |
Возвращает размер кэша, используемого для хранения SSLSession объектов, сгруппированных под этим SSLSessionContext. |
int |
getSessionTimeout() |
Возвращает лимит таймаута SSLSession объектов, сгруппированных под этим SSLSessionContext. |
void |
setSessionCacheSize |
Устанавливает размер кэша, используемого для хранения SSLSession объектов, сгруппированных под этим SSLSessionContext. |
void |
setSessionTimeout |
Устанавливает лимит таймаута для 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
int getSessionTimeout()
SSLSession объектов, сгруппированных под этим SSLSessionContext. Если лимит таймаута установлен в 't' секунд, сессия превышает лимит таймаута через 't' секунд после её создания. Когда лимит таймаута превышен для сессии, объект SSLSession помечается так, что будущие соединения не смогут возобновить или присоединиться к сессии. Активные сессии могут продолжаться до тех пор, пока не предпринимаются операции возобновления и присоединения. Проверка сессий, превышающих лимит таймаута, производится немедленно при каждом изменении лимита таймаута для этого SSLSessionContext.
- Примечание реализации:
- Реализация JDK возвращает таймаут сессии, установленный методом
setSessionTimeout, или, если он не установлен, значение по умолчанию в 86400 секунд (24 часа). - Возвращает:
- лимит таймаута сессии в секундах; ноль означает отсутствие ограничения.
- См. также:
setSessionCacheSize
void setSessionCacheSize(int size)
SSLSession объектов, сгруппированных под этим SSLSessionContext.- Примечание API:
- Обратите внимание, что реализация JDK использует значения по умолчанию для размера кэша сессий и таймаута. См.
getSessionCacheSizeиgetSessionTimeoutдля получения дополнительной информации. Приложения должны учитывать свои требования к производительности и переопределять значения по умолчанию при необходимости. - Параметры:
-
size- новый лимит размера кэша сессий; ноль означает отсутствие ограничения. - Исключения:
-
IllegalArgumentException- если указанный размер< 0. - См. также:
getSessionCacheSize
int getSessionCacheSize()
SSLSession объектов, сгруппированных под этим SSLSessionContext.- Примечание реализации:
- Реализация JDK возвращает размер кэша, установленный методом
setSessionCacheSize, или, если он не установлен, значение системной переменнойjavax.net.ssl.sessionCacheSize. Если ни то, ни другое не установлено, возвращается значение по умолчанию 20480. - Возвращает:
- размер кэша сессий; ноль означает отсутствие ограничения по размеру.
- См. также:
© 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://download.java.net/java/early_access/jdk24/docs/api/java.base/javax/net/ssl/SSLSessionContext.html