1 28 29 package com.opencms.workplace; 30 31 import org.opencms.file.CmsObject; 32 import org.opencms.main.CmsException; 33 import org.opencms.main.CmsLog; 34 35 import com.opencms.core.I_CmsSession; 36 import com.opencms.legacy.CmsXmlTemplateLoader; 37 import com.opencms.template.CmsXmlTemplateFile; 38 39 import java.util.Hashtable ; 40 import java.util.Vector ; 41 42 49 public class CmsAdminModuleNewFiles extends CmsWorkplaceDefault { 50 51 54 private final String C_READY = "ready"; 55 private final String C_STEP = "step"; 56 private final String C_LIST = "list"; 57 private final String C_LISTENTRY = "list_entry"; 58 private final String C_FILENAME = "filename"; 59 60 71 public byte[] getContent( 72 CmsObject cms, 73 String templateFile, 74 String elementName, 75 Hashtable parameters, 76 String templateSelector) throws CmsException { 77 78 if (CmsLog.getLog(this).isDebugEnabled() && C_DEBUG) { 79 CmsLog.getLog(this).debug("Getting content of element " + ((elementName == null) ? "<root>" : elementName)); 80 CmsLog.getLog(this).debug("Template file is: " + templateFile); 81 CmsLog.getLog(this).debug( 82 "Selected template section is: " + ((templateSelector == null) ? "<default>" : templateSelector)); 83 } 84 CmsXmlTemplateFile xmlTemplateDocument = getOwnTemplateFile( 85 cms, 86 templateFile, 87 elementName, 88 parameters, 89 templateSelector); 90 I_CmsSession session = CmsXmlTemplateLoader.getSession(cms.getRequestContext(), true); 91 Vector files = (Vector )session.getValue(com.opencms.core.I_CmsConstants.C_SESSION_MODULE_VECTOR); 92 String step = (String )parameters.get(C_STEP); 93 if (step == null) { 94 String list = ""; 95 for (int i = 0; i < files.size(); i++) { 96 xmlTemplateDocument.setData(C_FILENAME, (String )files.elementAt(i)); 97 list += xmlTemplateDocument.getProcessedDataValue(C_LISTENTRY); 98 } 99 xmlTemplateDocument.setData(C_LIST, list); 100 } else { 101 Vector outFiles = new Vector (); 102 103 for (int i = 0; i < files.size(); i++) { 105 String file = (String )files.elementAt(i); 106 String test = (String )parameters.get(file); 107 if (test == null) { 108 outFiles.addElement(file); 109 } 110 } 111 session.putValue(com.opencms.core.I_CmsConstants.C_SESSION_MODULE_VECTOR, outFiles); 112 templateSelector = C_READY; 113 } 114 115 return startProcessing(cms, xmlTemplateDocument, elementName, parameters, templateSelector); 117 } 118 119 129 public boolean isCacheable( 130 CmsObject cms, 131 String templateFile, 132 String elementName, 133 Hashtable parameters, 134 String templateSelector) { 135 136 return false; 137 } 138 } 139
| Popular Tags
|