@Plugin(name="CronTriggeringPolicy", category="Core", printObject=true) @Scheduled public final class CronTriggeringPolicy extends AbstractTriggeringPolicy
| Modifier and Type | Class and Description |
|---|---|
private class |
CronTriggeringPolicy.CronTrigger |
LifeCycle.State| Modifier and Type | Field and Description |
|---|---|
private boolean |
checkOnStartup |
private Configuration |
configuration |
private CronExpression |
cronExpression |
private static java.lang.String |
defaultSchedule |
private CronScheduledFuture<?> |
future |
private java.util.Date |
lastRollDate |
private RollingFileManager |
manager |
DEFAULT_STOP_TIMEOUT, DEFAULT_STOP_TIMEUNIT, LOGGER| Modifier | Constructor and Description |
|---|---|
private |
CronTriggeringPolicy(CronExpression schedule,
boolean checkOnStartup,
Configuration configuration) |
| Modifier and Type | Method and Description |
|---|---|
static CronTriggeringPolicy |
createPolicy(Configuration configuration,
java.lang.String evaluateOnStartup,
java.lang.String schedule)
Creates a ScheduledTriggeringPolicy.
|
CronExpression |
getCronExpression() |
private static CronExpression |
getSchedule(java.lang.String expression) |
void |
initialize(RollingFileManager aManager)
Initializes the policy.
|
boolean |
isTriggeringEvent(LogEvent event)
Determines whether a rollover should occur.
|
private void |
rollover() |
boolean |
stop(long timeout,
java.util.concurrent.TimeUnit timeUnit)
Blocks until all tasks have completed execution after a shutdown request, or the timeout occurs, or the current
thread is interrupted, whichever happens first.
|
java.lang.String |
toString() |
equalsImpl, getState, getStatusLogger, hashCodeImpl, initialize, isInitialized, isStarted, isStarting, isStopped, isStopping, setStarted, setStarting, setState, setStopped, setStopping, start, stop, stopprivate static final java.lang.String defaultSchedule
private RollingFileManager manager
private final CronExpression cronExpression
private final Configuration configuration
private final boolean checkOnStartup
private volatile java.util.Date lastRollDate
private CronScheduledFuture<?> future
private CronTriggeringPolicy(CronExpression schedule, boolean checkOnStartup, Configuration configuration)
public void initialize(RollingFileManager aManager)
aManager - The RollingFileManager.public boolean isTriggeringEvent(LogEvent event)
event - A reference to the currently event.public CronExpression getCronExpression()
@PluginFactory public static CronTriggeringPolicy createPolicy(@PluginConfiguration Configuration configuration, @PluginAttribute(value="evaluateOnStartup") java.lang.String evaluateOnStartup, @PluginAttribute(value="schedule") java.lang.String schedule)
configuration - the Configuration.evaluateOnStartup - check if the file should be rolled over immediately.schedule - the cron expression.private static CronExpression getSchedule(java.lang.String expression)
private void rollover()
public boolean stop(long timeout,
java.util.concurrent.TimeUnit timeUnit)
LifeCycle2stop in interface LifeCycle2stop in class AbstractLifeCycletimeout - the maximum time to waittimeUnit - the time unit of the timeout argumentpublic java.lang.String toString()
toString in class java.lang.Object