org.apache.log.output.io.rotate

Class RotateStrategyByTimeOfDay

public class RotateStrategyByTimeOfDay extends Object implements RotateStrategy

Rotation stragety based on a specific time of day.

Author: Leif Mortenson

Field Summary
longm_currentRotation
Time in ms that the current rotation started.
static longTIME_24_HOURS
Constant that stores the the number of ms in 24 hours.
Constructor Summary
RotateStrategyByTimeOfDay()
Rotate logs at specific time of day.
RotateStrategyByTimeOfDay(long time)
Rotate logs at specific time of day.
Method Summary
booleanisRotationNeeded(String data, File file)
Check if now a log rotation is neccessary.
voidreset()
reset interval history counters.

Field Detail

m_currentRotation

private long m_currentRotation
Time in ms that the current rotation started.

TIME_24_HOURS

private static final long TIME_24_HOURS
Constant that stores the the number of ms in 24 hours.

Constructor Detail

RotateStrategyByTimeOfDay

public RotateStrategyByTimeOfDay()
Rotate logs at specific time of day. By default do log rotation at 00:00:00 every day.

RotateStrategyByTimeOfDay

public RotateStrategyByTimeOfDay(long time)
Rotate logs at specific time of day.

Parameters: time Offset in milliseconds into the day to perform the log rotation.

Method Detail

isRotationNeeded

public boolean isRotationNeeded(String data, File file)
Check if now a log rotation is neccessary. If the time of the current rotation + 24 hours is less than the current time. If not then a rotation is needed.

Parameters: data the last message written to the log system file not used

Returns: boolean return true if log rotation is neccessary, else false

reset

public void reset()
reset interval history counters.