James Moger
2011-07-20 330247866e931d5e5f93999db9947bc2fc1fc9ee
src/com/gitblit/utils/MarkdownUtils.java
@@ -23,35 +23,44 @@
import org.tautua.markdownpapers.Markdown;
import org.tautua.markdownpapers.parser.ParseException;
/**
 * Utility methods for transforming raw markdown text to html.
 *
 * @author James Moger
 *
 */
public class MarkdownUtils {
   /**
    * Returns the html version of the markdown source text.
    *
    * @param markdown
    * @return html version of markdown text
    * @throws java.text.ParseException
    */
   public static String transformMarkdown(String markdown) throws java.text.ParseException {
      // Read raw markdown content and transform it to html
      StringReader reader = new StringReader(markdown);
      StringWriter writer = new StringWriter();
      try {
         Markdown md = new Markdown();
         md.transform(reader, writer);
         return writer.toString();
      } catch (ParseException p) {
         throw new java.text.ParseException(p.getMessage(), 0);
      } finally {
         reader.close();
         try {
            writer.close();
         } catch (IOException e) {
            // IGNORE
         }
         return transformMarkdown(new StringReader(markdown));
      } catch (NullPointerException p) {
         throw new java.text.ParseException("Markdown string is null!", 0);
      }
   }
   /**
    * Returns the html version of the markdown source reader. The reader is
    * closed regardless of success or failure.
    *
    * @param markdownReader
    * @return html version of the markdown text
    * @throws java.text.ParseException
    */
   public static String transformMarkdown(Reader markdownReader) throws java.text.ParseException {
      // Read raw markdown content and transform it to html
      StringWriter writer = new StringWriter();
      try {
         Markdown md = new Markdown();
         md.transform(markdownReader, writer);
         return writer.toString();
         return writer.toString().trim();
      } catch (ParseException p) {
         throw new java.text.ParseException(p.getMessage(), 0);
      } finally {
@@ -67,5 +76,4 @@
         }
      }
   }
}