[jboss-cvs] jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/core/engine ...

Christian Bauer christian at hibernate.org
Mon Nov 12 06:14:29 EST 2007


  User: cbauer  
  Date: 07/11/12 06:14:29

  Modified:    examples/wiki/src/main/org/jboss/seam/wiki/core/engine    
                        WikiTextParser.java WikiTextRenderer.java
  Added:       examples/wiki/src/main/org/jboss/seam/wiki/core/engine    
                        NullWikiTextRenderer.java
                        DefaultWikiTextRenderer.java
  Log:
  Improved extensibility of core wiki render engine
  
  Revision  Changes    Path
  1.10      +43 -0     jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/core/engine/WikiTextParser.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: WikiTextParser.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/core/engine/WikiTextParser.java,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -b -r1.9 -r1.10
  --- WikiTextParser.java	26 Sep 2007 09:36:18 -0000	1.9
  +++ WikiTextParser.java	12 Nov 2007 11:14:29 -0000	1.10
  @@ -52,6 +52,7 @@
           this.renderDuplicateMacros = renderDuplicateMacros;
           this.resolveLinks = resolveLinks;
       }
  +
       /**
        * Mandatory, you need to set a renderer before starting the parer.
        *
  @@ -182,5 +183,47 @@
           }
       }
   
  +    protected String paragraphOpenTag() {
  +        return renderer.renderParagraphOpenTag();
  +    }
  +
  +    protected String preformattedOpenTag() {
  +        return renderer.renderPreformattedOpenTag();
  +    }
  +
  +    protected String blockquoteOpenTag() {
  +        return renderer.renderBlockquoteOpenTag();
  +    }
   
  +    protected String headline1OpenTag() {
  +        return renderer.renderHeadline1Opentag();
  +    }
  +
  +    protected String headline2OpenTag() {
  +        return renderer.renderHeadline2OpenTag();
  +    }
  +
  +    protected String headline3OpenTag() {
  +        return renderer.renderHeadline3OpenTag();
  +    }
  +
  +    protected String headline4OpenTag() {
  +        return renderer.renderHeadline4OpenTag();
  +    }
  +
  +    protected String orderedListOpenTag() {
  +        return renderer.renderOrderedListOpenTag();
  +    }
  +
  +    protected String orderedListItemOpenTag() {
  +        return renderer.renderOrderedListItemOpenTag();
  +    }
  +
  +    protected String unorderedListOpenTag() {
  +        return renderer.renderUnorderedListOpenTag();
  +    }
  +
  +    protected String unorderedListItemOpenTag() {
  +        return renderer.renderUnorderedListItemOpenTag();
  +    }
   }
  
  
  
  1.4       +12 -0     jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/core/engine/WikiTextRenderer.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: WikiTextRenderer.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/core/engine/WikiTextRenderer.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -b -r1.3 -r1.4
  --- WikiTextRenderer.java	5 Apr 2007 13:04:14 -0000	1.3
  +++ WikiTextRenderer.java	12 Nov 2007 11:14:29 -0000	1.4
  @@ -15,6 +15,18 @@
       public String renderFileAttachmentLink(int attachmentNumber, WikiLink attachmentLink);
       public String renderMacro(String macroName);
   
  +    public String renderParagraphOpenTag();
  +    public String renderPreformattedOpenTag();
  +    public String renderBlockquoteOpenTag();
  +    public String renderHeadline1Opentag();
  +    public String renderHeadline2OpenTag();
  +    public String renderHeadline3OpenTag();
  +    public String renderHeadline4OpenTag();
  +    public String renderOrderedListOpenTag();
  +    public String renderOrderedListItemOpenTag();
  +    public String renderUnorderedListOpenTag();
  +    public String renderUnorderedListItemOpenTag();
  +
       public void setAttachmentLinks(List<WikiLink> attachmentLinks);
       public void setExternalLinks(List<WikiLink> externalLinks);
   }
  
  
  
  1.1      date: 2007/11/12 11:14:29;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/core/engine/NullWikiTextRenderer.java
  
  Index: NullWikiTextRenderer.java
  ===================================================================
  package org.jboss.seam.wiki.core.engine;
  
  import java.util.List;
  
  /**
   * Renders nothing for links and macros and unstyled HTML for anything else.
   *
   * @author Christian Bauer
   */
  public class NullWikiTextRenderer implements WikiTextRenderer {
  
      public String renderInlineLink(WikiLink inlineLink) { return null; }
      public String renderExternalLink(WikiLink externalLink) { return null; }
      public String renderFileAttachmentLink(int attachmentNumber, WikiLink attachmentLink) { return null; }
      public String renderThumbnailImageInlineLink(WikiLink inlineLink) { return null; }
      public void setAttachmentLinks(List<WikiLink> attachmentLinks) {}
      public void setExternalLinks(List<WikiLink> externalLinks) {}
      public String renderMacro(String macroName) { return null; }
      public String renderParagraphOpenTag() { return "<p>\n"; }
      public String renderPreformattedOpenTag() { return "<pre>\n"; }
      public String renderBlockquoteOpenTag() { return "<blockquote>\n"; }
      public String renderHeadline1Opentag() { return "<h1>"; }
      public String renderHeadline2OpenTag() { return "<h2>"; }
      public String renderHeadline3OpenTag() { return "<h3>"; }
      public String renderHeadline4OpenTag() { return "<h4>"; }
      public String renderOrderedListOpenTag() { return "<ol>\n"; }
      public String renderOrderedListItemOpenTag() { return "<li>"; }
      public String renderUnorderedListOpenTag() { return "<ul>\n"; }
      public String renderUnorderedListItemOpenTag() { return "<li>"; }
  }
  
  
  
  1.1      date: 2007/11/12 11:14:29;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/core/engine/DefaultWikiTextRenderer.java
  
  Index: DefaultWikiTextRenderer.java
  ===================================================================
  package org.jboss.seam.wiki.core.engine;
  
  import org.jboss.seam.wiki.util.WikiUtil;
  
  import java.util.List;
  
  /**
   * Convenience class that renders some sensible defaults that apply for the wiki.
   *
   * @author Christian Bauer
   */
  public class DefaultWikiTextRenderer implements WikiTextRenderer {
  
      public String renderInlineLink(WikiLink inlineLink) {
          return !inlineLink.isBroken() ?
                  "<a href=\""
                  + WikiUtil.renderURL(inlineLink.getNode(), null)
                  + "\">"
                  + inlineLink.getDescription()
                  + "</a>" : "[Broken Link]";
      }
  
      public String renderExternalLink(WikiLink externalLink) {
          return "<a href=\""
                  + externalLink.getUrl()
                  + "\">"
                  + externalLink.getDescription()
                  + "</a>";
      }
  
      public String renderFileAttachmentLink(int attachmentNumber, WikiLink attachmentLink) {
          return "[Attachment]";
      }
  
      public String renderThumbnailImageInlineLink(WikiLink inlineLink) {
          return "[Embedded Image]";
      }
  
      public String renderMacro(String macroName) {
          return "[Macro]";
      }
  
      public void setAttachmentLinks(List<WikiLink> attachmentLinks) {}
      public void setExternalLinks(List<WikiLink> externalLinks) {}
  
      public String renderParagraphOpenTag() {
          return "<p class=\"wikiPara\">\n";
      }
  
      public String renderPreformattedOpenTag() {
          return "<pre class=\"wikiPreformatted\">\n";
      }
  
      public String renderBlockquoteOpenTag() {
          return "<blockquote class=\"wikiBlockquote\">\n";
      }
  
      public String renderHeadline1Opentag() {
          return "<h1 class=\"wikiHeadline1\">";
      }
  
      public String renderHeadline2OpenTag() {
          return "<h1 class=\"wikiHeadline2\">";
      }
  
      public String renderHeadline3OpenTag() {
          return "<h1 class=\"wikiHeadline3\">";
      }
  
      public String renderHeadline4OpenTag() {
          return "<h1 class=\"wikiHeadline4\">";
      }
  
      public String renderOrderedListOpenTag() {
          return "<ol class=\"wikiOrderedList\">\n";
      }
  
      public String renderOrderedListItemOpenTag() {
          return "<ol class=\"wikiOrderedListItem\">";
      }
  
      public String renderUnorderedListOpenTag() {
          return "<ul class=\"wikiUnorderedList\">\n";
      }
  
      public String renderUnorderedListItemOpenTag() {
          return "<ul class=\"wikiUnorderedListItem\">";
      }
  }
  
  
  



More information about the jboss-cvs-commits mailing list