1 package org.jahia.clipbuilder.html.web.html.Impl.HTMLParser; 2 import org.jahia.clipbuilder.html.bean.*; 3 import org.jahia.clipbuilder.html.web.Constant.*; 4 import org.jahia.clipbuilder.html.web.html.Impl.*; 5 import org.htmlparser.*; 6 import org.htmlparser.tags.*; 7 import org.htmlparser.util.*; 8 import org.jahia.clipbuilder.html.web.HTMLDocumentBuilder; 9 10 15 public class HTMLParserTransformer extends DefaultHTMLTransformer { 16 private HTMLParserDocument document; 17 private static org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger(HTMLParserTransformer.class); 18 19 20 27 public HTMLParserTransformer(HTMLDocumentBuilder builder, HTMLParserDocument document, boolean enableCSS) { 28 super(builder, enableCSS); 29 setDocument(document); 30 } 31 32 33 38 public void setDocument(HTMLParserDocument document) { 39 this.document = document; 40 } 41 42 43 44 45 50 public UrlBean getUrlBean() { 51 return getDocument().getUrlBean(); 52 } 53 54 55 60 public HTMLParserDocument getDocument() { 61 return document; 62 } 63 64 65 66 67 72 public void buildChewDocument(String tagName) { 73 logger.debug("build chew document"); 74 getDocument().setChewDocument("<p> Method not yet implemented !!!</p>"); 75 ChewBuilderVisitor visitor = new ChewBuilderVisitor(this, tagName); 76 try { 77 Parser parser = ParserUtils.createParserParsingAnInputString(getDocument().getTransformedDocumentAsString()); 78 parser.visitAllNodesWith(visitor); 79 String chew = visitor.getFirstNode().toHtml(); 80 getDocument().setChewDocument(chew); 81 } 82 catch (Exception ex) { 83 ex.printStackTrace(); 84 logger.error("buldKeySelectedPart error " + ex.getMessage()); 85 } 86 87 } 88 89 90 93 public void buildDocumentWhithLabel() { 94 LabelBuilderVisitor visitor = new LabelBuilderVisitor(this); 95 try { 96 Parser parser = ParserUtils.createParserParsingAnInputString(getDocument().getTransformedDocumentAsString()); 97 98 parser.visitAllNodesWith(visitor); 99 String html = visitor.getFirstNode().toHtml(); 100 getDocument().setDocumentWhithLabel(html); 101 } 102 catch (Exception ex) { 103 ex.printStackTrace(); 104 logger.error("buldKeySelectedPart error " + ex.getMessage()); 105 } 106 107 } 108 109 110 114 public void buildTransformedDocument() { 115 try { 116 Parser parser = ParserUtils.createParserParsingAnInputString(getDocument().getOriginalDocumentAsString()); 117 TransformBuilderVisitor visitor = new TransformBuilderVisitor(this); 118 parser.visitAllNodesWith(visitor); 119 String transformedHTML = visitor.getFirstNode().toHtml(); 120 getDocument().setTransformedDocument(transformedHTML); 121 122 } 123 catch (Exception ex) { 124 ex.printStackTrace(); 125 logger.error("buldKeySelectedPart error " + ex.getMessage()); 126 } 127 128 } 129 130 131 134 public void buildUserDocument() { 135 UserBuilderVisitor visitor = new UserBuilderVisitor(this); 136 try { 137 Parser parser = ParserUtils.createParserParsingAnInputString(getDocument().getOriginalDocumentAsString()); 138 parser.visitAllNodesWith(visitor); 139 String userHTML = visitor.getFirstNode().toHtml(); 140 getDocument().setUserDocument(userHTML); 141 } 142 catch (Exception ex) { 143 ex.printStackTrace(); 144 logger.error("buldKeySelectedPart error " + ex.getMessage()); 145 } 146 147 } 148 149 } 150 | Popular Tags |