@Override
    public void controllerUpdate(ControllerEvent evt) 
    {
        if (evt instanceof ConfigureCompleteEvent ||
	    evt instanceof RealizeCompleteEvent ||
	    evt instanceof PrefetchCompleteEvent)
        {
	    synchronized (this) 
            {
		stateTransitionOK = true;
		this.notifyAll();
	    }
	} 
        else 
        {
            if (evt instanceof ResourceUnavailableEvent) 
            {
                synchronized (this) 
                {
                    stateTransitionOK = false;
                    this.notifyAll();
                }
            } 
            else
            {
                if (evt instanceof EndOfMediaEvent) 
                {
                    processor.close();
                    System.exit(0);
                }
            }
        }
    }