1 8 package org.codehaus.dna; 9 10 16 public abstract class AbstractLogEnabled 17 implements LogEnabled 18 { 19 22 private Logger m_logger; 23 24 29 public void enableLogging( final Logger logger ) 30 { 31 m_logger = logger; 32 } 33 34 39 protected final Logger getLogger() 40 { 41 return m_logger; 42 } 43 44 50 protected final void setupLogger( final Object object ) 51 { 52 setupLogger( object, getLogger() ); 53 } 54 55 63 protected final void setupLogger( final Object object, 64 final String name ) 65 { 66 if( null == name ) 67 { 68 throw new NullPointerException ( "name" ); 69 } 70 final Logger childLogger = getLogger().getChildLogger( name ); 71 setupLogger( object, childLogger ); 72 } 73 74 83 private final void setupLogger( final Object object, final Logger logger ) 84 { 85 if( object instanceof LogEnabled ) 86 { 87 ( (LogEnabled)object ).enableLogging( logger ); 88 } 89 } 90 } 91 | Popular Tags |