Interface RawRequestHandler

Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

@FunctionalInterface public interface RawRequestHandler
Низкоуровневый zero-allocation handler для сырых request/response байтов.

Low-level zero-allocation handler for raw request and response bytes.

В отличие от RequestHandler, здесь пользователь работает напрямую с байтами: request приходит как диапазон в DirectBuffer, а response нужно записать в предоставленный MutableDirectBuffer начиная с responseOffset. Возвращаемое значение — длина response payload.

Unlike RequestHandler, this API works directly with bytes: the request arrives as a range inside a DirectBuffer, and the response must be written into the provided MutableDirectBuffer starting at responseOffset. The return value is the response payload length.

Значение <= 0 означает, что ответ не отправляется.

A return value of <= 0 means that no response should be sent.

  • Method Summary

    Modifier and Type
    Method
    Description
    int
    handle(org.agrona.DirectBuffer requestBuffer, int requestOffset, int requestLength, org.agrona.MutableDirectBuffer responseBuffer, int responseOffset, int responseCapacity)
    Обрабатывает raw-запрос и пишет raw-ответ.
  • Method Details

    • handle

      int handle(org.agrona.DirectBuffer requestBuffer, int requestOffset, int requestLength, org.agrona.MutableDirectBuffer responseBuffer, int responseOffset, int responseCapacity)
      Обрабатывает raw-запрос и пишет raw-ответ.

      Handles a raw request and writes a raw response.

      Parameters:
      requestBuffer - буфер с payload запроса / buffer containing the request payload
      requestOffset - смещение payload запроса / request payload offset
      requestLength - длина payload запроса в байтах / request payload length in bytes
      responseBuffer - буфер для payload ответа / buffer for the response payload
      responseOffset - смещение, с которого нужно писать ответ / offset where response writing starts
      responseCapacity - доступная емкость для payload ответа / available response payload capacity
      Returns:
      число записанных байт; <= 0 означает отсутствие ответа / number of bytes written; <= 0 means no response