KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > opencms > workplace > CmsAdminModuleNewFiles


1 /*
2  * File : $Source: /usr/local/cvs/opencms/src-modules/com/opencms/workplace/CmsAdminModuleNewFiles.java,v $
3  * Date : $Date: 2005/06/21 15:49:59 $
4  * Version: $Revision: 1.3 $
5  *
6  * This library is part of OpenCms -
7  * the Open Source Content Mananagement System
8  *
9  * Copyright (C) 2001 The OpenCms Group
10  *
11  * This library is free software; you can redistribute it and/or
12  * modify it under the terms of the GNU Lesser General Public
13  * License as published by the Free Software Foundation; either
14  * version 2.1 of the License, or (at your option) any later version.
15  *
16  * This library is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19  * Lesser General Public License for more details.
20  *
21  * For further information about OpenCms, please see the
22  * OpenCms Website: http://www.opencms.org
23  *
24  * You should have received a copy of the GNU Lesser General Public
25  * License along with this library; if not, write to the Free Software
26  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
27  */

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 JavaDoc;
40 import java.util.Vector JavaDoc;
41
42 /**
43  * Template class for displaying the conflicting Files for a new Module.
44  * Creation date: (06.09.00 09:30:25)
45  * @author Hanjo Riege
46  *
47  * @deprecated Will not be supported past the OpenCms 6 release.
48  */

49 public class CmsAdminModuleNewFiles extends CmsWorkplaceDefault {
50
51     /**
52      * the different template tags.
53      */

54     private final String JavaDoc C_READY = "ready";
55     private final String JavaDoc C_STEP = "step";
56     private final String JavaDoc C_LIST = "list";
57     private final String JavaDoc C_LISTENTRY = "list_entry";
58     private final String JavaDoc C_FILENAME = "filename";
59
60     /**
61      * Gets the content of a defined section in a given template file and its subtemplates
62      * with the given parameters.
63      *
64      * @see #getContent(CmsObject, String, String, Hashtable, String)
65      * @param cms CmsObject Object for accessing system resources.
66      * @param templateFile Filename of the template file.
67      * @param elementName Element name of this template in our parent template.
68      * @param parameters Hashtable with all template class parameters.
69      * @param templateSelector template section that should be processed.
70      */

71     public byte[] getContent(
72         CmsObject cms,
73         String JavaDoc templateFile,
74         String JavaDoc elementName,
75         Hashtable JavaDoc parameters,
76         String JavaDoc 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 JavaDoc files = (Vector JavaDoc)session.getValue(com.opencms.core.I_CmsConstants.C_SESSION_MODULE_VECTOR);
92         String JavaDoc step = (String JavaDoc)parameters.get(C_STEP);
93         if (step == null) {
94             String JavaDoc list = "";
95             for (int i = 0; i < files.size(); i++) {
96                 xmlTemplateDocument.setData(C_FILENAME, (String JavaDoc)files.elementAt(i));
97                 list += xmlTemplateDocument.getProcessedDataValue(C_LISTENTRY);
98             }
99             xmlTemplateDocument.setData(C_LIST, list);
100         } else {
101             Vector JavaDoc outFiles = new Vector JavaDoc();
102
103             // read the Files
104
for (int i = 0; i < files.size(); i++) {
105                 String JavaDoc file = (String JavaDoc)files.elementAt(i);
106                 String JavaDoc test = (String JavaDoc)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         // Now load the template file and start the processing
116
return startProcessing(cms, xmlTemplateDocument, elementName, parameters, templateSelector);
117     }
118
119     /**
120      * Indicates if the results of this class are cacheable.
121      *
122      * @param cms CmsObject Object for accessing system resources
123      * @param templateFile Filename of the template file
124      * @param elementName Element name of this template in our parent template.
125      * @param parameters Hashtable with all template class parameters.
126      * @param templateSelector template section that should be processed.
127      * @return <EM>true</EM> if cacheable, <EM>false</EM> otherwise.
128      */

129     public boolean isCacheable(
130         CmsObject cms,
131         String JavaDoc templateFile,
132         String JavaDoc elementName,
133         Hashtable JavaDoc parameters,
134         String JavaDoc templateSelector) {
135
136         return false;
137     }
138 }
139
Popular Tags