public class oadd.com.codahale.metrics.jvm.FileDescriptorRatioGauge extends oadd.com.codahale.metrics.RatioGauge
{
private static boolean unixOperatingSystemMXBeanExists;
private final java.lang.management.OperatingSystemMXBean os;
public void <init>()
{
java.lang.management.OperatingSystemMXBean v;
oadd.com.codahale.metrics.jvm.FileDescriptorRatioGauge v;
v := @this: oadd.com.codahale.metrics.jvm.FileDescriptorRatioGauge;
v = staticinvoke <java.lang.management.ManagementFactory: java.lang.management.OperatingSystemMXBean getOperatingSystemMXBean()>();
specialinvoke v.<oadd.com.codahale.metrics.jvm.FileDescriptorRatioGauge: void <init>(java.lang.management.OperatingSystemMXBean)>(v);
return;
}
public void <init>(java.lang.management.OperatingSystemMXBean)
{
java.lang.management.OperatingSystemMXBean v;
oadd.com.codahale.metrics.jvm.FileDescriptorRatioGauge v;
v := @this: oadd.com.codahale.metrics.jvm.FileDescriptorRatioGauge;
v := @parameter: java.lang.management.OperatingSystemMXBean;
specialinvoke v.<oadd.com.codahale.metrics.RatioGauge: void <init>()>();
v.<oadd.com.codahale.metrics.jvm.FileDescriptorRatioGauge: java.lang.management.OperatingSystemMXBean os> = v;
return;
}
protected oadd.com.codahale.metrics.RatioGauge$Ratio getRatio()
{
oadd.com.codahale.metrics.RatioGauge$Ratio v, v;
long v, v;
oadd.com.codahale.metrics.jvm.FileDescriptorRatioGauge v;
java.lang.management.OperatingSystemMXBean v, v;
boolean v, v;
v := @this: oadd.com.codahale.metrics.jvm.FileDescriptorRatioGauge;
v = <oadd.com.codahale.metrics.jvm.FileDescriptorRatioGauge: boolean unixOperatingSystemMXBeanExists>;
if v == 0 goto label;
v = v.<oadd.com.codahale.metrics.jvm.FileDescriptorRatioGauge: java.lang.management.OperatingSystemMXBean os>;
v = v instanceof com.sun.management.UnixOperatingSystemMXBean;
if v == 0 goto label;
v = v.<oadd.com.codahale.metrics.jvm.FileDescriptorRatioGauge: java.lang.management.OperatingSystemMXBean os>;
v = interfaceinvoke v.<com.sun.management.UnixOperatingSystemMXBean: long getOpenFileDescriptorCount()>();
v = interfaceinvoke v.<com.sun.management.UnixOperatingSystemMXBean: long getMaxFileDescriptorCount()>();
v = staticinvoke <oadd.com.codahale.metrics.RatioGauge$Ratio: oadd.com.codahale.metrics.RatioGauge$Ratio of(double,double)>(v, v);
return v;
label:
v = staticinvoke <oadd.com.codahale.metrics.RatioGauge$Ratio: oadd.com.codahale.metrics.RatioGauge$Ratio of(double,double)>(#NaN, #NaN);
return v;
}
static void <clinit>()
{
java.lang.ClassNotFoundException v;
<oadd.com.codahale.metrics.jvm.FileDescriptorRatioGauge: boolean unixOperatingSystemMXBeanExists> = 0;
label:
staticinvoke <java.lang.Class: java.lang.Class forName(java.lang.String)>("com.sun.management.UnixOperatingSystemMXBean");
<oadd.com.codahale.metrics.jvm.FileDescriptorRatioGauge: boolean unixOperatingSystemMXBeanExists> = 1;
label:
goto label;
label:
v := @caughtexception;
label:
return;
catch java.lang.ClassNotFoundException from label to label with label;
}
}