public void dispose(IProgressMonitor monitor) {
monitor.beginTask(Messages.ICatalog_dispose, 100);
List< ? extends IResolve> members;
try {
members = members(new SubProgressMonitor(monitor,1) );
} catch (Throwable e) {
ErrorManager.get().displayException(e, "Error disposing members of catalog: "+getIdentifier(), CatalogPlugin.ID); //$NON-NLS-1$
return;
}
int steps=(int)((double)99/(double)members.size());
for( IResolve resolve : members ) {
try {
SubProgressMonitor subProgressMonitor = new SubProgressMonitor(monitor, steps);
resolve.dispose( subProgressMonitor);
subProgressMonitor.done();
} catch (Throwable e) {
ErrorManager.get().displayException(e, "Error disposing members of catalog: "+getIdentifier(), CatalogPlugin.ID); //$NON-NLS-1$
}
}