public class com.codahale.metrics.Timer$Context extends java.lang.Object implements java.lang.AutoCloseable
{
private final com.codahale.metrics.Timer timer;
private final com.codahale.metrics.Clock clock;
private final long startTime;
void <init>(com.codahale.metrics.Timer, com.codahale.metrics.Clock)
{
com.codahale.metrics.Clock v;
com.codahale.metrics.Timer v;
long v;
com.codahale.metrics.Timer$Context v;
v := @this: com.codahale.metrics.Timer$Context;
v := @parameter: com.codahale.metrics.Timer;
v := @parameter: com.codahale.metrics.Clock;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<com.codahale.metrics.Timer$Context: com.codahale.metrics.Timer timer> = v;
v.<com.codahale.metrics.Timer$Context: com.codahale.metrics.Clock clock> = v;
v = virtualinvoke v.<com.codahale.metrics.Clock: long getTick()>();
v.<com.codahale.metrics.Timer$Context: long startTime> = v;
return;
}
public long stop()
{
java.util.concurrent.TimeUnit v;
com.codahale.metrics.Clock v;
com.codahale.metrics.Timer v;
long v, v, v;
com.codahale.metrics.Timer$Context v;
v := @this: com.codahale.metrics.Timer$Context;
v = v.<com.codahale.metrics.Timer$Context: com.codahale.metrics.Clock clock>;
v = virtualinvoke v.<com.codahale.metrics.Clock: long getTick()>();
v = v.<com.codahale.metrics.Timer$Context: long startTime>;
v = v - v;
v = v.<com.codahale.metrics.Timer$Context: com.codahale.metrics.Timer timer>;
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit NANOSECONDS>;
virtualinvoke v.<com.codahale.metrics.Timer: void update(long,java.util.concurrent.TimeUnit)>(v, v);
return v;
}
public void close()
{
com.codahale.metrics.Timer$Context v;
v := @this: com.codahale.metrics.Timer$Context;
virtualinvoke v.<com.codahale.metrics.Timer$Context: long stop()>();
return;
}
}