1 46 47 package org.opencms.workplace.tools.searchindex; 48 49 import org.opencms.file.CmsObject; 50 import org.opencms.file.CmsVfsResourceNotFoundException; 51 import org.opencms.main.CmsException; 52 import org.opencms.main.OpenCms; 53 import org.opencms.report.A_CmsReportThread; 54 import org.opencms.report.I_CmsReport; 55 56 import java.util.List ; 57 58 67 public class CmsIndexingReportThread extends A_CmsReportThread { 68 69 70 private Throwable m_error; 71 72 73 private List m_indexNames; 74 75 81 public CmsIndexingReportThread(CmsObject cms, List indexNames) { 82 83 super(cms, Messages.get().getBundle().key(Messages.GUI_INDEXING_THREAD_NAME_0)); 84 initHtmlReport(cms.getRequestContext().getLocale()); 85 86 m_indexNames = indexNames; 87 } 88 89 94 public Throwable getError() { 95 96 return m_error; 97 } 98 99 104 public String getReportUpdate() { 105 106 return getReport().getReportUpdate(); 107 } 108 109 114 public void run() { 115 116 getReport().println( 117 Messages.get().container(Messages.RPT_REBUILD_SEARCH_INDEXES_BEGIN_0), 118 I_CmsReport.FORMAT_HEADLINE); 119 try { 120 121 if (m_indexNames == null) { 122 OpenCms.getSearchManager().rebuildAllIndexes(getReport()); 123 } else { 124 OpenCms.getSearchManager().rebuildIndexes(m_indexNames, getReport()); 125 } 126 getReport().println( 127 Messages.get().container(Messages.RPT_REBUILD_SEARCH_INDEXES_END_0), 128 I_CmsReport.FORMAT_HEADLINE); 129 } catch (CmsVfsResourceNotFoundException e) { 130 131 getReport().println( 132 Messages.get().container(Messages.RPT_SEARCH_CONFIG_NOT_FOUND_0), 133 I_CmsReport.FORMAT_NOTE); 134 m_error = e; 135 } catch (CmsException exc) { 136 getReport().println( 137 org.opencms.search.Messages.get().container(org.opencms.search.Messages.RPT_SEARCH_INDEXING_FAILED_0), 138 I_CmsReport.FORMAT_WARNING); 139 getReport().println(exc); 140 m_error = exc; 141 } 142 } 143 144 } | Popular Tags |