KickJava   Java API By Example, From Geeks To Geeks.

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


1 /*
2 * File : $Source: /usr/local/cvs/opencms/src-modules/com/opencms/workplace/CmsAdminLinkmanagement.java,v $
3 * Date : $Date: 2005/06/22 10:38:24 $
4 * Version: $Revision: 1.2 $
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.report.A_CmsReportThread;
34
35 import com.opencms.core.I_CmsSession;
36 import com.opencms.legacy.CmsXmlTemplateLoader;
37
38 import java.util.Hashtable JavaDoc;
39
40 /**
41  * Workplace class for the Check Project / Check HTML Links backoffice item.
42  *
43  * @author Alexander Kandzior
44  * @author Hanjo Riege
45  * @version $Revision: 1.2 $
46  *
47  * @deprecated Will not be supported past the OpenCms 6 release.
48  */

49 public class CmsAdminLinkmanagement extends CmsWorkplaceDefault {
50
51     private final String JavaDoc C_LINKCHECK_HTML_THREAD = "C_LINKCHECK_HTML_THREAD";
52
53     public byte[] getContent(CmsObject cms, String JavaDoc templateFile, String JavaDoc elementName, Hashtable JavaDoc parameters, String JavaDoc templateSelector) throws CmsException {
54
55         CmsXmlWpTemplateFile templateDocument = (CmsXmlWpTemplateFile)getOwnTemplateFile(cms, templateFile, elementName, parameters, templateSelector);
56         I_CmsSession session = CmsXmlTemplateLoader.getSession(cms.getRequestContext(), true);
57         String JavaDoc action = (String JavaDoc)parameters.get("action");
58         A_CmsReportThread doCheck = null;
59         CmsXmlLanguageFile lang = templateDocument.getLanguageFile();
60
61         String JavaDoc text = lang.getLanguageValue("linkmanagement.label.text1")
62                         + cms.getRequestContext().currentProject().getName()
63                         + lang.getLanguageValue("linkmanagement.label.text2");
64                         
65         if("start".equals(action)){
66             // first call - start checking
67
doCheck = new CmsLinkHrefManagementThread(cms);
68             doCheck.start();
69             session.putValue(C_LINKCHECK_HTML_THREAD, doCheck);
70
71             templateDocument.setData("text", text);
72             templateDocument.setData("data", "");
73             templateDocument.setData("endMethod", "");
74         }else if("working".equals(action)){
75             doCheck = (CmsLinkHrefManagementThread)session.getValue(C_LINKCHECK_HTML_THREAD);
76             
77             if(doCheck.isAlive()){
78                 templateDocument.setData("text", text);
79                 templateDocument.setData("endMethod", "");
80             }else{
81                 text += "<br>" + lang.getLanguageValue("linkmanagement.label.textende");
82                 
83                 templateDocument.setData("autoUpdate","");
84                 templateDocument.setData("text", text);
85
86                 session.removeValue(C_LINKCHECK_HTML_THREAD);
87             }
88             templateDocument.setData("data", doCheck.getReportUpdate());
89         }
90         // now load the template file and start the processing
91
return startProcessing(cms, templateDocument, elementName, parameters, templateSelector);
92     }
93 }
Popular Tags