if(SwingUtilities.isEventDispatchThread()) { Log.log(Log.DEBUG,this,"waitForRequests() running" + " remaining AWT requests");  doAWTRequests(); }
if(SwingUtilities.isEventDispatchThread()) { Log.log(Log.DEBUG,this,"waitForRequests() running" + " remaining AWT requests");  doAWTRequests();
	public void waitForRequests()	{		synchronized(lock)		{			while(firstRequest != null)			{				try				{					lock.wait();				}				catch(InterruptedException ie)				{					Log.log(Log.ERROR,this,ie);				}			}			// FIXME: when called from a non-AWT thread,			// waitForRequests() will return before all			// AWT runnables have completed			if(SwingUtilities.isEventDispatchThread())			{				Log.log(Log.DEBUG,this,"waitForRequests() running"					+ " remaining AWT requests");				// do any queued AWT runnables				doAWTRequests();			}		}	}