org.opencms.scheduler.jobs
Class CmsImageCacheCleanupJob

java.lang.Object
  extended by org.opencms.scheduler.jobs.CmsImageCacheCleanupJob
All Implemented Interfaces:
I_CmsScheduledJob

public class CmsImageCacheCleanupJob
extends java.lang.Object
implements I_CmsScheduledJob

A schedulable OpenCms job that clear the image cache for the scaled images created by the CmsImageLoader.

Job parameters:

maxage={time in hours}
Specifies the maximum age (in hours) images can be unused before they are removed from the cache. Any image in the image cache folder that has a RFS date of last modification older than this time is considered expired and is therefore deleted.

Since:
6.2.0
Version:
$Revision: 1.6 $
Author:
Alexander Kandzior

Field Summary
static java.lang.String PARAM_MAXAGE
          Unlock parameter.
 
Constructor Summary
CmsImageCacheCleanupJob()
           
 
Method Summary
static int cleanImageCache(float maxAge)
          Removes all expired image cache entries from the RFS cache.
 java.lang.String launch(CmsObject cms, java.util.Map parameters)
          This method will be called when this scheduled job is executed.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PARAM_MAXAGE

public static final java.lang.String PARAM_MAXAGE
Unlock parameter.

See Also:
Constant Field Values
Constructor Detail

CmsImageCacheCleanupJob

public CmsImageCacheCleanupJob()
Method Detail

cleanImageCache

public static int cleanImageCache(float maxAge)
Removes all expired image cache entries from the RFS cache.

Empty directories are removed as well.

Parameters:
maxAge - the maximum age of the image cache files in hours (or fractions of hours)
Returns:
the total number of deleted resources

launch

public java.lang.String launch(CmsObject cms,
                               java.util.Map parameters)
                        throws java.lang.Exception
Description copied from interface: I_CmsScheduledJob
This method will be called when this scheduled job is executed.

Depending on the configuration of this job, a new instance of the configured class will be instantiated every time the job is launched, or a new instance will be generated only the first time the job is launched, and re-used afterwards.

The result String will be written to the OpenCms logfile in the org.opencms.scheduler.CmsScheduleManager channel, on INFO log level.

Specified by:
launch in interface I_CmsScheduledJob
Parameters:
cms - will be initialized with the configured users cms context
parameters - the configured parameters
Returns:
a String that will be written to the OpenCms logfile
Throws:
java.lang.Exception - if something goes wrong
See Also:
I_CmsScheduledJob.launch(CmsObject, Map)