01: /**
02: * LibreSource
03: * Copyright (C) 2004-2008 Artenum SARL / INRIA
04: * http://www.libresource.org - contact@artenum.com
05: *
06: * This file is part of the LibreSource software,
07: * which can be used and distributed under license conditions.
08: * The license conditions are provided in the LICENSE.TXT file
09: * at the root path of the packaging that enclose this file.
10: * More information can be found at
11: * - http://dev.libresource.org/home/license
12: *
13: * Initial authors :
14: *
15: * Guillaume Bort / INRIA
16: * Francois Charoy / Universite Nancy 2
17: * Julien Forest / Artenum
18: * Claude Godart / Universite Henry Poincare
19: * Florent Jouille / INRIA
20: * Sebastien Jourdain / INRIA / Artenum
21: * Yves Lerumeur / Artenum
22: * Pascal Molli / Universite Henry Poincare
23: * Gerald Oster / INRIA
24: * Mariarosa Penzi / Artenum
25: * Gerard Sookahet / Artenum
26: * Raphael Tani / INRIA
27: *
28: * Contributors :
29: *
30: * Stephane Bagnier / Artenum
31: * Amadou Dia / Artenum-IUP Blois
32: * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
33: */package org.libresource.web.wiki.macros;
34:
35: import org.radeox.macro.Preserved;
36: import org.radeox.macro.parameter.MacroParameter;
37:
38: import java.io.IOException;
39: import java.io.Writer;
40:
41: public class PreMacro extends Preserved {
42: public PreMacro() throws Exception {
43: addSpecial('[');
44: addSpecial(']');
45: addSpecial('{');
46: addSpecial('}');
47: addSpecial('*');
48: addSpecial('-');
49: addSpecial('\\');
50: }
51:
52: public String getName() {
53: return "pre";
54: }
55:
56: public void execute(Writer writer, MacroParameter params)
57: throws IllegalArgumentException, IOException {
58: try {
59: writer.write("<div class=\"pre\"><pre>"
60: + replace(params.getContent()) + "</pre></div>");
61: } catch (IOException e) {
62: throw e;
63: } catch (IllegalArgumentException e) {
64: throw e;
65: } catch (Exception e) {
66: throw new IllegalArgumentException("error in pre : "
67: + e.getMessage());
68: }
69: }
70:
71: public String getDescription() {
72: return "Allow rigid text style. (Keep text formating)";
73: }
74:
75: public String[] getParamDescription() {
76: return new String[0];
77: }
78: }
|