01: package de.webman.template.eventhandler;
02:
03: import com.teamkonzept.webman.mainint.events.*;
04: import com.teamkonzept.webman.mainint.*;
05: import com.teamkonzept.webman.*;
06: import com.teamkonzept.web.*;
07: import com.teamkonzept.lib.*;
08: import java.io.*;
09:
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
19: ParameterTypes {
20: private TESaveTextHandler() {
21: }
22:
23: private static TESaveTextHandler instance = new TESaveTextHandler();
24:
25: public static TESaveTextHandler getInstance() {
26: return instance;
27: }
28:
29: public void handleEvent(TKEvent evt) throws TKException {
30: try {
31: String tmplName = evt.getParameter(PARAMETER,
32: "TEMPLATE_NAME");
33: String text = evt.getParameter(PARAMETER, "TEMPLATE_TEXT");
34: text = text.trim();
35: saveTemplate(text, tmplName, evt);
36:
37: // anzeigen des gespeicherten textes
38: TEUtils.showSavedText(evt);
39: } catch (IOException e) {
40: throw WebmanExceptionHandler.getException(e);
41: } catch (Throwable t) {
42: throw WebmanExceptionHandler.getException(t);
43: }
44: }
45:
46: private static void saveTemplate(String text, String name,
47: TKEvent evt) throws IOException {
48: File datei = new File(evt.getHttpInterface().getDocumentRoot()
49: + File.separator
50: + TemplateUtils.getGenerationDirectory() + name);
51: FileWriter writer = new FileWriter(datei);
52: writer.write(text);
53: writer.close();
54: }
55:
56: public boolean isHandler(TKEvent evt) {
57: return evt.getName().equalsIgnoreCase("TE_SAVE_TEXT");
58: }
59: }
|