com.yworks.logging.Logger Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of yguard Show documentation
Show all versions of yguard Show documentation
The open-source Java obfuscation tool working with Ant and Gradle by yWorks - the diagramming experts
The newest version!
package com.yworks.logging;
import java.util.List;
import java.util.ArrayList;
/**
* The type Logger.
*
* @author Michael Schroeder, yWorks GmbH http://www.yworks.com
*/
public abstract class Logger {
/**
* The enum Shrink type.
*/
public enum ShrinkType {
/**
* Class shrink type.
*/
CLASS,
/**
* Method shrink type.
*/
METHOD,
/**
* Field shrink type.
*/
FIELD }
private static List instances;
/**
* Register.
*/
protected void register() {
if ( null == Logger.instances ) {
Logger.instances = new ArrayList();
}
Logger.instances.add( this );
//System.out.println( "Using logger: " + this.getClass().getName() +" ("+Logger.instances.size()+")");
}
/**
* Unregister.
*/
protected void unregister() {
Logger.instances.remove( this );
}
/**
* Log.
*
* @param s the s
*/
public static void log( final String s ) {
//System.out.println( "logging: "+s );
if ( null != instances ) {
for ( Logger logger : instances ) {
logger.doLog( s );
}
}
}
/**
* Err.
*
* @param s the s
*/
public static void err( final String s ) {
if ( null != instances ) {
for ( Logger logger : instances ) {
logger.doErr( s );
}
}
}
/**
* Err.
*
* @param s the s
* @param ex the ex
*/
public static void err( final String s, final Throwable ex ) {
if ( null != instances ) {
for ( Logger logger : instances ) {
logger.doErr( s, ex );
}
}
}
/**
* Warn.
*
* @param s the s
*/
public static void warn( final String s ) {
if ( null != instances ) {
for ( Logger logger : instances ) {
logger.doWarn( s );
}
}
}
/**
* Warn to log.
*
* @param s the s
*/
public static void warnToLog( final String s ) {
if ( null != instances ) {
for ( Logger logger : instances ) {
logger.doWarnToLog( s );
}
}
}
/**
* Shrink log.
*
* @param s the s
*/
public static void shrinkLog( final String s ) {
if ( null != instances ) {
for ( Logger logger : instances ) {
logger.doShrinkLog( s );
}
}
}
/**
* Do log.
*
* @param s the s
*/
public abstract void doLog( String s );
/**
* Do err.
*
* @param s the s
*/
public abstract void doErr( String s );
/**
* Do warn.
*
* @param s the s
*/
public abstract void doWarn( String s );
/**
* Do warn to log.
*
* @param s the s
*/
public abstract void doWarnToLog( String s );
/**
* Do shrink log.
*
* @param s the s
*/
public abstract void doShrinkLog( String s );
/**
* Do err.
*
* @param s the s
* @param ex the ex
*/
public abstract void doErr( String s, Throwable ex );
/**
* Close.
*/
public abstract void close();
}