1 22 package net.sf.anupam.csv.taglets; 23 24 import com.sun.javadoc.Tag; 25 import com.sun.tools.doclets.internal.toolkit.taglets.LegacyTaglet; 26 import com.sun.tools.doclets.internal.toolkit.taglets.Taglet; 27 28 import java.util.Map ; 29 import java.util.StringTokenizer ; 30 31 41 public class CSVBeanMappingTaglet 42 implements com.sun.tools.doclets.Taglet { 43 44 47 private static final String NAME = "csv.bean-mapping"; 48 49 52 private static final String HEADER = "CSV Mapping:"; 53 54 57 public CSVBeanMappingTaglet() { 58 super(); 59 } 60 61 67 public String getName() { 68 return NAME; 69 } 70 71 77 public boolean inConstructor() { 78 return false; 79 } 80 81 87 public boolean inField() { 88 return false; 89 } 90 91 97 public boolean inMethod() { 98 return false; 99 } 100 101 107 public boolean inOverview() { 108 return false; 109 } 110 111 117 public boolean inPackage() { 118 return false; 119 } 120 121 127 public boolean inType() { 128 return true; 129 } 130 131 137 public boolean isInlineTag() { 138 return false; 139 } 140 141 146 public static void register(final Map <String , Taglet> tagletMap) { 147 if (tagletMap.containsKey(NAME)) { 148 tagletMap.remove(NAME); 149 } 150 tagletMap.put(NAME, new LegacyTaglet(new CSVBeanMappingTaglet())); 151 } 152 153 160 public String toString(final Tag tag) { 161 162 final StringTokenizer tokenizer = new StringTokenizer (tag.text()); 163 String beanName = "Unknown"; 164 String hasCVSHeader = "False"; 165 while (tokenizer.hasMoreTokens()) { 166 167 final String [] nameValuePair = tokenizer.nextToken().split("="); 168 169 if (nameValuePair != null) { 170 171 if (nameValuePair[0].equalsIgnoreCase("bean-name")) { 172 beanName = nameValuePair[1]; 173 } else if (nameValuePair[0].equalsIgnoreCase("csv-header")) { 174 hasCVSHeader = nameValuePair[1]; 175 } 176 } 177 } 178 return "<DT><B>" 179 + HEADER + "</B><DD>" + "<table>" + "<tr>" + "<td>" 180 + "Mapped Bean Name: " + beanName + "<BR>Has CSV Header: " 181 + hasCVSHeader + "</td>" + "</tr>" + "</table>" + "</DD>\n"; 182 } 183 184 191 public String toString(final Tag [] tags) { 192 if (tags.length == 0) { 193 return null; 194 } 195 final StringBuffer strBuffer = new StringBuffer (); 196 for (Tag tag : tags) { 197 strBuffer.append(this.toString(tag)); 198 } 199 return strBuffer.toString(); 200 } 201 } 202 | Popular Tags |