Spec-Zone.ru › OpenJDK 25

Класс SSLEngineResult

java.lang.Object
javax.net.ssl.SSLEngineResult
public class SSLEngineResult extends Object
Инкапсуляция состояния результата, полученного в результате вызовов ввода-вывода SSLEngine.

SSLEngine предоставляет средства для установления защищённых сеансов связи между двумя узлами. Операции SSLEngine обычно потребляют байты из входного буфера и записывают байты в выходной буфер. Этот класс предоставляет значения результата операции, описывающие состояние SSLEngine, в том числе сведения о том, какие операции необходимы для завершения текущего рукопожатия. Кроме того, он сообщает количество байтов, потреблённых и записанных в результате этой операции.

С версии:
1.5
См. также:
  • SSLEngine
  • SSLEngine.wrap(ByteBuffer, ByteBuffer)
  • SSLEngine.unwrap(ByteBuffer, ByteBuffer)

Краткое описание вложенных классов

Модификатор и тип Класс Описание
static enum  SSLEngineResult.HandshakeStatus
Перечисление SSLEngineResult, описывающее текущее состояние рукопожатия этого SSLEngine.
static enum  SSLEngineResult.Status
Перечисление SSLEngineResult, описывающее общий результат операции SSLEngine.

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

Конструктор Описание
SSLEngineResult(SSLEngineResult.Status status, SSLEngineResult.HandshakeStatus handshakeStatus, int bytesConsumed, int bytesProduced)
Инициализирует новый экземпляр этого класса.
SSLEngineResult(SSLEngineResult.Status status, SSLEngineResult.HandshakeStatus handshakeStatus, int bytesConsumed, int bytesProduced, long sequenceNumber)
Инициализирует новый экземпляр этого класса.

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

Модификатор и тип Метод Описание
final int bytesConsumed()
Возвращает количество байтов, потреблённых из входного буфера.
final int bytesProduced()
Возвращает количество байтов, записанных в выходной буфер.
final SSLEngineResult.HandshakeStatus getHandshakeStatus()
Возвращает состояние рукопожатия этой операции SSLEngine.
final SSLEngineResult.Status getStatus()
Возвращает значение результата этой операции SSLEngine.
final long sequenceNumber()
Возвращает порядковый номер созданной или обработанной записи SSL/TLS/DTLS (необязательная операция).
String toString()
Возвращает строковое представление этого объекта.

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

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

SSLEngineResult

public SSLEngineResult(SSLEngineResult.Status status, SSLEngineResult.HandshakeStatus handshakeStatus, int bytesConsumed, int bytesProduced)
Инициализирует новый экземпляр этого класса.
Параметры:
status — значение результата операции.
handshakeStatus — текущее состояние рукопожатия.
bytesConsumed — количество байтов, потреблённых из исходного ByteBuffer
bytesProduced — количество байтов, помещённых в целевой ByteBuffer
Исключения:
IllegalArgumentException — если аргументы status или handshakeStatus равны null либо если bytesConsumed или bytesProduced отрицательны.

SSLEngineResult

public SSLEngineResult(SSLEngineResult.Status status, SSLEngineResult.HandshakeStatus handshakeStatus, int bytesConsumed, int bytesProduced, long sequenceNumber)
Инициализирует новый экземпляр этого класса.
Параметры:
status — значение результата операции.
handshakeStatus — текущее состояние рукопожатия.
bytesConsumed — количество байтов, потреблённых из исходного ByteBuffer
bytesProduced — количество байтов, помещённых в целевой ByteBuffer
sequenceNumber — порядковый номер (беззнаковое long) созданной или обработанной записи SSL/TLS/DTLS либо -1L, если запись не была создана или обработана
Исключения:
IllegalArgumentException — если аргументы status или handshakeStatus равны null либо если bytesConsumed или bytesProduced отрицательны
С версии:
9

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

getStatus

public final SSLEngineResult.Status getStatus()
Возвращает значение результата этой операции SSLEngine.
Возвращает:
значение результата

getHandshakeStatus

public final SSLEngineResult.HandshakeStatus getHandshakeStatus()
Возвращает состояние рукопожатия этой операции SSLEngine.
Возвращает:
состояние рукопожатия

bytesConsumed

public final int bytesConsumed()
Возвращает количество байтов, потреблённых из входного буфера.
Возвращает:
количество потреблённых байтов.

bytesProduced

public final int bytesProduced()
Возвращает количество байтов, записанных в выходной буфер.
Возвращает:
количество созданных байтов

sequenceNumber

public final long sequenceNumber()
Возвращает порядковый номер созданной или обработанной записи SSL/TLS/DTLS (необязательная операция).
Примечание API:
Обратите внимание, что порядковый номер является беззнаковым long и не может превышать -1L. Для сравнения значений беззнакового long рекомендуется использовать режим сравнения беззнаковых long (см. также Long.compareUnsigned()).

Для протоколов DTLS первые 16 бит порядкового номера представляют собой значение счётчика (эпоху), которое увеличивается при каждом изменении состояния шифра. Оставшиеся 48 бит в младшей части порядкового номера представляют номер записи; он ведётся отдельно для каждой эпохи.

Примечание по реализации:
Рекомендуется, чтобы поставщики реализаций никогда не допускали увеличения порядкового номера до -1L. Если порядковый номер близок к переполнению, следует запросить повторное согласование параметров; в противном случае соединение следует немедленно закрыть. Базовая реализация должна выполнять это автоматически.
Возвращает:
порядковый номер созданной или обработанной записи SSL/TLS/DTLS; или -1L, если запись не создана или не обработана либо эта операция не поддерживается базовым поставщиком реализации
С версии:
9
См. также:
  • Long.compareUnsigned(long, long)

toString

public String toString()
Возвращает строковое представление этого объекта.
Переопределяет:
toString в классе Object
Возвращает:
строковое представление объекта

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по 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/SSLEngineResult.html

Spec-Zone.ru

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