public class org.apache.drill.exec.rpc.TransportCheck extends java.lang.Object
{
static final org.slf4j.Logger logger;
private static final java.lang.String USE_LINUX_EPOLL;
public static final boolean SUPPORTS_EPOLL;
public void <init>()
{
org.apache.drill.exec.rpc.TransportCheck v;
v := @this: org.apache.drill.exec.rpc.TransportCheck;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public static java.lang.Class getServerSocketChannel()
{
boolean v;
v = <org.apache.drill.exec.rpc.TransportCheck: boolean SUPPORTS_EPOLL>;
if v == 0 goto label;
return class "Lio/netty/channel/epoll/EpollServerSocketChannel;";
label:
return class "Lio/netty/channel/socket/nio/NioServerSocketChannel;";
}
public static java.lang.Class getClientSocketChannel()
{
boolean v;
v = <org.apache.drill.exec.rpc.TransportCheck: boolean SUPPORTS_EPOLL>;
if v == 0 goto label;
return class "Lio/netty/channel/epoll/EpollSocketChannel;";
label:
return class "Lio/netty/channel/socket/nio/NioSocketChannel;";
}
public static io.netty.channel.EventLoopGroup createEventLoopGroup(int, java.lang.String)
{
org.apache.drill.exec.rpc.NamedThreadFactory v, v;
int v;
io.netty.channel.epoll.EpollEventLoopGroup v;
java.lang.String v;
io.netty.channel.nio.NioEventLoopGroup v;
boolean v;
v := @parameter: int;
v := @parameter: java.lang.String;
v = <org.apache.drill.exec.rpc.TransportCheck: boolean SUPPORTS_EPOLL>;
if v == 0 goto label;
v = new io.netty.channel.epoll.EpollEventLoopGroup;
v = new org.apache.drill.exec.rpc.NamedThreadFactory;
specialinvoke v.<org.apache.drill.exec.rpc.NamedThreadFactory: void <init>(java.lang.String)>(v);
specialinvoke v.<io.netty.channel.epoll.EpollEventLoopGroup: void <init>(int,java.util.concurrent.ThreadFactory)>(v, v);
return v;
label:
v = new io.netty.channel.nio.NioEventLoopGroup;
v = new org.apache.drill.exec.rpc.NamedThreadFactory;
specialinvoke v.<org.apache.drill.exec.rpc.NamedThreadFactory: void <init>(java.lang.String)>(v);
specialinvoke v.<io.netty.channel.nio.NioEventLoopGroup: void <init>(int,java.util.concurrent.ThreadFactory)>(v, v);
return v;
}
static void <clinit>()
{
org.slf4j.Logger v;
java.util.Locale v;
java.lang.String v, v, v;
boolean v, v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/drill/exec/rpc/TransportCheck;");
<org.apache.drill.exec.rpc.TransportCheck: org.slf4j.Logger logger> = v;
v = staticinvoke <org.apache.drill.exec.util.SystemPropertyUtil: java.lang.String get(java.lang.String)>("os.name");
v = <java.util.Locale: java.util.Locale US>;
v = virtualinvoke v.<java.lang.String: java.lang.String toLowerCase(java.util.Locale)>(v);
v = virtualinvoke v.<java.lang.String: java.lang.String trim()>();
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("linux");
if v == 0 goto label;
v = staticinvoke <org.apache.drill.exec.util.SystemPropertyUtil: boolean getBoolean(java.lang.String,boolean)>("drill.exec.enable-epoll", 0);
if v == 0 goto label;
<org.apache.drill.exec.rpc.TransportCheck: boolean SUPPORTS_EPOLL> = 1;
goto label;
label:
<org.apache.drill.exec.rpc.TransportCheck: boolean SUPPORTS_EPOLL> = 0;
label:
return;
}
}