private static final void handleEntry( String entry, final String path,
                                           final Collection<ClassPathHandler> handlers, final ClassLoader classLoader,
                                           final ErrorHandler errorHandler )
    {
        if ( !entry.endsWith( CLASS_EXTENSION ) )
        {
            return;
        }

        entry = entry.substring( 0, entry.lastIndexOf( '.' ) ).replace( '/', '.' );
        try
        {
            Class<?> clazz = classLoader.loadClass( entry );

            for ( ClassPathHandler classPathHandler : handlers )
            {
                classPathHandler.doHandle( path, clazz );
            }
        }
        catch ( Throwable t )
        {
            errorHandler.onClassNotFound( entry );
        }
    }