Tidied up test class
parent
9e6a290f63
commit
e17db7a15b
@ -0,0 +1,72 @@
|
||||
/*
|
||||
* Copyright (c) 2004-2013 Stuart Boston
|
||||
*
|
||||
* This file is part of the FanartTV API.
|
||||
*
|
||||
* The FanartTV API is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* any later version.
|
||||
*
|
||||
* The FanartTV API is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with the FanartTV API. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
package com.omertron.themoviedbapi;
|
||||
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.util.logging.LogManager;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
public class TestLogger {
|
||||
|
||||
private static final Logger LOG = LoggerFactory.getLogger(TestLogger.class);
|
||||
private static final String CRLF = "\n";
|
||||
|
||||
private TestLogger() {
|
||||
throw new UnsupportedOperationException("Class can not be instantiated");
|
||||
}
|
||||
|
||||
/**
|
||||
* Configure the logger with a simple in-memory file for the required log level
|
||||
*
|
||||
* @param level The logging level required
|
||||
* @return True if successful
|
||||
*/
|
||||
public static boolean Configure(String level) {
|
||||
StringBuilder config = new StringBuilder("handlers = java.util.logging.ConsoleHandler\n");
|
||||
config.append(".level = ").append(level).append(CRLF);
|
||||
config.append("java.util.logging.ConsoleHandler.level = ").append(level).append(CRLF);
|
||||
// Only works with Java 7 or later
|
||||
config.append("java.util.logging.SimpleFormatter.format = [%1$tc %4$s] %2$s - %5$s %6$s%n").append(CRLF);
|
||||
// Exclude http logging
|
||||
config.append("sun.net.www.protocol.http.HttpURLConnection.level = OFF").append(CRLF);
|
||||
|
||||
InputStream ins = new ByteArrayInputStream(config.toString().getBytes());
|
||||
try {
|
||||
LogManager.getLogManager().readConfiguration(ins);
|
||||
} catch (IOException e) {
|
||||
LOG.warn("Failed to configure log manager due to an IO problem", e);
|
||||
return Boolean.FALSE;
|
||||
}
|
||||
LOG.debug("Logger initialized to '{}' level", level);
|
||||
return Boolean.TRUE;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the logging level to "ALL"
|
||||
*
|
||||
* @return True if successful
|
||||
*/
|
||||
public static boolean Configure() {
|
||||
return Configure("ALL");
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue