From cb285cbfddfc0b633d6b8cdb4dc0d2bd2b8b51ef Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Thu, 05 Jan 2012 17:34:05 -0500 Subject: [PATCH] Fixed bug in receive hook for repositories in subfolders --- src/com/gitblit/utils/MarkdownUtils.java | 66 ++++++++++++++++++++++---------- 1 files changed, 45 insertions(+), 21 deletions(-) diff --git a/src/com/gitblit/utils/MarkdownUtils.java b/src/com/gitblit/utils/MarkdownUtils.java index 6cdb3be..a3a1859 100644 --- a/src/com/gitblit/utils/MarkdownUtils.java +++ b/src/com/gitblit/utils/MarkdownUtils.java @@ -1,3 +1,18 @@ +/* + * Copyright 2011 gitblit.com. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.gitblit.utils; import java.io.IOException; @@ -8,46 +23,55 @@ 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 { + StringReader reader = new StringReader(markdown); + String html = transformMarkdown(reader); reader.close(); - try { - writer.close(); - } catch (IOException e) { - } + return html; + } 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 + // 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(); - } catch (ParseException p) { + return writer.toString().trim(); + } catch (ParseException p) { throw new java.text.ParseException(p.getMessage(), 0); } finally { try { - markdownReader.close(); - } catch (IOException e) { - } - try { writer.close(); } catch (IOException e) { + // IGNORE } } } - } -- Gitblit v1.9.1