Class BuilderUtils

java.lang.Object
io.servicetalk.transport.netty.internal.BuilderUtils

public final class BuilderUtils extends Object
Utilities which are used for builders.
  • Method Details

    • serverChannel

      public static Class<? extends io.netty.channel.ServerChannel> serverChannel(io.netty.channel.EventLoopGroup group, Class<? extends SocketAddress> addressClass)
      Returns the correct Class to use with the given EventLoopGroup.
      Parameters:
      group - the EventLoopGroup for which the class is needed
      addressClass - The class of the address that the server socket will be bound to.
      Returns:
      the class that should be used for bootstrapping
    • socketChannel

      public static Class<? extends io.netty.channel.Channel> socketChannel(io.netty.channel.EventLoopGroup group, Class<? extends SocketAddress> addressClass)
      Returns the correct Class to use with the given EventLoopGroup.
      Parameters:
      group - the EventLoopGroup for which the class is needed
      addressClass - The class of the address that to connect to.
      Returns:
      the class that should be used for bootstrapping
    • socketChannel

      @Nullable public static io.netty.channel.Channel socketChannel(io.netty.channel.EventLoopGroup group, FileDescriptorSocketAddress address)
      Returns the correct Channel that wraps the given filedescriptor or null if not supported.
      Parameters:
      group - the EventLoopGroup for which the class is needed
      address - the filedescriptor to wrap.
      Returns:
      the class that should be used for bootstrapping
    • toNettyAddress

      public static SocketAddress toNettyAddress(Object address)
      If address if a ServiceTalk specific address it is unwrapped into a Netty address.
      Parameters:
      address - the address to convert.
      Returns:
      an address that Netty understands.
    • toResolvedInetSocketAddress

      public static InetSocketAddress toResolvedInetSocketAddress(HostAndPort resolvedAddress)
      Converts HostAndPort that contains a resolved address into InetSocketAddress.
      Parameters:
      resolvedAddress - the resolved address to convert.
      Returns:
      InetSocketAddress from the passed resolved HostAndPort.
    • datagramChannel

      public static Class<? extends io.netty.channel.socket.DatagramChannel> datagramChannel(io.netty.channel.EventLoopGroup group)
      Returns the correct Class to use with the given EventLoopGroup.
      Parameters:
      group - the EventLoopGroup for which the class is needed
      Returns:
      the class that should be used for bootstrapping
    • formatCanonicalAddress

      public static String formatCanonicalAddress(SocketAddress address)
      Format an address into a canonical numeric format.
      Parameters:
      address - socket address
      Returns:
      formatted address
    • closeAndRethrowUnchecked

      public static void closeAndRethrowUnchecked(@Nullable Closeable closable)
      Call Closeable.close() and re-throw an unchecked exception if a checked exception is thrown.
      Parameters:
      closable - The object to close.