FileDocCategorySizeDatePackage
POILogger.javaAPI DocApache Poi 3.0.123742Mon Jan 01 12:39:42 GMT 2007org.apache.poi.util

POILogger

public abstract class POILogger extends Object
A logger interface that strives to make it as easy as possible for developers to write log calls, while simultaneously making those calls as cheap as possible by performing lazy evaluation of the log message.

author
Marc Johnson (mjohnson at apache dot org)
author
Glen Stampoultzis (glens at apache.org)
author
Nicola Ken Barozzi (nicolaken at apache.org)

Fields Summary
public static final int
DEBUG
public static final int
INFO
public static final int
WARN
public static final int
ERROR
public static final int
FATAL
Constructors Summary
POILogger()
package scope so it cannot be instantiated outside of the util package. You need a POILogger? Go to the POILogFactory for one


                               
    
    
Methods Summary
public abstract booleancheck(int level)
Check if a logger is enabled to log at the specified level

param
level One of DEBUG, INFO, WARN, ERROR, FATAL

private voidcommonLogFormatted(int level, java.lang.String message, java.lang.Object[] unflatParams)

        

        if (check(level))
        {
            Object[] params = flattenArrays(unflatParams);

            if (params[ params.length - 1 ] instanceof Throwable)
            {
                log(level, StringUtil.format(message, params),
                    ( Throwable ) params[ params.length - 1 ]);
            }
            else
            {
                log(level, StringUtil.format(message, params));
            }
        }
    
private java.lang.Object[]flattenArrays(java.lang.Object[] objects)
Flattens any contained objects. Only tranverses one level deep.

        List results = new ArrayList();

        for (int i = 0; i < objects.length; i++)
        {
            results.addAll(objectToObjectArray(objects[ i ]));
        }
        return ( Object [] ) results.toArray(new Object[ results.size() ]);
    
public abstract voidinitialize(java.lang.String cat)

public voidlog(int level, java.lang.Object obj1, java.lang.Object obj2, java.lang.Object obj3, java.lang.Object obj4, java.lang.Object obj5, java.lang.Object obj6, java.lang.Object obj7)
Log a message. Lazily appends Object parameters together.

param
level One of DEBUG, INFO, WARN, ERROR, FATAL
param
obj1 first Object to place in the message
param
obj2 second Object to place in the message
param
obj3 third Object to place in the message
param
obj4 fourth Object to place in the message
param
obj5 fifth Object to place in the message
param
obj6 sixth Object to place in the message
param
obj7 seventh Object to place in the message

        

        if (check(level))
        {
            log(level,
                    new StringBuffer(112).append(obj1).append(obj2)
                        .append(obj3).append(obj4).append(obj5).append(obj6)
                        .append(obj7));
        }
    
public voidlog(int level, java.lang.Object obj1, java.lang.Object obj2, java.lang.Object obj3, java.lang.Object obj4, java.lang.Object obj5, java.lang.Object obj6, java.lang.Object obj7, java.lang.Object obj8)
Log a message. Lazily appends Object parameters together.

param
level One of DEBUG, INFO, WARN, ERROR, FATAL
param
obj1 first Object to place in the message
param
obj2 second Object to place in the message
param
obj3 third Object to place in the message
param
obj4 fourth Object to place in the message
param
obj5 fifth Object to place in the message
param
obj6 sixth Object to place in the message
param
obj7 seventh Object to place in the message
param
obj8 eighth Object to place in the message

        

        if (check(level))
        {
            log(level,
                    new StringBuffer(128).append(obj1).append(obj2)
                        .append(obj3).append(obj4).append(obj5).append(obj6)
                        .append(obj7).append(obj8));
        }
    
public voidlog(int level, java.lang.Object obj1, java.lang.Throwable exception)
Log a message

param
level One of DEBUG, INFO, WARN, ERROR, FATAL
param
obj1 The object to log. This is converted to a string.
param
exception An exception to be logged

        log(level , obj1, exception);
    
public voidlog(int level, java.lang.Object obj1, java.lang.Object obj2, java.lang.Throwable exception)
Log a message. Lazily appends Object parameters together.

param
level One of DEBUG, INFO, WARN, ERROR, FATAL
param
obj1 first Object to place in the message
param
obj2 second Object to place in the message
param
exception An exception to be logged

        

        if (check(level))
        {
            log(level, new StringBuffer(32).append(obj1).append(obj2),
                    exception);
        }
    
