KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > de > webman > template > eventhandler > TESaveTextHandler


1 package de.webman.template.eventhandler;
2
3 import com.teamkonzept.webman.mainint.events.*;
4 import com.teamkonzept.webman.mainint.*;
5 import com.teamkonzept.webman.*;
6 import com.teamkonzept.web.*;
7 import com.teamkonzept.lib.*;
8 import java.io.*;
9
10 /**
11  * Speichert den Text eines Templates
12  *
13  * @author $Author: tina $
14  * @version $Revision: 1.1 $
15  *
16  * TODO: einbinden von WebDAV
17  */

18 public class TESaveTextHandler extends DefaultEventHandler implements ParameterTypes
19 {
20      private TESaveTextHandler()
21     {}
22     
23     private static TESaveTextHandler instance = new TESaveTextHandler();
24     
25     public static TESaveTextHandler getInstance()
26     {
27         return instance;
28     }
29     public void handleEvent(TKEvent evt) throws TKException
30     {
31         try
32         {
33             String JavaDoc tmplName = evt.getParameter( PARAMETER, "TEMPLATE_NAME" );
34             String JavaDoc text = evt.getParameter( PARAMETER, "TEMPLATE_TEXT" );
35             text = text.trim();
36             saveTemplate(text, tmplName, evt);
37
38             // anzeigen des gespeicherten textes
39
TEUtils.showSavedText( evt );
40         }
41         catch (IOException e)
42         {
43             throw WebmanExceptionHandler.getException(e);
44         }
45         catch (Throwable JavaDoc t)
46         {
47             throw WebmanExceptionHandler.getException(t);
48         }
49     }
50
51     private static void saveTemplate(String JavaDoc text, String JavaDoc name, TKEvent evt) throws IOException
52     {
53         File datei = new File(evt.getHttpInterface().getDocumentRoot() +File.separator + TemplateUtils.getGenerationDirectory() + name );
54         FileWriter writer = new FileWriter(datei);
55         writer.write(text);
56         writer.close();
57     }
58
59     public boolean isHandler(TKEvent evt)
60     {
61         return evt.getName().equalsIgnoreCase("TE_SAVE_TEXT");
62     }
63 }
64
Popular Tags