// Jericho HTML Parser - Java based library for analysing and manipulating HTML // Version 3.2 // Copyright (C) 2004-2009 Martin Jericho // http://jericho.htmlparser.net/ // // This library is free software; you can redistribute it and/or // modify it under the terms of either one of the following licences: // // 1. The Eclipse Public License (EPL) version 1.0, // included in this distribution in the file licence-epl-1.0.html // or available at http://www.eclipse.org/legal/epl-v10.html // // 2. The GNU Lesser General Public License (LGPL) version 2.1 or later, // included in this distribution in the file licence-lgpl-2.1.txt // or available at http://www.gnu.org/licenses/lgpl.txt // // This library is distributed on an "AS IS" basis, // WITHOUT WARRANTY OF ANY KIND, either express or implied. // See the individual licence texts for more details. package net.htmlparser.jericho; import java.io.*; import java.util.Queue; import java.util.LinkedList; class LoggerQueue implements Logger { private static final String ERROR="ERROR"; private static final String WARN="WARN"; private static final String INFO="INFO"; private static final String DEBUG="DEBUG"; private final Queue<String[]> queue=new LinkedList<String[]>(); public void error(final String message) { queue.add(new String[] {ERROR,message}); } public void warn(final String message) { queue.add(new String[] {WARN,message}); } public void info(final String message) { queue.add(new String[] {INFO,message}); } public void debug(final String message) { queue.add(new String[] {DEBUG,message}); } public boolean isErrorEnabled() { return true; } public void setErrorEnabled(final boolean errorEnabled) { throw new UnsupportedOperationException(); } public boolean isWarnEnabled() { return true; } public void setWarnEnabled(final boolean warnEnabled) { throw new UnsupportedOperationException(); } public boolean isInfoEnabled() { return true; } public void setInfoEnabled(final boolean infoEnabled) { throw new UnsupportedOperationException(); } public boolean isDebugEnabled() { return true; } public void setDebugEnabled(final boolean debugEnabled) { throw new UnsupportedOperationException(); } public void outputTo(Logger logger) { while (true) { String[] item=queue.poll(); if (item==null) return; String level=item[0]; String message=item[1]; if (level==ERROR) logger.error(message); else if (level==WARN) logger.warn(message); else if (level==INFO) logger.info(message); else if (level==DEBUG) logger.debug(message); } } }