public class org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook extends java.lang.Thread
{
private static final org.apache.commons.logging.Log log;
private static org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook instance;
private static java.util.Set files;
private boolean isRegistered;
static org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook hook()
{
org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook v, v, v;
org.apache.commons.logging.Log v, v, v, v;
boolean v, v;
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook instance>;
if v != null goto label;
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.commons.logging.Log log>;
v = interfaceinvoke v.<org.apache.commons.logging.Log: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.commons.logging.Log log>;
interfaceinvoke v.<org.apache.commons.logging.Log: void debug(java.lang.Object)>("creating VMShutdownHook");
label:
v = new org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook;
specialinvoke v.<org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: void <init>()>();
<org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook instance> = v;
label:
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.commons.logging.Log log>;
v = interfaceinvoke v.<org.apache.commons.logging.Log: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.commons.logging.Log log>;
interfaceinvoke v.<org.apache.commons.logging.Log: void debug(java.lang.Object)>("returning VMShutdownHook instance");
label:
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook instance>;
return v;
}
private void <init>()
{
org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook v;
v := @this: org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook;
specialinvoke v.<java.lang.Thread: void <init>()>();
v.<org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: boolean isRegistered> = 0;
return;
}
void remove(java.io.File)
{
org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook v;
java.util.Set v;
org.apache.commons.logging.Log v, v;
java.io.File v;
boolean v;
v := @this: org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook;
v := @parameter: java.io.File;
if v != null goto label;
return;
label:
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.commons.logging.Log log>;
v = interfaceinvoke v.<org.apache.commons.logging.Log: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.commons.logging.Log log>;
interfaceinvoke v.<org.apache.commons.logging.Log: void debug(java.lang.Object)>("Removing File to Shutdown Hook Collection");
label:
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: java.util.Set files>;
interfaceinvoke v.<java.util.Set: boolean remove(java.lang.Object)>(v);
return;
}
void add(java.io.File)
{
org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook v;
java.util.Set v;
org.apache.commons.logging.Log v, v;
java.io.File v;
boolean v;
v := @this: org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook;
v := @parameter: java.io.File;
if v != null goto label;
return;
label:
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.commons.logging.Log log>;
v = interfaceinvoke v.<org.apache.commons.logging.Log: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.commons.logging.Log log>;
interfaceinvoke v.<org.apache.commons.logging.Log: void debug(java.lang.Object)>("Adding File to Shutdown Hook Collection");
label:
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: java.util.Set files>;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
return;
}
public void run()
{
org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook v;
java.lang.String v, v;
boolean v, v, v, v;
java.util.Iterator v;
java.util.Set v;
java.lang.Object v;
org.apache.commons.logging.Log v, v, v, v, v, v;
v := @this: org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook;
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.commons.logging.Log log>;
v = interfaceinvoke v.<org.apache.commons.logging.Log: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.commons.logging.Log log>;
interfaceinvoke v.<org.apache.commons.logging.Log: void debug(java.lang.Object)>("JVM running VM Shutdown Hook");
label:
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: java.util.Set files>;
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.commons.logging.Log log>;
v = interfaceinvoke v.<org.apache.commons.logging.Log: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.commons.logging.Log log>;
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Deleting File from Shutdown Hook Collection\u0001");
interfaceinvoke v.<org.apache.commons.logging.Log: void debug(java.lang.Object)>(v);
label:
virtualinvoke v.<java.io.File: boolean delete()>();
goto label;
label:
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.commons.logging.Log log>;
v = interfaceinvoke v.<org.apache.commons.logging.Log: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.commons.logging.Log log>;
interfaceinvoke v.<org.apache.commons.logging.Log: void debug(java.lang.Object)>("JVM Done running VM Shutdown Hook");
label:
return;
}
public boolean isRegistered()
{
org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook v;
org.apache.commons.logging.Log v, v, v;
boolean v, v, v;
v := @this: org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook;
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.commons.logging.Log log>;
v = interfaceinvoke v.<org.apache.commons.logging.Log: boolean isDebugEnabled()>();
if v == 0 goto label;
v = v.<org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: boolean isRegistered>;
if v != 0 goto label;
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.commons.logging.Log log>;
interfaceinvoke v.<org.apache.commons.logging.Log: void debug(java.lang.Object)>("hook isRegistered= false");
goto label;
label:
v = <org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.commons.logging.Log log>;
interfaceinvoke v.<org.apache.commons.logging.Log: void debug(java.lang.Object)>("hook isRegistered= true");
label:
v = v.<org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: boolean isRegistered>;
return v;
}
public void setRegistered(boolean)
{
org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook v;
boolean v;
v := @this: org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook;
v := @parameter: boolean;
v.<org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: boolean isRegistered> = v;
return;
}
static void <clinit>()
{
java.util.HashSet v;
java.util.Set v;
org.apache.commons.logging.Log v;
v = staticinvoke <org.apache.commons.logging.LogFactory: org.apache.commons.logging.Log getLog(java.lang.Class)>(class "Lorg/apache/axiom/attachments/lifecycle/impl/VMShutdownHook;");
<org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.commons.logging.Log log> = v;
<org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook instance> = null;
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
v = staticinvoke <java.util.Collections: java.util.Set synchronizedSet(java.util.Set)>(v);
<org.apache.axiom.attachments.lifecycle.impl.VMShutdownHook: java.util.Set files> = v;
return;
}
}