public voidlog(int level, java.lang.Object obj1, java.lang.Object obj2, java.lang.Object obj3, java.lang.Throwable exception)
Log a message. Lazily appends Object parameters together.

param
level One of DEBUG, INFO, WARN, ERROR, FATAL
param
obj1 first Object to place in the message
param
obj2 second Object to place in the message
param
obj3 third object to place in the message
param
exception An error message to be logged

        

        if (check(level))
        {
            log(level, new StringBuffer(48).append(obj1).append(obj2)
                .append(obj3), exception);
        }
    
public voidlog(int level, java.lang.Object obj1, java.lang.Object obj2, java.lang.Object obj3, java.lang.Object obj4, java.lang.Throwable exception)
Log a message. Lazily appends Object parameters together.

param
level One of DEBUG, INFO, WARN, ERROR, FATAL
param
obj1 first Object to place in the message
param
obj2 second Object to place in the message
param
obj3 third object to place in the message
param
obj4 fourth object to place in the message
param
exception An exception to be logged

        

        if (check(level))
        {
            log(level, new StringBuffer(64).append(obj1).append(obj2)
                .append(obj3).append(obj4), exception);
        }
    
public voidlog(int level, java.lang.Object obj1, java.lang.Object obj2, java.lang.Object obj3, java.lang.Object obj4, java.lang.Object obj5, java.lang.Throwable exception)
Log a message. Lazily appends Object parameters together.

param
level One of DEBUG, INFO, WARN, ERROR, FATAL
param
obj1 first Object to place in the message
param
obj2 second Object to place in the message
param
obj3 third object to place in the message
param
obj4 fourth object to place in the message
param
obj5 fifth object to place in the message
param
exception An exception to be logged

        

        if (check(level))
        {
            log(level, new StringBuffer(80).append(obj1).append(obj2)
                .append(obj3).append(obj4).append(obj5), exception);
        }
    
public voidlog(int level, java.lang.Object obj1, java.lang.Object obj2, java.lang.Object obj3, java.lang.Object obj4, java.lang.Object obj5, java.lang.Object obj6, java.lang.Throwable exception)
Log a message. Lazily appends Object parameters together.

param
level One of DEBUG, INFO, WARN, ERROR, FATAL
param
obj1 first Object to place in the message
param
obj2 second Object to place in the message
param
obj3 third object to place in the message
param
obj4 fourth object to place in the message
param
obj5 fifth object to place in the message
param
obj6 sixth object to place in the message
param
exception An exception to be logged

        

        if (check(level))
        {
            log(level , new StringBuffer(96).append(obj1)
                .append(obj2).append(obj3).append(obj4).append(obj5)
                .append(obj6), exception);
        }
    
public voidlog(int level, java.lang.Object obj1, java.lang.Object obj2, java.lang.Object obj3, java.lang.Object obj4, java.lang.Object obj5, java.lang.Object obj6, java.lang.Object obj7, java.lang.Throwable exception)
Log a message. Lazily appends Object parameters together.

param
level One of DEBUG, INFO, WARN, ERROR, FATAL
param
obj1 first Object to place in the message
param
obj2 second Object to place in the message
param
obj3 third object to place in the message
param
obj4 fourth object to place in the message
param
obj5 fifth object to place in the message
param
obj6 sixth object to place in the message
param
obj7 seventh object to place in the message
param
exception An exception to be logged

        

        if (check(level))
        {
            log(level, new StringBuffer(112).append(obj1).append(obj2)
                .append(obj3).append(obj4).append(obj5).append(obj6)
                .append(obj7), exception);
        }
    
public voidlog(int level, java.lang.Object obj1, java.lang.Object obj2, java.lang.Object obj3, java.lang.Object obj4, java.lang.Object obj5, java.lang.Object obj6, java.lang.Object obj7, java.lang.Object obj8, java.lang.Throwable exception)
Log a message. Lazily appends Object parameters together.

param
level One of DEBUG, INFO, WARN, ERROR, FATAL
param
obj1 first Object to place in the message
param
obj2 second Object to place in the message
param
obj3 third object to place in the message
param
obj4 fourth object to place in the message
param
obj5 fifth object to place in the message
param
obj6 sixth object to place in the message
param
obj7 seventh object to place in the message
param
obj8 eighth object to place in the message
param
exception An exception to be logged

        

        if (check(level))
        {
            log(level, new StringBuffer(128).append(obj1).append(obj2)
                .append(obj3).append(obj4).append(obj5).append(obj6)
                .append(obj7).append(obj8), exception);
        }
    
