1 package org.apache.maven.doxia.module.xdoc;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.io.Writer;
23
24 import org.apache.maven.doxia.sink.Sink;
25 import org.codehaus.plexus.util.StringUtils;
26 import org.codehaus.plexus.util.xml.PrettyPrintXMLWriter;
27 import org.codehaus.plexus.util.xml.XmlUtil;
28
29
30
31
32
33
34 public class XmlWriterXdocSinkTest
35 extends XdocSinkTest
36 {
37 private static final String DEFAULT_INDENT = StringUtils.repeat( " ", XmlUtil.DEFAULT_INDENTATION_SIZE );
38
39
40 protected Sink createSink( Writer writer )
41 {
42 return new XmlWriterXdocSink( new PrettyPrintXMLWriter( writer ) );
43 }
44
45
46 protected String getSection1Block( String title )
47 {
48 return "<section name=\"" + title + "\"/>";
49 }
50
51
52 protected String getSection2Block( String title )
53 {
54 return "<subsection name=\"" + title + "\"/>";
55 }
56
57
58 protected String getListBlock( String item )
59 {
60 return "<ul>" + XmlUtil.DEFAULT_LINE_SEPARATOR + DEFAULT_INDENT + "<li>" + item + "</li>"
61 + XmlUtil.DEFAULT_LINE_SEPARATOR + "</ul>";
62 }
63
64
65 protected String getNumberedListBlock( String item )
66 {
67 return "<ol style=\"list-style-type: lower-roman\">" + XmlUtil.DEFAULT_LINE_SEPARATOR + DEFAULT_INDENT
68 + "<li>" + item + "</li>" + XmlUtil.DEFAULT_LINE_SEPARATOR + "</ol>";
69 }
70
71
72 protected String getDefinitionListBlock( String definum, String definition )
73 {
74 return "<dl>" + XmlUtil.DEFAULT_LINE_SEPARATOR + DEFAULT_INDENT + "<dt>" + definum + "</dt>"
75 + XmlUtil.DEFAULT_LINE_SEPARATOR + DEFAULT_INDENT + "<dd>" + definition + "</dd>"
76 + XmlUtil.DEFAULT_LINE_SEPARATOR + "</dl>";
77 }
78
79
80 protected String getFigureBlock( String source, String caption )
81 {
82 String figureBlock = "<img src=\"" + source + "\"";
83 if ( caption != null )
84 {
85 figureBlock += " alt=\"" + caption + "\"";
86 }
87 else
88 {
89 figureBlock += " alt=\"\"";
90 }
91 figureBlock += "/>";
92 return figureBlock;
93 }
94
95
96 protected String getTableBlock( String cell, String caption )
97 {
98 return "<table border=\"0\">" + XmlUtil.DEFAULT_LINE_SEPARATOR + DEFAULT_INDENT
99 + "<caption>" + caption + "</caption>" + XmlUtil.DEFAULT_LINE_SEPARATOR + DEFAULT_INDENT
100 + "<tr valign=\"top\">" + XmlUtil.DEFAULT_LINE_SEPARATOR + DEFAULT_INDENT + DEFAULT_INDENT
101 + "<td>" + cell + "</td>" + XmlUtil.DEFAULT_LINE_SEPARATOR + DEFAULT_INDENT + "</tr>"
102 + XmlUtil.DEFAULT_LINE_SEPARATOR + "</table>";
103 }
104
105
106 protected String getHorizontalRuleBlock()
107 {
108 return "<hr/>";
109 }
110
111
112 protected String getLineBreakBlock()
113 {
114 return "<br/>";
115 }
116 }