Class BuilderUtils
- java.lang.Object
-
- io.servicetalk.transport.netty.internal.BuilderUtils
-
public final class BuilderUtils extends java.lang.Object
Utilities which are used for builders.
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static void
closeAndRethrowUnchecked(java.io.Closeable closable)
CallCloseable.close()
and re-throw an unchecked exception if a checked exception is thrown.static java.lang.Class<? extends io.netty.channel.socket.DatagramChannel>
datagramChannel(io.netty.channel.EventLoopGroup group)
Returns the correctClass
to use with the givenEventLoopGroup
.static java.lang.String
formatCanonicalAddress(java.net.SocketAddress address)
Format an address into a canonical numeric format.static java.lang.Class<? extends io.netty.channel.ServerChannel>
serverChannel(io.netty.channel.EventLoopGroup group, java.lang.Class<? extends java.net.SocketAddress> addressClass)
Returns the correctClass
to use with the givenEventLoopGroup
.static io.netty.channel.Channel
socketChannel(io.netty.channel.EventLoopGroup group, FileDescriptorSocketAddress address)
Returns the correct Channel that wraps the given filedescriptor ornull
if not supported.static java.lang.Class<? extends io.netty.channel.Channel>
socketChannel(io.netty.channel.EventLoopGroup group, java.lang.Class<? extends java.net.SocketAddress> addressClass)
Returns the correctClass
to use with the givenEventLoopGroup
.static java.net.SocketAddress
toNettyAddress(java.lang.Object address)
Ifaddress
if a ServiceTalk specific address it is unwrapped into a Netty address.static java.net.InetSocketAddress
toResolvedInetSocketAddress(HostAndPort resolvedAddress)
ConvertsHostAndPort
that contains a resolved address intoInetSocketAddress
.static boolean
useEpoll(io.netty.channel.EventLoopGroup group)
Returnstrue
if native epoll transport should be used.static boolean
useKQueue(io.netty.channel.EventLoopGroup group)
Returnstrue
if native kqueue transport should be used.
-
-
-
Method Detail
-
useEpoll
public static boolean useEpoll(io.netty.channel.EventLoopGroup group)
Returnstrue
if native epoll transport should be used.- Parameters:
group
- the usedEventLoopGroup
- Returns:
true
if native transport should be used
-
useKQueue
public static boolean useKQueue(io.netty.channel.EventLoopGroup group)
Returnstrue
if native kqueue transport should be used.- Parameters:
group
- the usedEventLoopGroup
- Returns:
true
if native transport should be used
-
serverChannel
public static java.lang.Class<? extends io.netty.channel.ServerChannel> serverChannel(io.netty.channel.EventLoopGroup group, java.lang.Class<? extends java.net.SocketAddress> addressClass)
Returns the correctClass
to use with the givenEventLoopGroup
.- Parameters:
group
- theEventLoopGroup
for which the class is neededaddressClass
- 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 java.lang.Class<? extends io.netty.channel.Channel> socketChannel(io.netty.channel.EventLoopGroup group, java.lang.Class<? extends java.net.SocketAddress> addressClass)
Returns the correctClass
to use with the givenEventLoopGroup
.- Parameters:
group
- theEventLoopGroup
for which the class is neededaddressClass
- 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 ornull
if not supported.- Parameters:
group
- theEventLoopGroup
for which the class is neededaddress
- the filedescriptor to wrap.- Returns:
- the class that should be used for bootstrapping
-
toNettyAddress
public static java.net.SocketAddress toNettyAddress(java.lang.Object address)
Ifaddress
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 java.net.InetSocketAddress toResolvedInetSocketAddress(HostAndPort resolvedAddress)
ConvertsHostAndPort
that contains a resolved address intoInetSocketAddress
.- Parameters:
resolvedAddress
- the resolved address to convert.- Returns:
InetSocketAddress
from the passed resolvedHostAndPort
.
-
datagramChannel
public static java.lang.Class<? extends io.netty.channel.socket.DatagramChannel> datagramChannel(io.netty.channel.EventLoopGroup group)
Returns the correctClass
to use with the givenEventLoopGroup
.- Parameters:
group
- theEventLoopGroup
for which the class is needed- Returns:
- the class that should be used for bootstrapping
-
formatCanonicalAddress
public static java.lang.String formatCanonicalAddress(java.net.SocketAddress address)
Format an address into a canonical numeric format.- Parameters:
address
- socket address- Returns:
- formatted address
-
closeAndRethrowUnchecked
public static void closeAndRethrowUnchecked(@Nullable java.io.Closeable closable)
CallCloseable.close()
and re-throw an unchecked exception if a checked exception is thrown.- Parameters:
closable
- The object to close.
-
-