public class oadd.org.apache.zookeeper.server.DatadirCleanupManager extends java.lang.Object
{
private static final org.slf4j.Logger LOG;
private oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus purgeTaskStatus;
private final java.io.File snapDir;
private final java.io.File dataLogDir;
private final int snapRetainCount;
private final int purgeInterval;
private java.util.Timer timer;
public void <init>(java.io.File, java.io.File, int, int)
{
org.slf4j.Logger v, v;
oadd.org.apache.zookeeper.server.DatadirCleanupManager v;
java.io.File v, v;
int v, v;
oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus v;
java.lang.String v, v;
v := @this: oadd.org.apache.zookeeper.server.DatadirCleanupManager;
v := @parameter: java.io.File;
v := @parameter: java.io.File;
v := @parameter: int;
v := @parameter: int;
specialinvoke v.<java.lang.Object: void <init>()>();
v = <oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus: oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus NOT_STARTED>;
v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus purgeTaskStatus> = v;
v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: java.io.File snapDir> = v;
v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: java.io.File dataLogDir> = v;
v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: int snapRetainCount> = v;
v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: int purgeInterval> = v;
v = <oadd.org.apache.zookeeper.server.DatadirCleanupManager: org.slf4j.Logger LOG>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(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[])>("autopurge.snapRetainCount set to \u0001");
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>(v);
v = <oadd.org.apache.zookeeper.server.DatadirCleanupManager: org.slf4j.Logger LOG>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(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[])>("autopurge.purgeInterval set to \u0001");
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>(v);
return;
}
public void start()
{
java.util.Timer v, v;
long v;
int v, v, v;
oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus v, v, v;
oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTask v;
org.slf4j.Logger v, v;
oadd.org.apache.zookeeper.server.DatadirCleanupManager v;
java.io.File v, v;
java.util.concurrent.TimeUnit v;
v := @this: oadd.org.apache.zookeeper.server.DatadirCleanupManager;
v = <oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus: oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus STARTED>;
v = v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus purgeTaskStatus>;
if v != v goto label;
v = <oadd.org.apache.zookeeper.server.DatadirCleanupManager: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String)>("Purge task is already running.");
return;
label:
v = v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: int purgeInterval>;
if v > 0 goto label;
v = <oadd.org.apache.zookeeper.server.DatadirCleanupManager: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("Purge task is not scheduled.");
return;
label:
v = new java.util.Timer;
specialinvoke v.<java.util.Timer: void <init>(java.lang.String,boolean)>("PurgeTask", 1);
v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: java.util.Timer timer> = v;
v = new oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTask;
v = v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: java.io.File dataLogDir>;
v = v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: java.io.File snapDir>;
v = v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: int snapRetainCount>;
specialinvoke v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTask: void <init>(java.io.File,java.io.File,int)>(v, v, v);
v = v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: java.util.Timer timer>;
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit HOURS>;
v = v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: int purgeInterval>;
v = virtualinvoke v.<java.util.concurrent.TimeUnit: long toMillis(long)>(v);
virtualinvoke v.<java.util.Timer: void scheduleAtFixedRate(java.util.TimerTask,long,long)>(v, 0L, v);
v = <oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus: oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus STARTED>;
v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus purgeTaskStatus> = v;
return;
}
public void shutdown()
{
org.slf4j.Logger v, v;
oadd.org.apache.zookeeper.server.DatadirCleanupManager v;
java.util.Timer v;
oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus v, v, v;
v := @this: oadd.org.apache.zookeeper.server.DatadirCleanupManager;
v = <oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus: oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus STARTED>;
v = v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus purgeTaskStatus>;
if v != v goto label;
v = <oadd.org.apache.zookeeper.server.DatadirCleanupManager: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("Shutting down purge task.");
v = v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: java.util.Timer timer>;
virtualinvoke v.<java.util.Timer: void cancel()>();
v = <oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus: oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus COMPLETED>;
v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus purgeTaskStatus> = v;
goto label;
label:
v = <oadd.org.apache.zookeeper.server.DatadirCleanupManager: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String)>("Purge task not started. Ignoring shutdown!");
label:
return;
}
public oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus getPurgeTaskStatus()
{
oadd.org.apache.zookeeper.server.DatadirCleanupManager v;
oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus v;
v := @this: oadd.org.apache.zookeeper.server.DatadirCleanupManager;
v = v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: oadd.org.apache.zookeeper.server.DatadirCleanupManager$PurgeTaskStatus purgeTaskStatus>;
return v;
}
public java.io.File getSnapDir()
{
oadd.org.apache.zookeeper.server.DatadirCleanupManager v;
java.io.File v;
v := @this: oadd.org.apache.zookeeper.server.DatadirCleanupManager;
v = v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: java.io.File snapDir>;
return v;
}
public java.io.File getDataLogDir()
{
oadd.org.apache.zookeeper.server.DatadirCleanupManager v;
java.io.File v;
v := @this: oadd.org.apache.zookeeper.server.DatadirCleanupManager;
v = v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: java.io.File dataLogDir>;
return v;
}
public int getPurgeInterval()
{
int v;
oadd.org.apache.zookeeper.server.DatadirCleanupManager v;
v := @this: oadd.org.apache.zookeeper.server.DatadirCleanupManager;
v = v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: int purgeInterval>;
return v;
}
public int getSnapRetainCount()
{
int v;
oadd.org.apache.zookeeper.server.DatadirCleanupManager v;
v := @this: oadd.org.apache.zookeeper.server.DatadirCleanupManager;
v = v.<oadd.org.apache.zookeeper.server.DatadirCleanupManager: int snapRetainCount>;
return v;
}
static void <clinit>()
{
org.slf4j.Logger v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Loadd/org/apache/zookeeper/server/DatadirCleanupManager;");
<oadd.org.apache.zookeeper.server.DatadirCleanupManager: org.slf4j.Logger LOG> = v;
return;
}
}