/** * Sets the {@link Logger} that handles log messages. * <p> * Specifying a <code>null</code> argument disables logging completely for operations performed on this <code>StreamedSource</code> object. * <p> * A logger instance is created automatically for each <code>StreamedSource</code> object in the same way as is described in the * {@link Source#setLogger(Logger)} method. * * @param logger the logger that will handle log messages, or <code>null</code> to disable logging. * @see Config#LoggerProvider */ public void setLogger(final Logger logger) { source.setLogger(logger); }
Source(final CharSequence sourceText, final boolean CHARACTER_REFERENCE_PARSE_METHOD) { super(sourceText.length()); this.sourceText=sourceText; cache=null; useAllTypesCache=false; useSpecialTypesCache=false; setLogger(LoggerDisabled.INSTANCE); }
/** * Constructs a new <code>Source</code> object from the specified text. * @param text the source text. */ public Source(final CharSequence text) { super(text.length()); sourceText=text.toString(); setLogger(newLogger()); cache=new Cache(this); }
public CFMLSource(URL url) throws IOException { CFMLTags.register(); fSource = new Source(url); // fSource.ignoreWhenParsing(fSource.getAllElements(CFMLTags.CFML_CONTENT)); fSource.setLogger(this); }
public CFMLSource(String contents, ParserPreferences prefs) { CFMLTags.register(prefs); fSource = new Source(contents); // fSource.ignoreWhenParsing(fSource.getAllElements(CFMLTags.CFML_CONTENT)); fSource.setLogger(this); }
Source(final CharSequence sourceText, final StreamedParseText streamedParseText, final String encoding, final String encodingSpecificationInfo, final String preliminaryEncodingInfo) { super(streamedParseText.getEnd()); // normally Integer.MAX_VALUE unless called from StreamedSource(CharSequence) cache=Cache.STREAMED_SOURCE_MARKER; useAllTypesCache=false; useSpecialTypesCache=false; fullSequentialParseData=new int[1]; if (encoding!=null) this.encoding=encoding; this.encodingSpecificationInfo=encodingSpecificationInfo; this.preliminaryEncodingInfo=preliminaryEncodingInfo; this.sourceText=sourceText; parseText=streamedParseText; setLogger(newLogger()); }
public CFMLSource(URL url, ParserPreferences prefs) throws IOException { CFMLTags.register(prefs); fSource = new Source(url); // fSource.ignoreWhenParsing(fSource.getAllElements(CFMLTags.CFML_CONTENT)); fSource.setLogger(this); }
public CFMLSource(String contents) { CFMLTags.register(); if (contents != null && contents.contains("<!---")) { fSource = new Source(contents); } else { fSource = new Source(contents); } // fSource.ignoreWhenParsing(fSource.getAllElements(CFMLTags.CFML_CONTENT)); // fSource.ignoreWhenParsing(fSource.getAllElements(CFMLTags.CFML_COMMENT)); fSource.setLogger(this); }
@Override public void parse(URL url, Reader reader, IHtmlCallback callback, String fileName) throws TranslatorToCAst.Error { warnings.clear(); Parser parser = new Parser(callback, fileName); Source src; try { src = new Source(reader); src.setLogger(Config.LoggerProvider.getLogger(fileName)); List<Element> childElements = src.getChildElements(); for (Element e : childElements) { parser.parse(e); } if (! warnings.isEmpty()) { throw new TranslatorToCAst.Error(warnings); } } catch (IOException e) { System.err.println("Error parsing file: " + e.getMessage()); } } /**
@Override public void parse(URL url, Reader reader, IHtmlCallback callback, String fileName) throws TranslatorToCAst.Error { warnings.clear(); Parser parser = new Parser(callback, fileName); Source src; try { src = new Source(reader); src.setLogger(Config.LoggerProvider.getLogger(fileName)); List<Element> childElements = src.getChildElements(); for (Element e : childElements) { parser.parse(e); } if (! warnings.isEmpty()) { throw new TranslatorToCAst.Error(warnings); } } catch (IOException e) { System.err.println("Error parsing file: " + e.getMessage()); } } /**
sourceHtml.setLogger(null); sourceHtml.fullSequentialParse(); List<Tag> tags = sourceHtml.getAllTags();
@Override public String filter(String source, Map<String, Object> properties) { Source sourceHtml = new Source(source); sourceHtml.setLogger(null); sourceHtml.fullSequentialParse(); OutputDocument outputDocument = new OutputDocument(sourceHtml); List<Tag> tags = sourceHtml.getAllTags(); int pos = 0; for (Tag tag : tags) { boolean correctAndAllowedTag = processTag(tag, outputDocument); if (!correctAndAllowedTag) { String elementName = tag.getName().toLowerCase(); if (removedTags.contains(elementName) || allowedTags.contains(elementName)) { outputDocument.remove(tag); } else { outputDocument.replace(tag, StringEscapeUtils.escapeHtml(tag.toString())); } } reencodeTextSegment(sourceHtml, outputDocument, pos, tag.getBegin()); pos = tag.getEnd(); } reencodeTextSegment(sourceHtml, outputDocument, pos, sourceHtml.getEnd()); return correctNewLineSigns(outputDocument.toString(), properties); }
@Override public String filter(String source, Map<String, Object> properties) { Source sourceHtml = new Source(source); sourceHtml.setLogger(null); OutputDocument outputDocument = new OutputDocument(sourceHtml); List<StartTag> tags = sourceHtml.getAllStartTags(FORMULA_TAG_NAME);
inputStream.reset(); previewSource.setLogger(null); if (preliminaryEncoding!=safePreliminaryEncoding && logger.isWarnEnabled()) logger.warn("Alternative encoding "+safePreliminaryEncoding+" substituted for unsupported preliminary encoding "+preliminaryEncoding+": "+preliminaryEncodingSpecificationInfo);