callInit( startClassName );
callInit();
    public void init( String[] args )    {        if ( log.isDebugEnabled() )        {            StringBuffer buf = new StringBuffer();            buf.append( "init(String[]) called with args: \n" );            for ( int ii = 0; ii < args.length; ii++ )            {                buf.append( "\t" ).append( args[ii] ).append( "\n" );            }            log.debug( buf.toString() );        }        if ( install == null )        {            log.debug( "install was null: initializing it using first argument" );            setInstallationLayout( args[0] );            log.debug( "install initialized" );        }        else        {            log.debug( "install was not null" );        }        if ( parentLoader == null )        {            log.info( "Trying to get handle on system classloader as the parent" );            setParentLoader( Thread.currentThread().getContextClassLoader() );            log.info( "parentLoader = " + parentLoader );        }                callInit( startClassName );        // This is only needed for procrun but does not harm jsvc or runs         // Leads me to think that we need to differentiate somehow between        // different daemon frameworks.  We can do this via command line args,        // system properties or by making them call different methods to start        // the process.  However not every framework may support calling         // different methods which may also be somewhat error prone.                while( true )        {            try            {                Thread.sleep( 2000 );            }            catch ( InterruptedException e )            {                e.printStackTrace();            }        }    }