Bug 315281 update copyrights for 3.6
tests/org.eclipse.jface.tests.databinding/src/org/eclipse/core/tests/databinding/observable/ThreadRealm.java
*         {@link #init(Thread) initialized}
     */
    public Thread getThread() {
        return thread;
    }
    /**
     * Queues the provided <code>runnable</code>.
     * 
     * @param runnable
     */
    public void asyncExec(Runnable runnable) {
        synchronized (queue) {
            queue.add(runnable);
            queue.notifyAll();
        }
    }
    
    /**
     * Returns after the realm has completed all runnables currently on its
     * queue.  Do not call from the realm's thread.
     * 
     * @throws IllegalStateException
     *             if the ThreadRealm is not blocking on its thread.
     * @throws IllegalStateException
     *             if invoked from the realm's own thread.
     */
    public void processQueue() {
        if (Thread.currentThread() == thread) {
            throw new IllegalStateException(
                    "Cannot execute this method in the realm's own thread");