1 31 32 package org.opencms.workplace.tools.content.check; 33 34 import org.opencms.file.collectors.I_CmsResourceCollector; 35 import org.opencms.jsp.CmsJspActionElement; 36 import org.opencms.report.I_CmsReportThread; 37 import org.opencms.workplace.list.A_CmsListReport; 38 39 import java.util.Hashtable ; 40 import java.util.Map ; 41 42 import javax.servlet.http.HttpServletRequest ; 43 import javax.servlet.http.HttpServletResponse ; 44 import javax.servlet.jsp.JspException ; 45 import javax.servlet.jsp.PageContext ; 46 47 56 public class CmsContentCheckReport extends A_CmsListReport { 57 58 59 protected Object m_dialogObject; 60 61 62 private CmsContentCheck m_contentCheck; 63 64 65 private String m_paramClassname; 66 67 72 public CmsContentCheckReport(CmsJspActionElement jsp) { 73 74 super(jsp); 75 } 76 77 84 public CmsContentCheckReport(PageContext context, HttpServletRequest req, HttpServletResponse res) { 85 86 this(new CmsJspActionElement(context, req, res)); 87 } 88 89 94 public void displayReport() throws JspException { 95 96 getJsp().getRequest().setAttribute(SESSION_WORKPLACE_CLASS, this); 98 switch (getAction()) { 99 case ACTION_REPORT_END: 100 m_contentCheck = (CmsContentCheck)((Map )getSettings().getDialogObject()).get(getParamClassname()); 102 I_CmsResourceCollector collector = new CmsContentCheckCollector(m_contentCheck.getResults()); 103 getSettings().setCollector(collector); 104 try { 105 getToolManager().jspForwardTool(this, "/contenttools/check/result", null); 106 } catch (Exception e) { 107 actionCloseDialog(); 108 } 109 break; 110 case ACTION_CANCEL: 111 actionCloseDialog(); 112 break; 113 case ACTION_REPORT_UPDATE: 114 setParamAction(REPORT_UPDATE); 115 getJsp().include(FILE_REPORT_OUTPUT); 116 break; 117 case ACTION_REPORT_BEGIN: 118 case ACTION_CONFIRMED: 119 case ACTION_DEFAULT: 120 default: 121 I_CmsReportThread m_thread = initializeThread(); 122 m_thread.start(); 123 setParamAction(REPORT_BEGIN); 124 setParamThread(m_thread.getUUID().toString()); 125 getJsp().include(FILE_REPORT_OUTPUT); 126 } 127 } 128 129 134 public String getParamClassname() { 135 136 return m_paramClassname; 137 } 138 139 143 public I_CmsReportThread initializeThread() { 144 145 m_contentCheck = (CmsContentCheck)((Map )getSettings().getDialogObject()).get(getParamClassname()); 146 147 I_CmsReportThread contentCheckThread = new CmsContentCheckThread(getCms(), m_contentCheck); 148 149 return contentCheckThread; 150 } 151 152 157 public void setDialogObject(Object dialogObject) { 158 159 m_dialogObject = dialogObject; 160 if (dialogObject == null) { 161 getDialogObjectMap().remove(getClass().getName()); 163 } else { 164 getDialogObjectMap().put(getClass().getName(), dialogObject); 165 } 166 } 167 168 173 public void setParamClassname(String className) { 174 175 m_paramClassname = className; 176 } 177 178 183 private Map getDialogObjectMap() { 184 185 Map objects = (Map )getSettings().getDialogObject(); 186 if (objects == null) { 187 objects = new Hashtable (); 189 getSettings().setDialogObject(objects); 190 } 191 return objects; 192 } 193 194 } | Popular Tags |