public class org.apache.htrace.core.TraceCallable extends java.lang.Object implements java.util.concurrent.Callable
{
private final org.apache.htrace.core.Tracer tracer;
private final java.util.concurrent.Callable impl;
private final org.apache.htrace.core.TraceScope parent;
private final java.lang.String description;
void <init>(org.apache.htrace.core.Tracer, org.apache.htrace.core.TraceScope, java.util.concurrent.Callable, java.lang.String)
{
org.apache.htrace.core.TraceScope v;
java.lang.Thread v;
org.apache.htrace.core.Tracer v;
java.util.concurrent.Callable v;
java.lang.String v, v;
org.apache.htrace.core.TraceCallable v;
v := @this: org.apache.htrace.core.TraceCallable;
v := @parameter: org.apache.htrace.core.Tracer;
v := @parameter: org.apache.htrace.core.TraceScope;
v := @parameter: java.util.concurrent.Callable;
v := @parameter: java.lang.String;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.apache.htrace.core.TraceCallable: org.apache.htrace.core.Tracer tracer> = v;
v.<org.apache.htrace.core.TraceCallable: java.util.concurrent.Callable impl> = v;
v.<org.apache.htrace.core.TraceCallable: org.apache.htrace.core.TraceScope parent> = v;
if v != null goto label;
v = staticinvoke <java.lang.Thread: java.lang.Thread currentThread()>();
v = virtualinvoke v.<java.lang.Thread: java.lang.String getName()>();
v.<org.apache.htrace.core.TraceCallable: java.lang.String description> = v;
goto label;
label:
v.<org.apache.htrace.core.TraceCallable: java.lang.String description> = v;
label:
return;
}
public java.lang.Object call() throws java.lang.Exception
{
java.lang.Throwable v;
java.util.concurrent.Callable v;
org.apache.htrace.core.TraceCallable v;
org.apache.htrace.core.TraceScope v, v;
org.apache.htrace.core.Tracer v;
org.apache.htrace.core.Span v;
java.lang.Object v;
java.lang.String v;
org.apache.htrace.core.SpanId v;
v := @this: org.apache.htrace.core.TraceCallable;
v = v.<org.apache.htrace.core.TraceCallable: org.apache.htrace.core.Tracer tracer>;
v = v.<org.apache.htrace.core.TraceCallable: java.lang.String description>;
v = v.<org.apache.htrace.core.TraceCallable: org.apache.htrace.core.TraceScope parent>;
v = virtualinvoke v.<org.apache.htrace.core.TraceScope: org.apache.htrace.core.Span getSpan()>();
v = interfaceinvoke v.<org.apache.htrace.core.Span: org.apache.htrace.core.SpanId getSpanId()>();
v = virtualinvoke v.<org.apache.htrace.core.Tracer: org.apache.htrace.core.TraceScope newScope(java.lang.String,org.apache.htrace.core.SpanId)>(v, v);
label:
v = v.<org.apache.htrace.core.TraceCallable: java.util.concurrent.Callable impl>;
v = interfaceinvoke v.<java.util.concurrent.Callable: java.lang.Object call()>();
label:
virtualinvoke v.<org.apache.htrace.core.TraceScope: void close()>();
return v;
label:
v := @caughtexception;
virtualinvoke v.<org.apache.htrace.core.TraceScope: void close()>();
throw v;
catch java.lang.Throwable from label to label with label;
}
public java.util.concurrent.Callable getImpl()
{
java.util.concurrent.Callable v;
org.apache.htrace.core.TraceCallable v;
v := @this: org.apache.htrace.core.TraceCallable;
v = v.<org.apache.htrace.core.TraceCallable: java.util.concurrent.Callable impl>;
return v;
}
}