public abstract voidlog(int level, java.lang.Object obj1)

public voidlog(int level, java.lang.Object obj1, java.lang.Object obj2)
Log a message. Lazily appends Object parameters together.

param
level One of DEBUG, INFO, WARN, ERROR, FATAL
param
obj1 first object to place in the message
param
obj2 second object to place in the message

        if (check(level))
        {
            log(level, new StringBuffer(32).append(obj1).append(obj2));
        }
    
public voidlog(int level, java.lang.Object obj1, java.lang.Object obj2, java.lang.Object obj3)
Log a message. Lazily appends Object parameters together.

param
level One of DEBUG, INFO, WARN, ERROR, FATAL
param
obj1 first Object to place in the message
param
obj2 second Object to place in the message
param
obj3 third Object to place in the message

        

        if (check(level))
        {
            log(level,
                    new StringBuffer(48).append(obj1).append(obj2)
                        .append(obj3));
        }
    
public voidlog(int level, java.lang.Object obj1, java.lang.Object obj2, java.lang.Object obj3, java.lang.Object obj4)
Log a message. Lazily appends Object parameters together.

param
level One of DEBUG, INFO, WARN, ERROR, FATAL
param
obj1 first Object to place in the message
param
obj2 second Object to place in the message
param
obj3 third Object to place in the message
param
obj4 fourth Object to place in the message

        

        if (check(level))
        {
            log(level,
                    new StringBuffer(64).append(obj1).append(obj2)
                        .append(obj3).append(obj4));
        }
    
public voidlog(int level, java.lang.Object obj1, java.lang.Object obj2, java.lang.Object obj3, java.lang.Object obj4, java.lang.Object obj5)
Log a message. Lazily appends Object parameters together.

param
level One of DEBUG, INFO, WARN, ERROR, FATAL
param
obj1 first Object to place in the message
param
obj2 second Object to place in the message
param
obj3 third Object to place in the message
param
obj4 fourth Object to place in the message
param
obj5 fifth Object to place in the message

        

        if (check(level))
        {
            log(level,
                    new StringBuffer(80).append(obj1).append(obj2)
                        .append(obj3).append(obj4).append(obj5));
        }
    
public voidlog(int level, java.lang.Object obj1, java.lang.Object obj2, java.lang.Object obj3, java.lang.Object obj4, java.lang.Object obj5, java.lang.Object obj6)
Log a message. Lazily appends Object parameters together.

param
level One of DEBUG, INFO, WARN, ERROR, FATAL
param
obj1 first Object to place in the message
param
obj2 second Object to place in the message
param
obj3 third Object to place in the message
param
obj4 fourth Object to place in the message
param
obj5 fifth Object to place in the message
param
obj6 sixth Object to place in the message

        

        if (check(level))
        {
            log(level ,
                    new StringBuffer(96).append(obj1).append(obj2)
                        .append(obj3).append(obj4).append(obj5).append(obj6));
        }
    
public voidlogFormatted(int level, java.lang.String message, java.lang.Object obj1)
Logs a formated message. The message itself may contain % characters as place holders. This routine will attempt to match the placeholder by looking at the type of parameter passed to obj1.

If the parameter is an array, it traverses the array first and matches parameters sequentially against the array items. Otherwise the parameters after message are matched in order.

If the place holder matches against a number it is printed as a whole number. This can be overridden by specifying a precision in the form %n.m where n is the padding for the whole part and m is the number of decimal places to display. n can be excluded if desired. n and m may not be more than 9.

If the last parameter (after flattening) is a Throwable it is logged specially.

param
level One of DEBUG, INFO, WARN, ERROR, FATAL
param
message The message to log.
param
obj1 The first object to match against.

        commonLogFormatted(level, message, new Object[]
        {
            obj1
        });
    
public voidlogFormatted(int level, java.lang.String message, java.lang.Object obj1, java.lang.Object obj2)
Logs a formated message. The message itself may contain % characters as place holders. This routine will attempt to match the placeholder by looking at the type of parameter passed to obj1.

If the parameter is an array, it traverses the array first and matches parameters sequentially against the array items. Otherwise the parameters after message are matched in order.

