Thread.currentThread().setContextClassLoader( parent );
    public void callStop()    {        Class clazz = null;        Method op = null;                if ( startClassName.equals( stopClassName ) && startObject != null )        {            clazz = startObjectClass;            stopObject = startObject;        }        else        {            try            {                clazz = application.loadClass( stopClassName );            }            catch ( ClassNotFoundException e )            {                log.error( "Could not find " + stopClassName, e );                System.exit( ExitCodes.CLASS_LOOKUP );            }                        try            {                stopObject = clazz.newInstance();            }            catch ( Exception e )            {                log.error( "Could not instantiate " + stopClassName, e );                System.exit( ExitCodes.INSTANTIATION );            }        }                try        {            op = clazz.getMethod( "stop", new Class[] { EMPTY_STRARRY.getClass() } );        }        catch ( Exception e )        {            log.error( "Could not find stop() method for " + stopClassName, e );            System.exit( ExitCodes.METHOD_LOOKUP );        }                try        {            op.invoke( stopObject, new Object[] { EMPTY_STRARRY } );        }        catch ( Exception e )        {            log.error( "Failed on " + stopClassName + ".stop()", e );            System.exit( ExitCodes.STOP );        }    }