public class oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger extends java.lang.Object
{
private final java.util.concurrent.ScheduledExecutorService executorService;
private final oadd.org.apache.commons.configuration.reloading.ReloadingController controller;
private final java.lang.Object controllerParam;
private final long period;
private final java.util.concurrent.TimeUnit timeUnit;
private java.util.concurrent.ScheduledFuture triggerTask;
public void <init>(oadd.org.apache.commons.configuration.reloading.ReloadingController, java.lang.Object, long, java.util.concurrent.TimeUnit, java.util.concurrent.ScheduledExecutorService)
{
oadd.org.apache.commons.configuration.reloading.ReloadingController v;
long v;
java.lang.IllegalArgumentException v;
java.util.concurrent.TimeUnit v;
java.util.concurrent.ScheduledExecutorService v, v;
java.lang.Object v;
oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger v;
v := @this: oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger;
v := @parameter: oadd.org.apache.commons.configuration.reloading.ReloadingController;
v := @parameter: java.lang.Object;
v := @parameter: long;
v := @parameter: java.util.concurrent.TimeUnit;
v := @parameter: java.util.concurrent.ScheduledExecutorService;
specialinvoke v.<java.lang.Object: void <init>()>();
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("ReloadingController must not be null!");
throw v;
label:
v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: oadd.org.apache.commons.configuration.reloading.ReloadingController controller> = v;
v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: java.lang.Object controllerParam> = v;
v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: long period> = v;
v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: java.util.concurrent.TimeUnit timeUnit> = v;
if v == null goto label;
v = v;
goto label;
label:
v = staticinvoke <oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: java.util.concurrent.ScheduledExecutorService createDefaultExecutorService()>();
label:
v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: java.util.concurrent.ScheduledExecutorService executorService> = v;
return;
}
public void <init>(oadd.org.apache.commons.configuration.reloading.ReloadingController, java.lang.Object, long, java.util.concurrent.TimeUnit)
{
java.util.concurrent.TimeUnit v;
oadd.org.apache.commons.configuration.reloading.ReloadingController v;
java.lang.Object v;
long v;
oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger v;
v := @this: oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger;
v := @parameter: oadd.org.apache.commons.configuration.reloading.ReloadingController;
v := @parameter: java.lang.Object;
v := @parameter: long;
v := @parameter: java.util.concurrent.TimeUnit;
specialinvoke v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: void <init>(oadd.org.apache.commons.configuration.reloading.ReloadingController,java.lang.Object,long,java.util.concurrent.TimeUnit,java.util.concurrent.ScheduledExecutorService)>(v, v, v, v, null);
return;
}
public synchronized void start()
{
java.util.concurrent.ScheduledFuture v;
long v, v;
java.lang.Runnable v;
java.util.concurrent.TimeUnit v;
java.util.concurrent.ScheduledExecutorService v;
oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger v;
boolean v;
v := @this: oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger;
v = virtualinvoke v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: boolean isRunning()>();
if v != 0 goto label;
v = virtualinvoke v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: java.util.concurrent.ScheduledExecutorService getExecutorService()>();
v = specialinvoke v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: java.lang.Runnable createTriggerTaskCommand()>();
v = v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: long period>;
v = v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: long period>;
v = v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: java.util.concurrent.TimeUnit timeUnit>;
v = interfaceinvoke v.<java.util.concurrent.ScheduledExecutorService: java.util.concurrent.ScheduledFuture scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)>(v, v, v, v);
v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: java.util.concurrent.ScheduledFuture triggerTask> = v;
label:
return;
}
public synchronized void stop()
{
java.util.concurrent.ScheduledFuture v;
oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger v;
boolean v;
v := @this: oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger;
v = virtualinvoke v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: boolean isRunning()>();
if v == 0 goto label;
v = v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: java.util.concurrent.ScheduledFuture triggerTask>;
interfaceinvoke v.<java.util.concurrent.ScheduledFuture: boolean cancel(boolean)>(0);
v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: java.util.concurrent.ScheduledFuture triggerTask> = null;
label:
return;
}
public synchronized boolean isRunning()
{
java.util.concurrent.ScheduledFuture v;
oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger v;
boolean v;
v := @this: oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger;
v = v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: java.util.concurrent.ScheduledFuture triggerTask>;
if v == null goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public void shutdown(boolean)
{
java.util.concurrent.ScheduledExecutorService v;
oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger v;
boolean v;
v := @this: oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger;
v := @parameter: boolean;
virtualinvoke v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: void stop()>();
if v == 0 goto label;
v = virtualinvoke v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: java.util.concurrent.ScheduledExecutorService getExecutorService()>();
interfaceinvoke v.<java.util.concurrent.ScheduledExecutorService: void shutdown()>();
label:
return;
}
public void shutdown()
{
oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger v;
v := @this: oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger;
virtualinvoke v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: void shutdown(boolean)>(1);
return;
}
java.util.concurrent.ScheduledExecutorService getExecutorService()
{
java.util.concurrent.ScheduledExecutorService v;
oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger v;
v := @this: oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger;
v = v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger: java.util.concurrent.ScheduledExecutorService executorService>;
return v;
}
private java.lang.Runnable createTriggerTaskCommand()
{
oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger$1 v;
oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger v;
v := @this: oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger;
v = new oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger$1;
specialinvoke v.<oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger$1: void <init>(oadd.org.apache.commons.configuration.reloading.PeriodicReloadingTrigger)>(v);
return v;
}
private static java.util.concurrent.ScheduledExecutorService createDefaultExecutorService()
{
oadd.org.apache.commons.lang.concurrent.BasicThreadFactory$Builder v, v, v;
java.util.concurrent.ScheduledExecutorService v;
oadd.org.apache.commons.lang.concurrent.BasicThreadFactory v;
v = new oadd.org.apache.commons.lang.concurrent.BasicThreadFactory$Builder;
specialinvoke v.<oadd.org.apache.commons.lang.concurrent.BasicThreadFactory$Builder: void <init>()>();
v = virtualinvoke v.<oadd.org.apache.commons.lang.concurrent.BasicThreadFactory$Builder: oadd.org.apache.commons.lang.concurrent.BasicThreadFactory$Builder namingPattern(java.lang.String)>("ReloadingTrigger-%s");
v = virtualinvoke v.<oadd.org.apache.commons.lang.concurrent.BasicThreadFactory$Builder: oadd.org.apache.commons.lang.concurrent.BasicThreadFactory$Builder daemon(boolean)>(1);
v = virtualinvoke v.<oadd.org.apache.commons.lang.concurrent.BasicThreadFactory$Builder: oadd.org.apache.commons.lang.concurrent.BasicThreadFactory build()>();
v = staticinvoke <java.util.concurrent.Executors: java.util.concurrent.ScheduledExecutorService newScheduledThreadPool(int,java.util.concurrent.ThreadFactory)>(1, v);
return v;
}
}