1 28 29 package com.opencms.workplace; 30 31 import org.opencms.file.CmsObject; 32 import org.opencms.i18n.CmsEncoder; 33 import org.opencms.main.CmsException; 34 35 import com.opencms.defaults.CmsLinkCheck; 36 import com.opencms.template.CmsXmlTemplateFile; 37 38 import java.util.Enumeration ; 39 import java.util.Hashtable ; 40 41 49 public class CmsAdminLinkCheckViewer extends CmsWorkplaceDefault { 50 51 62 public byte[] getContent(CmsObject cms, String templateFile, String elementName, Hashtable parameters, String templateSelector) throws CmsException { 63 64 CmsXmlTemplateFile templateDocument = getOwnTemplateFile(cms, templateFile, elementName, parameters, templateSelector); 65 long length = 0; 66 67 if("ok".equalsIgnoreCase((String )parameters.get("step"))){ 68 templateSelector = "done"; 69 } else { 70 String linkcheckdate = ""; 71 StringBuffer linkcheckcontent = new StringBuffer (); 72 try { 73 Hashtable linkchecktable = CmsLinkCheck.readLinkCheckTable(); 74 Enumeration keys = linkchecktable.keys(); 75 while(keys.hasMoreElements()) { 76 String curKey = (String )keys.nextElement(); 77 String curValue = (String ) linkchecktable.get(curKey); 78 if(curKey.equals(CmsLinkCheck.C_LINKCHECKTABLE_DATE)){ 79 linkcheckdate = curValue; 80 } else { 81 linkcheckcontent.append(curKey+", failed checks: "+curValue+"\n"); 82 length++; 83 } 84 } 85 } catch(Exception exc) { 86 linkcheckcontent.append(CmsException.getStackTraceAsString(exc)); 87 } 88 templateDocument.setData("logfiledate", linkcheckdate); 89 templateDocument.setData("logfile", CmsEncoder.escape(linkcheckcontent.toString(), 90 cms.getRequestContext().getEncoding())); 91 templateDocument.setData("logfilesize", length + ""); 92 } 93 return startProcessing(cms, templateDocument, elementName, parameters, templateSelector); 95 } 96 }
| Popular Tags
|