package hoge;

import java.util.Map;

import com.sun.javadoc.Tag;
import com.sun.tools.doclets.Taglet;

public class RoseIdTaglet implements Taglet {

	private String NAME = "roseid";
	private String HEADER = "[hc:";

	public String getName() {
		return NAME;
	}

	public boolean inField() {
		return true;
	}

	public boolean inConstructor() {
		return true;
	}

	public boolean inMethod() {
		return true;
	}

	public boolean inOverview() {
		return true;
	}

	public boolean inPackage() {
		return true;
	}

	public boolean inType() {
		return true;
	}

	public boolean isInlineTag() {
		return false;
	}

	public static void register(Map tagletMap) {
		RoseIdTaglet tag = new RoseIdTaglet();
		tagletMap.put("roseid", tag);
	}

	public String toString(Tag tag) {

		return "<DT><B>"
			+ HEADER
			+ "</B><DD>"
			+ "<table>"
			+ tag.text()
			+ "</td></tr></table></DD>";

	}

	public String toString(Tag[] tags) {
		if (tags.length == 0) {
			return null;
		}
		String result = "<DT><B>" + HEADER + "</B><DD>";
		result += "<table>";
		for (int i = 0; i < tags.length; i++) {
			if (i > 0) {
				result += ", ";
			}
			result += tags[i].text();
		}
		return result + "</td></tr></table></DD>";

	}
}
