*/
public void run()
{
List<IEntry> entries = getEntries();
ISearch[] searches = getSearches();
IEntry entryInput = getEntryInput();
ISearch searchInput = getSearchInput();
if ( entries.size() > 0 )
{
for ( IEntry entry : entries )
{
if ( entry instanceof IContinuation )
{
IContinuation continuation = ( IContinuation ) entry;
if ( continuation.getState() != State.RESOLVED )
{
continuation.resolve();
}
}
}
InitializeChildrenRunnable initializeChildrenRunnable = new InitializeChildrenRunnable( true, entries
.toArray( new IEntry[0] ) );
new StudioBrowserJob( initializeChildrenRunnable ).execute();
}
if ( searches.length > 0 )
{
for ( ISearch search : searches )
{
search.setSearchResults( null );
if ( search instanceof IContinuation )
{
IContinuation continuation = ( IContinuation ) search;
if ( continuation.getState() != State.RESOLVED )
{
continuation.resolve();
}
}
}
new StudioBrowserJob( new SearchRunnable( searches ) ).execute();
}
if ( entryInput != null )
{
// the entry input is usually a cloned entry, lookup the real entry from connection
IEntry entry = entryInput.getBrowserConnection().getEntryFromCache( entryInput.getDn() );
new StudioBrowserJob( new InitializeAttributesRunnable( entry ) ).execute();
}
if ( searchInput != null )
{
searchInput.setSearchResults( null );