org.apache.log4j.LogMF Maven / Gradle / Ivy
The newest version!
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.log4j;
import org.apache.log4j.spi.LoggingEvent;
import java.text.DateFormat;
import java.text.MessageFormat;
import java.text.NumberFormat;
import java.util.Date;
import java.util.ResourceBundle;
import java.util.Locale;
/**
* This class provides parameterized logging services
* using the pattern syntax of java.text.MessageFormat.
* Message formatting is only performed when the
* request exceeds the threshold level of the logger.
* When the pattern only contains literal text and
* default conversion patterns (that is "{0}" and similar)
* a simple fast compatible formatter is used.
* If the pattern contains more complex conversion patterns,
* formatting will be delegated to java.text.MessageFormatter
* which can be substantially slower.
*
* @see org.apache.log4j.LogSF
* @since 1.2.16
*
*/
public final class LogMF extends LogXF {
/**
* private constructor.
*
*/
private LogMF() {
}
/**
* Number format.
*/
private static NumberFormat numberFormat = null;
/**
* Locale at time of last number format request.
*/
private static Locale numberLocale = null;
/**
* Date format.
*/
private static DateFormat dateFormat = null;
/**
* Locale at time of last date format request.
*/
private static Locale dateLocale = null;
/**
* Format number.
* @param n number to format, may not be null.
* @return formatted value.
*/
private static synchronized String formatNumber(final Object n) {
Locale currentLocale = Locale.getDefault();
if (currentLocale != numberLocale || numberFormat == null) {
numberLocale = currentLocale;
numberFormat = NumberFormat.getInstance(currentLocale);
}
return numberFormat.format(n);
}
/**
* Format date.
* @param d date, may not be null.
* @return formatted value.
*/
private static synchronized String formatDate(final Object d) {
Locale currentLocale = Locale.getDefault();
if (currentLocale != dateLocale || dateFormat == null) {
dateLocale = currentLocale;
dateFormat = DateFormat.getDateTimeInstance(
DateFormat.SHORT,
DateFormat.SHORT,
currentLocale);
}
return dateFormat.format(d);
}
/**
* Format a single parameter like a "{0}" formatting specifier.
*
* @param arg0 parameter, may be null.
* @return string representation of arg0.
*/
private static String formatObject(final Object arg0) {
if (arg0 instanceof String) {
return arg0.toString();
} else if (arg0 instanceof Double ||
arg0 instanceof Float) {
return formatNumber(arg0);
} else if (arg0 instanceof Date) {
return formatDate(arg0);
}
return String.valueOf(arg0);
}
/**
* Determines if pattern contains only {n} format elements
* and not apostrophes.
*
* @param pattern pattern, may not be null.
* @return true if pattern only contains {n} format elements.
*/
private static boolean isSimple(final String pattern) {
if (pattern.indexOf('\'') != -1) {
return false;
}
for(int pos = pattern.indexOf('{');
pos != -1;
pos = pattern.indexOf('{', pos + 1)) {
if (pos + 2 >= pattern.length() ||
pattern.charAt(pos+2) != '}' ||
pattern.charAt(pos+1) < '0' ||
pattern.charAt(pos+1) > '9') {
return false;
}
}
return true;
}
/**
* Formats arguments using MessageFormat.
* @param pattern pattern, may be malformed or null.
* @param arguments arguments, may be null or mismatched.
* @return Message string or null
*/
private static String format(final String pattern,
final Object[] arguments) {
if (pattern == null) {
return null;
} else if(isSimple(pattern)) {
String formatted[] = new String[10];
int prev = 0;
String retval = "";
int pos = pattern.indexOf('{');
while(pos >= 0) {
if(pos + 2 < pattern.length() &&
pattern.charAt(pos+2) == '}' &&
pattern.charAt(pos+1) >= '0' &&
pattern.charAt(pos+1) <= '9') {
int index = pattern.charAt(pos+1) - '0';
retval += pattern.substring(prev, pos);
if (formatted[index] == null) {
if (arguments == null || index >= arguments.length) {
formatted[index] = pattern.substring(pos, pos+3);
} else {
formatted[index] = formatObject(arguments[index]);
}
}
retval += formatted[index];
prev = pos + 3;
pos = pattern.indexOf('{', prev);
} else {
pos = pattern.indexOf('{', pos + 1);
}
}
retval += pattern.substring(prev);
return retval;
}
try {
return MessageFormat.format(pattern, arguments);
} catch (IllegalArgumentException ex) {
return pattern;
}
}
/**
* Formats a single argument using MessageFormat.
* @param pattern pattern, may be malformed or null.
* @param arguments arguments, may be null or mismatched.
* @return Message string or null
*/
private static String format(final String pattern,
final Object arg0) {
if (pattern == null) {
return null;
} else if(isSimple(pattern)) {
String formatted = null;
int prev = 0;
String retval = "";
int pos = pattern.indexOf('{');
while(pos >= 0) {
if(pos + 2 < pattern.length() &&
pattern.charAt(pos+2) == '}' &&
pattern.charAt(pos+1) >= '0' &&
pattern.charAt(pos+1) <= '9') {
int index = pattern.charAt(pos+1) - '0';
retval += pattern.substring(prev, pos);
if (index != 0) {
retval += pattern.substring(pos, pos+3);
} else {
if (formatted == null) {
formatted = formatObject(arg0);
}
retval += formatted;
}
prev = pos + 3;
pos = pattern.indexOf('{', prev);
} else {
pos = pattern.indexOf('{', pos + 1);
}
}
retval += pattern.substring(prev);
return retval;
}
try {
return MessageFormat.format(pattern, new Object[] { arg0 });
} catch (IllegalArgumentException ex) {
return pattern;
}
}
/**
* Formats arguments using MessageFormat using a pattern from
* a resource bundle.
* @param resourceBundleName name of resource bundle, may be null.
* @param key key for pattern in resource bundle, may be null.
* @param arguments arguments, may be null or mismatched.
* @return Message string or null
*/
private static String format(
final String resourceBundleName,
final String key,
final Object[] arguments) {
String pattern;
if (resourceBundleName != null) {
try {
ResourceBundle bundle =
ResourceBundle.getBundle(resourceBundleName);
pattern = bundle.getString(key);
} catch (Exception ex) {
pattern = key;
}
} else {
pattern = key;
}
return format(pattern, arguments);
}
/**
* Fully Qualified Class Name of this class.
*/
private static final String FQCN = LogMF.class.getName();
/**
* Equivalent of Logger.forcedLog.
*
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param msg message, may be null.
*/
private static void forcedLog(final Logger logger,
final Level level,
final String msg) {
logger.callAppenders(new LoggingEvent(FQCN, logger, level, msg, null));
}
/**
* Equivalent of Logger.forcedLog.
*
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param msg message, may be null.
* @param t throwable.
*/
private static void forcedLog(final Logger logger,
final Level level,
final String msg,
final Throwable t) {
logger.callAppenders(new LoggingEvent(FQCN, logger, level, msg, t));
}
/**
* Log a parameterized message at trace level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param arguments an array of arguments to be
* formatted and substituted.
*/
public static void trace(final Logger logger, final String pattern,
final Object[] arguments) {
if (logger.isEnabledFor(TRACE)) {
forcedLog(logger, TRACE, format(pattern, arguments));
}
}
/**
* Log a parameterized message at debug level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param arguments an array of arguments to be formatted and substituted.
*/
public static void debug(final Logger logger, final String pattern,
final Object[] arguments) {
if (logger.isDebugEnabled()) {
forcedLog(logger, Level.DEBUG, format(pattern, arguments));
}
}
/**
* Log a parameterized message at info level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param arguments an array of arguments to be formatted and substituted.
*/
public static void info(final Logger logger, final String pattern,
final Object[] arguments) {
if (logger.isInfoEnabled()) {
forcedLog(logger, Level.INFO, format(pattern, arguments));
}
}
/**
* Log a parameterized message at warn level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param arguments an array of arguments to be formatted and substituted.
*/
public static void warn(final Logger logger, final String pattern,
final Object[] arguments) {
if (logger.isEnabledFor(Level.WARN)) {
forcedLog(logger, Level.WARN, format(pattern, arguments));
}
}
/**
* Log a parameterized message at error level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param arguments an array of arguments to be formatted and substituted.
*/
public static void error(final Logger logger, final String pattern,
final Object[] arguments) {
if (logger.isEnabledFor(Level.ERROR)) {
forcedLog(logger, Level.ERROR, format(pattern, arguments));
}
}
/**
* Log a parameterized message at fatal level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param arguments an array of arguments to be formatted and substituted.
*/
public static void fatal(final Logger logger, final String pattern,
final Object[] arguments) {
if (logger.isEnabledFor(Level.FATAL)) {
forcedLog(logger, Level.FATAL, format(pattern, arguments));
}
}
/**
* Log a parameterized message at trace level.
* @param logger logger, may not be null.
* @param t throwable, may be null.
* @param pattern pattern, may be null.
* @param arguments an array of arguments to be
* formatted and substituted.
*/
public static void trace(final Logger logger,
final Throwable t,
final String pattern,
final Object[] arguments) {
if (logger.isEnabledFor(TRACE)) {
forcedLog(logger, TRACE, format(pattern, arguments), t);
}
}
/**
* Log a parameterized message at debug level.
* @param logger logger, may not be null.
* @param t throwable, may be null.
* @param pattern pattern, may be null.
* @param arguments an array of arguments to be formatted and substituted.
*/
public static void debug(final Logger logger,
final Throwable t,
final String pattern,
final Object[] arguments) {
if (logger.isDebugEnabled()) {
forcedLog(logger, Level.DEBUG, format(pattern, arguments), t);
}
}
/**
* Log a parameterized message at info level.
* @param logger logger, may not be null.
* @param t throwable, may be null.
* @param pattern pattern, may be null.
* @param arguments an array of arguments to be formatted and substituted.
*/
public static void info(final Logger logger,
final Throwable t,
final String pattern,
final Object[] arguments) {
if (logger.isInfoEnabled()) {
forcedLog(logger, Level.INFO, format(pattern, arguments), t);
}
}
/**
* Log a parameterized message at warn level.
* @param logger logger, may not be null.
* @param t throwable, may be null.
* @param pattern pattern, may be null.
* @param arguments an array of arguments to be formatted and substituted.
*/
public static void warn(final Logger logger,
final Throwable t,
final String pattern,
final Object[] arguments) {
if (logger.isEnabledFor(Level.WARN)) {
forcedLog(logger, Level.WARN, format(pattern, arguments), t);
}
}
/**
* Log a parameterized message at error level.
* @param logger logger, may not be null.
* @param t throwable, may be null.
* @param pattern pattern, may be null.
* @param arguments an array of arguments to be formatted and substituted.
*/
public static void error(final Logger logger,
final Throwable t,
final String pattern,
final Object[] arguments) {
if (logger.isEnabledFor(Level.ERROR)) {
forcedLog(logger, Level.ERROR, format(pattern, arguments), t);
}
}
/**
* Log a parameterized message at fatal level.
* @param logger logger, may not be null.
* @param t throwable, may be null.
* @param pattern pattern, may be null.
* @param arguments an array of arguments to be formatted and substituted.
*/
public static void fatal(final Logger logger,
final Throwable t,
final String pattern,
final Object[] arguments) {
if (logger.isEnabledFor(Level.FATAL)) {
forcedLog(logger, Level.FATAL, format(pattern, arguments), t);
}
}
/**
* Log a parameterized message at trace level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void trace(final Logger logger, final String pattern,
final boolean argument) {
if (logger.isEnabledFor(TRACE)) {
forcedLog(logger, TRACE, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at trace level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void trace(final Logger logger, final String pattern,
final char argument) {
if (logger.isEnabledFor(TRACE)) {
forcedLog(logger, TRACE, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at trace level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void trace(final Logger logger, final String pattern,
final byte argument) {
if (logger.isEnabledFor(TRACE)) {
forcedLog(logger, TRACE, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at trace level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void trace(final Logger logger, final String pattern,
final short argument) {
if (logger.isEnabledFor(TRACE)) {
forcedLog(logger, TRACE, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at trace level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void trace(final Logger logger, final String pattern,
final int argument) {
if (logger.isEnabledFor(TRACE)) {
forcedLog(logger, TRACE, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at trace level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void trace(final Logger logger, final String pattern,
final long argument) {
if (logger.isEnabledFor(TRACE)) {
forcedLog(logger, TRACE, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at trace level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void trace(final Logger logger, final String pattern,
final float argument) {
if (logger.isEnabledFor(TRACE)) {
forcedLog(logger, TRACE, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at trace level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void trace(final Logger logger, final String pattern,
final double argument) {
if (logger.isEnabledFor(TRACE)) {
forcedLog(logger, TRACE, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at trace level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void trace(final Logger logger, final String pattern,
final Object argument) {
if (logger.isEnabledFor(TRACE)) {
forcedLog(logger, TRACE, format(pattern, argument));
}
}
/**
* Log a parameterized message at trace level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param arg0 a value to be formatted and substituted.
* @param arg1 a value to be formatted and substituted.
*/
public static void trace(final Logger logger, final String pattern,
final Object arg0, final Object arg1) {
if (logger.isEnabledFor(TRACE)) {
forcedLog(logger, TRACE,
format(pattern, toArray(arg0, arg1)));
}
}
/**
* Log a parameterized message at trace level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param arg0 a value to be formatted and substituted.
* @param arg1 a value to be formatted and substituted.
* @param arg2 a value to be formatted and substituted.
*/
public static void trace(final Logger logger, final String pattern,
final Object arg0, final Object arg1, final Object arg2) {
if (logger.isEnabledFor(TRACE)) {
forcedLog(logger, TRACE,
format(pattern, toArray(arg0, arg1, arg2)));
}
}
/**
* Log a parameterized message at trace level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param arg0 a value to be formatted and substituted.
* @param arg1 a value to be formatted and substituted.
* @param arg2 a value to be formatted and substituted.
* @param arg3 a value to be formatted and substituted.
*/
public static void trace(final Logger logger, final String pattern,
final Object arg0, final Object arg1, final Object arg2,
final Object arg3) {
if (logger.isEnabledFor(TRACE)) {
forcedLog(logger, TRACE,
format(pattern, toArray(arg0, arg1, arg2, arg3)));
}
}
/**
* Log a parameterized message at debug level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void debug(final Logger logger, final String pattern,
final boolean argument) {
if (logger.isDebugEnabled()) {
forcedLog(logger, Level.DEBUG, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at debug level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void debug(final Logger logger, final String pattern,
final char argument) {
if (logger.isDebugEnabled()) {
forcedLog(logger, Level.DEBUG, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at debug level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void debug(final Logger logger, final String pattern,
final byte argument) {
if (logger.isDebugEnabled()) {
forcedLog(logger, Level.DEBUG, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at debug level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void debug(final Logger logger, final String pattern,
final short argument) {
if (logger.isDebugEnabled()) {
forcedLog(logger, Level.DEBUG, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at debug level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void debug(final Logger logger, final String pattern,
final int argument) {
if (logger.isDebugEnabled()) {
forcedLog(logger, Level.DEBUG, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at debug level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void debug(final Logger logger, final String pattern,
final long argument) {
if (logger.isDebugEnabled()) {
forcedLog(logger, Level.DEBUG, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at debug level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void debug(final Logger logger, final String pattern,
final float argument) {
if (logger.isDebugEnabled()) {
forcedLog(logger, Level.DEBUG, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at debug level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void debug(final Logger logger, final String pattern,
final double argument) {
if (logger.isDebugEnabled()) {
forcedLog(logger, Level.DEBUG, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at debug level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void debug(final Logger logger, final String pattern,
final Object argument) {
if (logger.isDebugEnabled()) {
forcedLog(logger, Level.DEBUG, format(pattern, argument));
}
}
/**
* Log a parameterized message at debug level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param arg0 a value to be formatted and substituted.
* @param arg1 a value to be formatted and substituted.
*/
public static void debug(final Logger logger, final String pattern,
final Object arg0, final Object arg1) {
if (logger.isDebugEnabled()) {
forcedLog(logger, Level.DEBUG,
format(pattern, toArray(arg0, arg1)));
}
}
/**
* Log a parameterized message at debug level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param arg0 a value to be formatted and substituted.
* @param arg1 a value to be formatted and substituted.
* @param arg2 a value to be formatted and substituted.
*/
public static void debug(final Logger logger, final String pattern,
final Object arg0, final Object arg1, final Object arg2) {
if (logger.isDebugEnabled()) {
forcedLog(logger, Level.DEBUG,
format(pattern, toArray(arg0, arg1, arg2)));
}
}
/**
* Log a parameterized message at debug level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param arg0 a value to be formatted and substituted.
* @param arg1 a value to be formatted and substituted.
* @param arg2 a value to be formatted and substituted.
* @param arg3 a value to be formatted and substituted.
*/
public static void debug(final Logger logger, final String pattern,
final Object arg0, final Object arg1, final Object arg2,
final Object arg3) {
if (logger.isDebugEnabled()) {
forcedLog(logger, Level.DEBUG,
format(pattern, toArray(arg0, arg1, arg2, arg3)));
}
}
/**
* Log a parameterized message at info level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void info(final Logger logger, final String pattern,
final boolean argument) {
if (logger.isInfoEnabled()) {
forcedLog(logger, Level.INFO, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at info level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void info(final Logger logger, final String pattern,
final char argument) {
if (logger.isInfoEnabled()) {
forcedLog(logger, Level.INFO, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at info level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void info(final Logger logger, final String pattern,
final byte argument) {
if (logger.isInfoEnabled()) {
forcedLog(logger, Level.INFO, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at info level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void info(final Logger logger, final String pattern,
final short argument) {
if (logger.isInfoEnabled()) {
forcedLog(logger, Level.INFO, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at info level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void info(final Logger logger, final String pattern,
final int argument) {
if (logger.isInfoEnabled()) {
forcedLog(logger, Level.INFO, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at info level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void info(final Logger logger, final String pattern,
final long argument) {
if (logger.isInfoEnabled()) {
forcedLog(logger, Level.INFO, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at info level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void info(final Logger logger, final String pattern,
final float argument) {
if (logger.isInfoEnabled()) {
forcedLog(logger, Level.INFO, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at info level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void info(final Logger logger, final String pattern,
final double argument) {
if (logger.isInfoEnabled()) {
forcedLog(logger, Level.INFO, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at info level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void info(final Logger logger, final String pattern,
final Object argument) {
if (logger.isInfoEnabled()) {
forcedLog(logger, Level.INFO, format(pattern, argument));
}
}
/**
* Log a parameterized message at info level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param arg0 a value to be formatted and substituted.
* @param arg1 a value to be formatted and substituted.
*/
public static void info(final Logger logger, final String pattern,
final Object arg0, final Object arg1) {
if (logger.isInfoEnabled()) {
forcedLog(logger, Level.INFO, format(pattern, toArray(arg0, arg1)));
}
}
/**
* Log a parameterized message at info level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param arg0 a value to be formatted and substituted.
* @param arg1 a value to be formatted and substituted.
* @param arg2 a value to be formatted and substituted.
*/
public static void info(final Logger logger, final String pattern,
final Object arg0, final Object arg1, final Object arg2) {
if (logger.isInfoEnabled()) {
forcedLog(logger, Level.INFO, format(pattern,
toArray(arg0, arg1, arg2)));
}
}
/**
* Log a parameterized message at info level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param arg0 a value to be formatted and substituted.
* @param arg1 a value to be formatted and substituted.
* @param arg2 a value to be formatted and substituted.
* @param arg3 a value to be formatted and substituted.
*/
public static void info(final Logger logger, final String pattern,
final Object arg0, final Object arg1, final Object arg2,
final Object arg3) {
if (logger.isInfoEnabled()) {
forcedLog(logger, Level.INFO, format(pattern,
toArray(arg0, arg1, arg2, arg3)));
}
}
/**
* Log a parameterized message at warn level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void warn(final Logger logger, final String pattern,
final boolean argument) {
if (logger.isEnabledFor(Level.WARN)) {
forcedLog(logger, Level.WARN, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at warn level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void warn(final Logger logger, final String pattern,
final char argument) {
if (logger.isEnabledFor(Level.WARN)) {
forcedLog(logger, Level.WARN, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at warn level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void warn(final Logger logger, final String pattern,
final byte argument) {
if (logger.isEnabledFor(Level.WARN)) {
forcedLog(logger, Level.WARN, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at warn level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void warn(final Logger logger, final String pattern,
final short argument) {
if (logger.isEnabledFor(Level.WARN)) {
forcedLog(logger, Level.WARN, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at warn level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void warn(final Logger logger, final String pattern,
final int argument) {
if (logger.isEnabledFor(Level.WARN)) {
forcedLog(logger, Level.WARN, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at warn level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void warn(final Logger logger, final String pattern,
final long argument) {
if (logger.isEnabledFor(Level.WARN)) {
forcedLog(logger, Level.WARN, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at warn level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void warn(final Logger logger, final String pattern,
final float argument) {
if (logger.isEnabledFor(Level.WARN)) {
forcedLog(logger, Level.WARN, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at warn level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void warn(final Logger logger, final String pattern,
final double argument) {
if (logger.isEnabledFor(Level.WARN)) {
forcedLog(logger, Level.WARN, format(pattern, valueOf(argument)));
}
}
/**
* Log a parameterized message at warn level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param argument a value to be formatted and substituted.
*/
public static void warn(final Logger logger, final String pattern,
final Object argument) {
if (logger.isEnabledFor(Level.WARN)) {
forcedLog(logger, Level.WARN, format(pattern, argument));
}
}
/**
* Log a parameterized message at warn level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param arg0 a value to be formatted and substituted.
* @param arg1 a value to be formatted and substituted.
*/
public static void warn(final Logger logger, final String pattern,
final Object arg0, final Object arg1) {
if (logger.isEnabledFor(Level.WARN)) {
forcedLog(logger, Level.WARN,
format(pattern, toArray(arg0, arg1)));
}
}
/**
* Log a parameterized message at warn level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param arg0 a value to be formatted and substituted.
* @param arg1 a value to be formatted and substituted.
* @param arg2 a value to be formatted and substituted.
*/
public static void warn(final Logger logger, final String pattern,
final Object arg0, final Object arg1, final Object arg2) {
if (logger.isEnabledFor(Level.WARN)) {
forcedLog(logger, Level.WARN,
format(pattern, toArray(arg0, arg1, arg2)));
}
}
/**
* Log a parameterized message at warn level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param arg0 a value to be formatted and substituted.
* @param arg1 a value to be formatted and substituted.
* @param arg2 a value to be formatted and substituted.
* @param arg3 a value to be formatted and substituted.
*/
public static void warn(final Logger logger, final String pattern,
final Object arg0, final Object arg1, final Object arg2,
final Object arg3) {
if (logger.isEnabledFor(Level.WARN)) {
forcedLog(logger, Level.WARN, format(pattern,
toArray(arg0, arg1, arg2, arg3)));
}
}
/**
* Log a parameterized message at specified level.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param pattern pattern, may be null.
* @param parameters parameters to the log message.
*/
public static void log(final Logger logger,
final Level level,
final String pattern,
final Object[] parameters) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(pattern, parameters));
}
}
/**
* Log a parameterized message at specified level.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param t throwable, may be null.
* @param pattern pattern, may be null.
* @param parameters parameters to the log message.
*/
public static void log(final Logger logger,
final Level level,
final Throwable t,
final String pattern,
final Object[] parameters) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(pattern, parameters), t);
}
}
/**
* Log a parameterized message at specified level.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param pattern pattern, may be null.
* @param param1 parameter to the log message.
*/
public static void log(final Logger logger,
final Level level,
final String pattern,
final Object param1) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(pattern, toArray(param1)));
}
}
/**
* Log a parameterized message at specified level.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param pattern pattern, may be null.
* @param param1 parameter to the log message.
*/
public static void log(final Logger logger,
final Level level,
final String pattern,
final boolean param1) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(pattern, toArray(valueOf(param1))));
}
}
/**
* Log a parameterized message at specified level.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param pattern pattern, may be null.
* @param param1 parameter to the log message.
*/
public static void log(final Logger logger,
final Level level,
final String pattern,
final byte param1) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(pattern, toArray(valueOf(param1))));
}
}
/**
* Log a parameterized message at specified level.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param pattern pattern, may be null.
* @param param1 parameter to the log message.
*/
public static void log(final Logger logger,
final Level level,
final String pattern,
final char param1) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(pattern, toArray(valueOf(param1))));
}
}
/**
* Log a parameterized message at specified level.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param pattern pattern, may be null.
* @param param1 parameter to the log message.
*/
public static void log(final Logger logger,
final Level level,
final String pattern,
final short param1) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(pattern, toArray(valueOf(param1))));
}
}
/**
* Log a parameterized message at specified level.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param pattern pattern, may be null.
* @param param1 parameter to the log message.
*/
public static void log(final Logger logger,
final Level level,
final String pattern,
final int param1) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(pattern, toArray(valueOf(param1))));
}
}
/**
* Log a parameterized message at specified level.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param pattern pattern, may be null.
* @param param1 parameter to the log message.
*/
public static void log(final Logger logger,
final Level level,
final String pattern,
final long param1) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(pattern, toArray(valueOf(param1))));
}
}
/**
* Log a parameterized message at specified level.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param pattern pattern, may be null.
* @param param1 parameter to the log message.
*/
public static void log(final Logger logger,
final Level level,
final String pattern,
final float param1) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(pattern, toArray(valueOf(param1))));
}
}
/**
* Log a parameterized message at specified level.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param pattern pattern, may be null.
* @param param1 parameter to the log message.
*/
public static void log(final Logger logger,
final Level level,
final String pattern,
final double param1) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(pattern, toArray(valueOf(param1))));
}
}
/**
* Log a parameterized message at specified level.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param pattern pattern, may be null.
* @param arg0 a value to be formatted and substituted.
* @param arg1 a value to be formatted and substituted.
*/
public static void log(final Logger logger,
final Level level,
final String pattern,
final Object arg0, final Object arg1) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(pattern, toArray(arg0, arg1)));
}
}
/**
* Log a parameterized message at specifed level.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param pattern pattern, may be null.
* @param arg0 a value to be formatted and substituted.
* @param arg1 a value to be formatted and substituted.
* @param arg2 a value to be formatted and substituted.
*/
public static void log(final Logger logger,
final Level level,
final String pattern,
final Object arg0, final Object arg1, final Object arg2) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(pattern, toArray(arg0, arg1, arg2)));
}
}
/**
* Log a parameterized message at specified level.
* @param logger logger, may not be null.
* @param pattern pattern, may be null.
* @param level level, may not be null.
* @param arg0 a value to be formatted and substituted.
* @param arg1 a value to be formatted and substituted.
* @param arg2 a value to be formatted and substituted.
* @param arg3 a value to be formatted and substituted.
*/
public static void log(final Logger logger,
final Level level,
final String pattern,
final Object arg0, final Object arg1, final Object arg2,
final Object arg3) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level, format(pattern,
toArray(arg0, arg1, arg2, arg3)));
}
}
/**
* Log a parameterized message using a pattern from a resource bundle.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param bundleName resource bundle name, may be null.
* @param key key, may be null.
* @param parameters parameters to the log message.
*/
public static void logrb(final Logger logger,
final Level level,
final String bundleName,
final String key,
final Object[] parameters) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(bundleName, key, parameters));
}
}
/**
* Log a parameterized message using a pattern from a resource bundle.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param t throwable, may be null.
* @param bundleName resource bundle name, may be null.
* @param key key, may be null.
* @param parameters parameters to the log message.
*/
public static void logrb(final Logger logger,
final Level level,
final Throwable t,
final String bundleName,
final String key,
final Object[] parameters) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(bundleName, key, parameters), t);
}
}
/**
* Log a parameterized message using a pattern from a resource bundle.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param bundleName resource bundle name, may be null.
* @param key key, may be null.
* @param param1 Parameter to the log message.
*/
public static void logrb(final Logger logger,
final Level level,
final String bundleName,
final String key,
final Object param1) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(bundleName, key, toArray(param1)));
}
}
/**
* Log a parameterized message using a pattern from a resource bundle.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param bundleName resource bundle name, may be null.
* @param key key, may be null.
* @param param1 Parameter to the log message.
*/
public static void logrb(final Logger logger,
final Level level,
final String bundleName,
final String key,
final boolean param1) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(bundleName, key, toArray(valueOf(param1))));
}
}
/**
* Log a parameterized message using a pattern from a resource bundle.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param bundleName resource bundle name, may be null.
* @param key key, may be null.
* @param param1 Parameter to the log message.
*/
public static void logrb(final Logger logger,
final Level level,
final String bundleName,
final String key,
final char param1) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(bundleName, key, toArray(valueOf(param1))));
}
}
/**
* Log a parameterized message using a pattern from a resource bundle.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param bundleName resource bundle name, may be null.
* @param key key, may be null.
* @param param1 Parameter to the log message.
*/
public static void logrb(final Logger logger,
final Level level,
final String bundleName,
final String key,
final byte param1) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(bundleName, key, toArray(valueOf(param1))));
}
}
/**
* Log a parameterized message using a pattern from a resource bundle.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param bundleName resource bundle name, may be null.
* @param key key, may be null.
* @param param1 Parameter to the log message.
*/
public static void logrb(final Logger logger,
final Level level,
final String bundleName,
final String key,
final short param1) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(bundleName, key, toArray(valueOf(param1))));
}
}
/**
* Log a parameterized message using a pattern from a resource bundle.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param bundleName resource bundle name, may be null.
* @param key key, may be null.
* @param param1 Parameter to the log message.
*/
public static void logrb(final Logger logger,
final Level level,
final String bundleName,
final String key,
final int param1) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(bundleName, key, toArray(valueOf(param1))));
}
}
/**
* Log a parameterized message using a pattern from a resource bundle.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param bundleName resource bundle name, may be null.
* @param key key, may be null.
* @param param1 Parameter to the log message.
*/
public static void logrb(final Logger logger,
final Level level,
final String bundleName,
final String key,
final long param1) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(bundleName, key, toArray(valueOf(param1))));
}
}
/**
* Log a parameterized message using a pattern from a resource bundle.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param bundleName resource bundle name, may be null.
* @param key key, may be null.
* @param param1 Parameter to the log message.
*/
public static void logrb(final Logger logger,
final Level level,
final String bundleName,
final String key,
final float param1) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(bundleName, key, toArray(valueOf(param1))));
}
}
/**
* Log a parameterized message using a pattern from a resource bundle.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param bundleName resource bundle name, may be null.
* @param key key, may be null.
* @param param1 Parameter to the log message.
*/
public static void logrb(final Logger logger,
final Level level,
final String bundleName,
final String key,
final double param1) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(bundleName, key, toArray(valueOf(param1))));
}
}
/**
* Log a parameterized message using a pattern from a resource bundle.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param bundleName resource bundle name, may be null.
* @param key key, may be null.
* @param param0 Parameter to the log message.
* @param param1 Parameter to the log message.
*/
public static void logrb(final Logger logger,
final Level level,
final String bundleName,
final String key,
final Object param0,
final Object param1) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(bundleName, key, toArray(param0, param1)));
}
}
/**
* Log a parameterized message using a pattern from a resource bundle.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param bundleName resource bundle name, may be null.
* @param key key, may be null.
* @param param0 Parameter to the log message.
* @param param1 Parameter to the log message.
* @param param2 Parameter to the log message.
*/
public static void logrb(final Logger logger,
final Level level,
final String bundleName,
final String key,
final Object param0,
final Object param1,
final Object param2) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(bundleName, key, toArray(param0, param1, param2)));
}
}
/**
* Log a parameterized message using a pattern from a resource bundle.
* @param logger logger, may not be null.
* @param level level, may not be null.
* @param bundleName resource bundle name, may be null.
* @param key key, may be null.
* @param param0 Parameter to the log message.
* @param param1 Parameter to the log message.
* @param param2 Parameter to the log message.
* @param param3 Parameter to the log message.
*/
public static void logrb(final Logger logger,
final Level level,
final String bundleName,
final String key,
final Object param0,
final Object param1,
final Object param2,
final Object param3) {
if (logger.isEnabledFor(level)) {
forcedLog(logger, level,
format(bundleName, key,
toArray(param0, param1, param2, param3)));
}
}
}