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

Christian Bauer christian.bauer at jboss.com
Thu Feb 1 02:08:26 EST 2007


  User: cbauer  
  Date: 07/02/01 02:08:26

  Added:       examples/wiki/src/org/jboss/seam/wiki/core/ui 
                        UIWikiFormattedText.java
  Log:
  Committed first (broken) wiki implementation
  
  Revision  Changes    Path
  1.1      date: 2007/02/01 07:08:26;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/src/org/jboss/seam/wiki/core/ui/UIWikiFormattedText.java
  
  Index: UIWikiFormattedText.java
  ===================================================================
  package org.jboss.seam.wiki.core.ui;
  
  import java.io.IOException;
  import java.io.Reader;
  import java.io.StringReader;
  
  import javax.faces.component.UIOutput;
  import javax.faces.context.FacesContext;
  
  import org.jboss.seam.text.SeamTextLexer;
  import org.jboss.seam.text.SeamTextParser;
  import org.jboss.seam.wiki.core.links.WikiTextParser;
  
  import antlr.ANTLRException;
  
  public class UIWikiFormattedText extends UIOutput {
      public static final String COMPONENT_FAMILY = "org.jboss.seam.wiki.core.ui.WikiFormattedText";
  
      @Override
      public String getFamily() {
          return COMPONENT_FAMILY;
      }
  
      @Override
      public void encodeBegin(FacesContext context) throws IOException {
  
          if (!isRendered() || getValue() == null) return;
          Reader r = new StringReader((String) getValue());
          SeamTextLexer lexer = new SeamTextLexer(r);
  
          // Use the WikiTextParser to resolve links
          SeamTextParser parser = new WikiTextParser(lexer, "", "");
  //        SeamTextParser parser = new SeamTextParser(lexer);
  
          try {
              parser.startRule();
          }
          catch (ANTLRException re) {
              throw new RuntimeException(re);
          }
          context.getResponseWriter().write(parser.toString());
      }
  
  
  }
  
  
  



More information about the jboss-cvs-commits mailing list