Derek Hulley 8ff478a98b Merged V3.1 to HEAD
13158: Added PropertyCheck.isValidPropertyString and fixed related checks
   13159: Missed file for rev 13158: PropertyCheck.isValidPropertyString
   13160: Fixed ETHREEOH-1281: JGroups default protocol mapping must be switchable
   13163: Complete fix for ETHREEOH-1277 - add new custom JSP tag
   ___________________________________________________________________
   Modified: svn:mergeinfo
      Merged /alfresco/BRANCHES/V3.1:r13158-13160,13163


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@13604 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-03-12 14:50:03 +00:00

44 lines
1.5 KiB
Java

package org.alfresco.repo.node.index;
import org.alfresco.util.PropertyCheck;
import org.quartz.Job;
import org.quartz.JobDataMap;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
/**
* Forces a index recovery using the {@link IndexRecovery recovery component} passed
* in via the job detail.
* <p>
* Nothing is done if the cluster name property <b>alfresco.cluster.name</b> has not been set.
*
* @author Derek Hulley
*/
public class IndexRecoveryJob implements Job
{
public static final String KEY_INDEX_RECOVERY_COMPONENT = "indexRecoveryComponent";
public static final String KEY_CLUSTER_NAME = "clusterName";
/**
* Forces a full index recovery using the {@link IndexRecovery recovery component} passed
* in via the job detail.
*/
public void execute(JobExecutionContext context) throws JobExecutionException
{
JobDataMap map = context.getJobDetail().getJobDataMap();
IndexRecovery indexRecoveryComponent = (IndexRecovery) map.get(KEY_INDEX_RECOVERY_COMPONENT);
if (indexRecoveryComponent == null)
{
throw new JobExecutionException("Missing job data: " + KEY_INDEX_RECOVERY_COMPONENT);
}
String clusterName = (String) map.get(KEY_CLUSTER_NAME);
if (!PropertyCheck.isValidPropertyString(clusterName))
{
// No cluster name
return;
}
// reindex
indexRecoveryComponent.reindex();
}
}