if ( System.currentTimeMillis() > ( lastUpdateTimeStamp + ( updateDelay * 1000 ) ) ) { if ( delayedFileInfoUpdateSet.size() > 0 ) { if (tableTreeViewer != null && !tableTreeViewer.getTableTree().isDisposed()) tableTreeViewer.update( delayedFileInfoUpdateSet.toArray(), FileInfo.ALL_PROPERTIES );
if (System.currentTimeMillis() > (lastUpdateTimeStamp + (updateDelay * 1000))) { if (delayedFileInfoUpdateSet.size() > 0) { if ((tableTreeViewer != null) && !tableTreeViewer.getTableTree().isDisposed()) { tableTreeViewer.update(delayedFileInfoUpdateSet.toArray(), FileInfo.ALL_PROPERTIES); }
    public void delayedUpdateFileInfo( FileInfo fileInfo ) {        if ( fileInfo != null ) {            delayedFileInfoUpdateSet.add( fileInfo );        }        if ( System.currentTimeMillis() > ( lastUpdateTimeStamp + ( updateDelay * 1000 ) ) ) {            if ( delayedFileInfoUpdateSet.size() > 0 ) {            	if (tableTreeViewer != null && !tableTreeViewer.getTableTree().isDisposed())                	tableTreeViewer.update( delayedFileInfoUpdateSet.toArray(), FileInfo.ALL_PROPERTIES );                delayedFileInfoUpdateSet.clear();            }            lastUpdateTimeStamp = System.currentTimeMillis();        } else {            if ( !updateTimerRunning && ( delayedFileInfoUpdateSet.size() > 0 ) ) {                updateTimerRunning = true;                tableTreeViewer.getTableTree().getDisplay().timerExec( (updateDelay * 1000) + 2000,                    new Runnable() {                        public void run() {                            delayedUpdateFileInfo( null );                            updateTimerRunning = false;                        }                    } );            }        }    }