Bug 29163 SafeRunnable needs to be accessible in JFace
We need to be able to access the SafeRunnable in JFace in order that some error protection can be added to preferences and properties dialogs.
bundles/org.eclipse.ui.workbench/extensions/org/eclipse/jface/operation/AccumulatingProgressMonitor.java
public Collector(String subTask, double work, IProgressMonitor monitor) {
			this.subTask = subTask;
			this.worked = work;
			this.monitor = monitor;
		}
		
		public void worked(double worked) {
			this.worked = this.worked + worked;
		}
		
		public void subTask(String subTask) {
			this.subTask = subTask;
		}
		
		public void run() {
			clearCollector(this);
			if (subTask != null)
				monitor.subTask(subTask);
			if (worked > 0)
				monitor.internalWorked(worked);
		}
	}		
/**
 * Creates an accumulating progress monitor wrapping the given one
 * that uses the given display.
 * 
 * @param monitor the actual progress monitor to be wrapped
 * @param display the SWT display used to forward the calls 
 *  to the wrapped progress monitor