package org.bsc.confluence;
import java.net.MalformedURLException;
/**
*
* @author Sorrentino
*
*/
public class ConfluenceUtils {
/**
*
* @param value
* @return
*/
public static String decode(String value) {
if (null == value) {
return null;
}
final String result = value
.replaceAll("([{}\\[\\]\\+\\*_])", "\\\\$1") // escape every char that would mean something for confluence
.replaceAll("(?i)</?pre>", "{noformat}")
.replaceAll("(?i)<code>", "{{")
.replaceAll("(?i)</code>", "}}")
.replaceAll("(?i)</?(b|strong)>", "*")
.replaceAll("(?i)<br/?>", "\\\\")
.replaceAll("(?i)<hr/?>", "----")
.replaceAll("(?i)</?p>", "\n")
.replaceAll("(?i)</?u>", "+")
.replaceAll("(?i)</?(s|del)>", "-")
.replaceAll("(?i)</?(i|em)>", "_");
return ConfluenceHtmlListUtils.replaceHtmlList(result);
}
/**
*
* @param value
* @return
*/
public static String encodeAnchor(String value) {
if (null == value) {
return null;
}
String v = decode(value);
try {
new java.net.URL(v);
return v;
} catch (MalformedURLException e) {
return v.replace(':', '_');
}
}
/**
*
* @return ads banner
*/
public static String getBannerWiki() {
final StringBuilder wiki = new StringBuilder()
.append("{info:title=").append("Generated page").append('}')
.append("this page has been generated by plugin: ")
.append("[org.bsc.maven:maven-confluence-reporting-plugin|https://github.com/bsorrentino/maven-confluence-plugin]")
.append("{info}")
.append('\n');
return wiki.toString();
}
}