29 |
|
|
30 |
import com.sun.javadoc.Tag; |
import com.sun.javadoc.Tag; |
31 |
|
|
32 |
|
import gnu.classpath.tools.doclets.InlineTagRenderer; |
33 |
|
|
34 |
/** |
/** |
35 |
* The default Taglet which handles since information. |
* The default Taglet which handles since information. |
36 |
* |
* |
37 |
* @author Julian Scheid (julian@sektor37.de) |
* @author Julian Scheid (julian@sektor37.de) |
38 |
*/ |
*/ |
39 |
public class SinceTaglet implements Taglet { |
public class SinceTaglet implements GnuExtendedTaglet { |
40 |
|
|
41 |
private static final String NAME = "since"; |
private static final String NAME = "since"; |
42 |
private static final String HEADER = "Since:"; |
private static final String HEADER = "Since:"; |
43 |
|
|
44 |
private static boolean enabled = true; |
private static boolean enabled = true; |
45 |
|
|
46 |
|
private InlineTagRenderer inlineTagRenderer; |
47 |
|
|
48 |
|
public SinceTaglet(InlineTagRenderer inlineTagRenderer) |
49 |
|
{ |
50 |
|
this.inlineTagRenderer = inlineTagRenderer; |
51 |
|
} |
52 |
|
|
53 |
public String getName() { |
public String getName() { |
54 |
return NAME; |
return NAME; |
82 |
return false; |
return false; |
83 |
} |
} |
84 |
|
|
|
public static void register(Map tagletMap) { |
|
|
SinceTaglet sinceTaglet = new SinceTaglet(); |
|
|
tagletMap.put(sinceTaglet.getName(), sinceTaglet); |
|
|
} |
|
|
|
|
85 |
public String toString(Tag tag) { |
public String toString(Tag tag) { |
86 |
|
// should raise assertion |
87 |
if (enabled) { |
if (enabled) { |
88 |
return toString(new Tag[] { tag }); |
return toString(new Tag[] { tag }); |
89 |
} |
} |
93 |
} |
} |
94 |
|
|
95 |
public String toString(Tag[] tags) { |
public String toString(Tag[] tags) { |
96 |
|
// should raise assertion |
97 |
|
return toString(tags, null); |
98 |
|
} |
99 |
|
|
100 |
|
public String toString(Tag tag, TagletContext context) |
101 |
|
{ |
102 |
|
return null; |
103 |
|
} |
104 |
|
|
105 |
|
public String toString(Tag[] tags, TagletContext context) |
106 |
|
{ |
107 |
if (!enabled || tags.length == 0) { |
if (!enabled || tags.length == 0) { |
108 |
return null; |
return null; |
109 |
} |
} |
114 |
result.append("<dt class=\"tag section header\"><b>"); |
result.append("<dt class=\"tag section header\"><b>"); |
115 |
result.append(HEADER); |
result.append(HEADER); |
116 |
result.append("</b></dt>"); |
result.append("</b></dt>"); |
117 |
for (int i = 0; i < tags.length; i++) { |
for (int i = 0; i < tags.length; ++i) { |
118 |
result.append("<dd>"); |
result.append("<dd>"); |
119 |
result.append(tags[i].text()); |
result.append(inlineTagRenderer.renderInlineTags(tags[i].inlineTags(), context)); |
120 |
result.append("</dd>"); |
result.append("</dd>"); |
121 |
} |
} |
122 |
result.append("</dl>"); |
result.append("</dl>"); |