package uk.ac.ebi.ep.sitemap.advanced;
import java.io.IOException;
import java.io.OutputStreamWriter;
abstract class AbstractSitemapUrlRenderer<T extends WebSitemapUrl> implements ISitemapUrlRenderer<T> {
public void render(WebSitemapUrl url, OutputStreamWriter out, W3CDateFormat dateFormat, String additionalData)
throws IOException {
out.write(" <url>\n");
out.write(" <loc>");
out.write(url.getUrl().toString());
out.write("</loc>\n");
if (url.getLastMod() != null) {
out.write(" <lastmod>");
out.write(dateFormat.format(url.getLastMod()));
out.write("</lastmod>\n");
}
if (url.getChangeFreq() != null) {
out.write(" <changefreq>");
out.write(url.getChangeFreq().toString());
out.write("</changefreq>\n");
}
if (url.getPriority() != null) {
out.write(" <priority>");
out.write(url.getPriority().toString());
out.write("</priority>\n");
}
if (additionalData != null) out.write(additionalData);
out.write(" </url>\n");
}
public void renderTag(StringBuilder sb, String namespace, String tagName, Object value) {
if (value == null) return;
sb.append(" <");
sb.append(namespace);
sb.append(':');
sb.append(tagName);
sb.append('>');
sb.append(value);
sb.append("</");
sb.append(namespace);
sb.append(':');
sb.append(tagName);
sb.append(">\n");
}
}