public class org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl extends java.lang.Object implements org.apache.sling.event.jobs.ScheduledJobInfo, java.io.Serializable
{
private static final long serialVersionUID;
private final java.lang.String scheduleName;
private final org.apache.sling.event.impl.jobs.scheduling.JobSchedulerImpl jobScheduler;
private final java.util.concurrent.atomic.AtomicBoolean isSuspended;
private volatile java.util.List scheduleInfos;
private volatile java.lang.String jobTopic;
private volatile java.util.Map jobProperties;
public void <init>(org.apache.sling.event.impl.jobs.scheduling.JobSchedulerImpl, java.lang.String)
{
org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl v;
java.util.concurrent.atomic.AtomicBoolean v;
java.lang.String v;
org.apache.sling.event.impl.jobs.scheduling.JobSchedulerImpl v;
v := @this: org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl;
v := @parameter: org.apache.sling.event.impl.jobs.scheduling.JobSchedulerImpl;
v := @parameter: java.lang.String;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new java.util.concurrent.atomic.AtomicBoolean;
specialinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void <init>(boolean)>(0);
v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: java.util.concurrent.atomic.AtomicBoolean isSuspended> = v;
v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: org.apache.sling.event.impl.jobs.scheduling.JobSchedulerImpl jobScheduler> = v;
v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: java.lang.String scheduleName> = v;
return;
}
public void update(java.lang.String, java.util.Map)
{
org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl v;
java.util.concurrent.atomic.AtomicBoolean v;
java.util.List v;
java.util.Map v;
java.lang.Object v, v;
java.lang.String v;
boolean v;
v := @this: org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl;
v := @parameter: java.lang.String;
v := @parameter: java.util.Map;
v = interfaceinvoke v.<java.util.Map: java.lang.Object remove(java.lang.Object)>("slingevent:scheduleSuspended");
if v == null goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = interfaceinvoke v.<java.util.Map: java.lang.Object remove(java.lang.Object)>("slingevent:scheduleInfo");
v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: java.lang.String jobTopic> = v;
v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: java.util.Map jobProperties> = v;
v = staticinvoke <java.util.Collections: java.util.List unmodifiableList(java.util.List)>(v);
v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: java.util.List scheduleInfos> = v;
v = v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: java.util.concurrent.atomic.AtomicBoolean isSuspended>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void set(boolean)>(v);
return;
}
public void update(java.util.List)
{
java.util.List v, v;
org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl v;
v := @this: org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl;
v := @parameter: java.util.List;
v = staticinvoke <java.util.Collections: java.util.List unmodifiableList(java.util.List)>(v);
v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: java.util.List scheduleInfos> = v;
return;
}
public java.lang.String getName()
{
java.lang.String v;
org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl v;
v := @this: org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl;
v = v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: java.lang.String scheduleName>;
return v;
}
public java.util.Collection getSchedules()
{
java.util.List v;
org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl v;
v := @this: org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl;
v = v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: java.util.List scheduleInfos>;
return v;
}
public java.util.Date getNextScheduledExecution()
{
java.util.Iterator v;
org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl v;
java.util.Date v, v;
long v, v;
org.apache.sling.event.jobs.ScheduleInfo v;
java.util.List v;
byte v;
boolean v;
v := @this: org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl;
v = null;
v = v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: java.util.List scheduleInfos>;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.sling.event.impl.support.ScheduleInfoImpl: java.util.Date getNextScheduledExecution()>();
if v == null goto label;
v = virtualinvoke v.<java.util.Date: long getTime()>();
v = virtualinvoke v.<java.util.Date: long getTime()>();
v = v cmp v;
if v <= 0 goto label;
label:
v = v;
goto label;
label:
return v;
}
public java.lang.String getJobTopic()
{
java.lang.String v;
org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl v;
v := @this: org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl;
v = v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: java.lang.String jobTopic>;
return v;
}
public java.util.Map getJobProperties()
{
org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl v;
java.util.Map v;
v := @this: org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl;
v = v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: java.util.Map jobProperties>;
return v;
}
public void unschedule()
{
org.apache.sling.event.impl.jobs.scheduling.JobSchedulerImpl v;
org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl v;
v := @this: org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl;
v = v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: org.apache.sling.event.impl.jobs.scheduling.JobSchedulerImpl jobScheduler>;
virtualinvoke v.<org.apache.sling.event.impl.jobs.scheduling.JobSchedulerImpl: void removeJob(org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl)>(v);
return;
}
public org.apache.sling.event.jobs.JobBuilder$ScheduleBuilder reschedule()
{
org.apache.sling.event.impl.jobs.scheduling.JobSchedulerImpl v;
org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl v;
org.apache.sling.event.jobs.JobBuilder$ScheduleBuilder v;
v := @this: org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl;
v = v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: org.apache.sling.event.impl.jobs.scheduling.JobSchedulerImpl jobScheduler>;
v = virtualinvoke v.<org.apache.sling.event.impl.jobs.scheduling.JobSchedulerImpl: org.apache.sling.event.jobs.JobBuilder$ScheduleBuilder createJobBuilder(org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl)>(v);
return v;
}
public void suspend()
{
org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl v;
java.util.concurrent.atomic.AtomicBoolean v;
org.apache.sling.event.impl.jobs.scheduling.JobSchedulerImpl v;
boolean v;
v := @this: org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl;
v = v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: java.util.concurrent.atomic.AtomicBoolean isSuspended>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean compareAndSet(boolean,boolean)>(0, 1);
if v == 0 goto label;
v = v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: org.apache.sling.event.impl.jobs.scheduling.JobSchedulerImpl jobScheduler>;
virtualinvoke v.<org.apache.sling.event.impl.jobs.scheduling.JobSchedulerImpl: void setSuspended(org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl,boolean)>(v, 1);
label:
return;
}
public void resume()
{
org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl v;
java.util.concurrent.atomic.AtomicBoolean v;
org.apache.sling.event.impl.jobs.scheduling.JobSchedulerImpl v;
boolean v;
v := @this: org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl;
v = v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: java.util.concurrent.atomic.AtomicBoolean isSuspended>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean compareAndSet(boolean,boolean)>(1, 0);
if v == 0 goto label;
v = v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: org.apache.sling.event.impl.jobs.scheduling.JobSchedulerImpl jobScheduler>;
virtualinvoke v.<org.apache.sling.event.impl.jobs.scheduling.JobSchedulerImpl: void setSuspended(org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl,boolean)>(v, 0);
label:
return;
}
public boolean isSuspended()
{
java.util.concurrent.atomic.AtomicBoolean v;
org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl v;
boolean v;
v := @this: org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl;
v = v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: java.util.concurrent.atomic.AtomicBoolean isSuspended>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
return v;
}
public java.lang.String getSchedulerJobId()
{
org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl v;
java.lang.Class v;
java.lang.String v, v, v;
v := @this: org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl;
v = class "Lorg/apache/sling/event/jobs/Job;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = v.<org.apache.sling.event.impl.jobs.scheduling.ScheduledJobInfoImpl: java.lang.String scheduleName>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, 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[])>("\u0001:\u0001");
return v;
}
}