Interface ISocketProvider


public interface ISocketProvider
  • Method Details

    • createReader

      IMessageReader createReader(SocketChannel _socket) throws IOException
      Method to create a IMessageReader implementation.
      Parameters:
      _socket - socket to use for reading
      Returns:
      MessageReader
      Throws:
      IOException - if reader could not be created
    • createWriter

      IMessageWriter createWriter(SocketChannel _socket) throws IOException
      Method to create a IMessageWriter implementation.
      Parameters:
      _socket - socket to write to
      Returns:
      MessageWriter
      Throws:
      IOException - if write could not be created
    • setFileDescriptorSupport

      void setFileDescriptorSupport(boolean _support)
      Called to indicate if the current AbstractTransport implementation supports file descriptor passing.
      Parameters:
      _support - true if file descriptor passing is supported, false otherwise
    • isFileDescriptorPassingSupported

      boolean isFileDescriptorPassingSupported()
      Indicate if reader/writer supports file descriptor passing. This is to show if the provider is able to handle file descriptors.
      Returns:
      true if file descriptors are supported by this provider, false otherwise
    • getFileDescriptorValue

      default Optional<Integer> getFileDescriptorValue(FileDescriptor _fd)
      Attempts to extract raw FileDescriptor value from FileDescriptor instance. Note that not any FileDescriptor can be represented as int, for example Windows uses HANDLE as descriptor, which excess range of int values, thus cannot be safely cast to int.
      Parameters:
      _fd - FileDescriptor to extract value from
      Returns:
      int representation, packed to Optional if operation succeeded, or Optional.empty() otherwise
      Since:
      5.0.0 - 2023-10-07
      See Also:
    • createFileDescriptor

      default Optional<FileDescriptor> createFileDescriptor(int _fd)
      Attempts to create native FileDescriptor from raw int value.
      Parameters:
      _fd - FileDescriptor to extract value from
      Returns:
      FileDescriptor, instantiated with provided value, packed to Optional if operation succeeded, or Optional.empty() otherwise
      Since:
      5.0.0 - 2023-10-07
      See Also: