001package org.nuxeo.apidoc.documentation;
002
003import org.apache.commons.lang.StringEscapeUtils;
004
005public class ContributionItem {
006
007    protected String tagName;
008
009    protected String nameOrId;
010
011    protected String documentation;
012
013    protected String xml;
014
015    public void write(StringBuffer sb) {
016        sb.append("\n\n<div>");
017        sb.append("\n<div>");
018        sb.append(tagName);
019        if (nameOrId != null) {
020            sb.append(" ");
021            sb.append(nameOrId);
022        }
023        sb.append("</div>");
024
025        sb.append("\n<p>");
026        sb.append(DocumentationHelper.getHtml(documentation));
027        sb.append("</p>");
028
029        sb.append("\n<code>");
030        sb.append(StringEscapeUtils.escapeHtml(xml));
031        sb.append("</code>");
032
033        sb.append("</div>");
034    }
035
036    public String getLabel() {
037        StringBuffer sb = new StringBuffer();
038        sb.append(tagName);
039        if (nameOrId != null) {
040            sb.append(" ");
041            sb.append(nameOrId);
042        }
043        return sb.toString();
044    }
045
046    public String getId() {
047        return nameOrId;
048    }
049
050    public String getDocumentation() {
051        return DocumentationHelper.getHtml(documentation);
052    }
053
054    public String getXml() {
055        return StringEscapeUtils.escapeHtml(xml);
056    }
057
058    public String getRawXml() {
059        return xml;
060    }
061
062}