org.opencms.scheduler.jobs
Class CmsSearchIndexOptimizeJob

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

public class CmsSearchIndexOptimizeJob
extends java.lang.Object
implements I_CmsScheduledJob

A schedulable OpenCms job that optimizes the Lucene based search indexes at runtime.

Only indexes which return true for CmsSearchIndex.isUpdatedIncremental() are being optimized. By default, all such indexes are optimized if this job is run.

Job parameters:

optimizeIndexes={comma separated list of index names}
Specifies list of indexes to be optimized. Only the indexes in this list are being optimized. This parameter overrides an exclude list given with excludeIndexes.
excludeIndexes={comma separated list of index names}
Specifies list of indexes to be excluded from optimization.

Since:
8.5.0

Field Summary
static java.lang.String PARAM_INDEXES_EXCLUDED
          Parameter to control which indexes are excluded from optimization.
static java.lang.String PARAM_INDEXES_OPTIMIZED
          Parameter to control which indexes are optimized.
 
Constructor Summary
CmsSearchIndexOptimizeJob()
           
 
Method Summary
 java.lang.String launch(CmsObject cms, java.util.Map<java.lang.String,java.lang.String> 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_INDEXES_EXCLUDED

public static final java.lang.String PARAM_INDEXES_EXCLUDED
Parameter to control which indexes are excluded from optimization.

See Also:
Constant Field Values

PARAM_INDEXES_OPTIMIZED

public static final java.lang.String PARAM_INDEXES_OPTIMIZED
Parameter to control which indexes are optimized.

See Also:
Constant Field Values
Constructor Detail

CmsSearchIndexOptimizeJob

public CmsSearchIndexOptimizeJob()
Method Detail

launch

public java.lang.String launch(CmsObject cms,
                               java.util.Map<java.lang.String,java.lang.String> 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)