If the place holder matches against a number it is printed as a whole number. This can be overridden by specifying a precision in the form %n.m where n is the padding for the whole part and m is the number of decimal places to display. n can be excluded if desired. n and m may not be more than 9.

If the last parameter (after flattening) is a Throwable it is logged specially.

param
level One of DEBUG, INFO, WARN, ERROR, FATAL
param
message The message to log.
param
obj1 The first object to match against.
param
obj2 The second object to match against.

        commonLogFormatted(level, message, new Object[]
        {
            obj1, obj2
        });
    
public voidlogFormatted(int level, java.lang.String message, java.lang.Object obj1, java.lang.Object obj2, java.lang.Object obj3)
Logs a formated message. The message itself may contain % characters as place holders. This routine will attempt to match the placeholder by looking at the type of parameter passed to obj1.

If the parameter is an array, it traverses the array first and matches parameters sequentially against the array items. Otherwise the parameters after message are matched in order.

If the place holder matches against a number it is printed as a whole number. This can be overridden by specifying a precision in the form %n.m where n is the padding for the whole part and m is the number of decimal places to display. n can be excluded if desired. n and m may not be more than 9.

If the last parameter (after flattening) is a Throwable it is logged specially.

param
level One of DEBUG, INFO, WARN, ERROR, FATAL
param
message The message to log.
param
obj1 The first object to match against.
param
obj2 The second object to match against.
param
obj3 The third object to match against.

        commonLogFormatted(level, message, new Object[]
        {
            obj1, obj2, obj3
        });
    
public voidlogFormatted(int level, java.lang.String message, java.lang.Object obj1, java.lang.Object obj2, java.lang.Object obj3, java.lang.Object obj4)
Logs a formated message. The message itself may contain % characters as place holders. This routine will attempt to match the placeholder by looking at the type of parameter passed to obj1.

If the parameter is an array, it traverses the array first and matches parameters sequentially against the array items. Otherwise the parameters after message are matched in order.

If the place holder matches against a number it is printed as a whole number. This can be overridden by specifying a precision in the form %n.m where n is the padding for the whole part and m is the number of decimal places to display. n can be excluded if desired. n and m may not be more than 9.

If the last parameter (after flattening) is a Throwable it is logged specially.

param
level One of DEBUG, INFO, WARN, ERROR, FATAL
param
message The message to log.
param
obj1 The first object to match against.
param
obj2 The second object to match against.
param
obj3 The third object to match against.
param
obj4 The forth object to match against.

        commonLogFormatted(level, message, new Object[]
        {
            obj1, obj2, obj3, obj4
        });
    
private java.util.ListobjectToObjectArray(java.lang.Object object)

        List results = new ArrayList();

        if (object instanceof byte [])
        {
            byte[] array = ( byte [] ) object;

            for (int j = 0; j < array.length; j++)
            {
                results.add(new Byte(array[ j ]));
            }
        }
        if (object instanceof char [])
        {
            char[] array = ( char [] ) object;

            for (int j = 0; j < array.length; j++)
            {
                results.add(new Character(array[ j ]));
            }
        }
        else if (object instanceof short [])
        {
            short[] array = ( short [] ) object;

            for (int j = 0; j < array.length; j++)
            {
                results.add(new Short(array[ j ]));
            }
        }
        else if (object instanceof int [])
        {
            int[] array = ( int [] ) object;

            for (int j = 0; j < array.length; j++)
            {
                results.add(new Integer(array[ j ]));
            }
        }
        else if (object instanceof long [])
        {
            long[] array = ( long [] ) object;

            for (int j = 0; j < array.length; j++)
            {
                results.add(new Long(array[ j ]));
            }
        }
        else if (object instanceof float [])
        {
            float[] array = ( float [] ) object;

            for (int j = 0; j < array.length; j++)
            {
                results.add(new Float(array[ j ]));
            }
        }
        else if (object instanceof double [])
        {
            double[] array = ( double [] ) object;

            for (int j = 0; j < array.length; j++)
            {
                results.add(new Double(array[ j ]));
            }
        }
        else if (object instanceof Object [])
        {
            Object[] array = ( Object [] ) object;

            for (int j = 0; j < array.length; j++)
            {
                results.add(array[ j ]);
            }
        }
        else
        {
            results.add(object);
        }
        return results;