mcconnell 2002/12/11 16:36:08 Modified: merlin/src/java/org/apache/avalon/merlin/kernel DefaultKernel.java Log: Addition of error handling and logging for block deployment. Revision Changes Path 1.8 +21 -9 avalon-sandbox/merlin/src/java/org/apache/avalon/merlin/kernel/DefaultKernel.java Index: DefaultKernel.java =================================================================== RCS file: /home/cvs/avalon-sandbox/merlin/src/java/org/apache/avalon/merlin/kernel/DefaultKernel.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- DefaultKernel.java 11 Dec 2002 08:12:25 -0000 1.7 +++ DefaultKernel.java 12 Dec 2002 00:36:08 -0000 1.8 @@ -282,17 +282,29 @@ getLogger().debug( "block assembly" ); } - ClasspathDescriptor path = - CREATOR.createClasspathDescriptor( m_config.getChild( "blocks" ) ); - URL[] urls = ClasspathDescriptor.expand( m_home, path ); - - if( getLogger().isDebugEnabled() ) + try { - getLogger().debug( "blocks: " + urls.length ); - } + ClasspathDescriptor path = + CREATOR.createClasspathDescriptor( m_config.getChild( "blocks" ) ); + URL[] urls = ClasspathDescriptor.expand( m_home, path ); - Block[] blocks = install( m_engine, m_home, urls ); + if( getLogger().isDebugEnabled() ) + { + getLogger().debug( "blocks: " + urls.length ); + } + Block[] blocks = install( m_engine, m_home, urls ); + } + catch( Throwable e ) + { + final String error = "Block deployment failure."; + String log = ExceptionHelper.packException( error, e ); + if( getLogger().isErrorEnabled() ) + { + getLogger().error( log ); + } + throw new KernelException( error, e ); + } } //==============================================================
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>