/*
 * Created on Jan 4, 2005
 */
package javax.realtime.test.bridge;

import javax.realtime.PriorityParameters;
import javax.realtime.RealtimeThread;
import javax.realtime.RelativeTime;

import javax.realtime.DSS.DSS;

/**
 * @author gary
 */
public class BridgeReporter extends RealtimeThread {

	public BridgeReporter( String name, Bridge bridge, int cycles, 
			int basePriority ) {
		super( name, new PriorityParameters( basePriority ) );
		this.bridge = bridge;
		this.cycles = cycles;
	}
	
	public void body() throws InterruptedException {
		// System.out.println( "BridgeReporter runs" ); System.out.flush();
		for ( int i = 0; i < cycles; i++ ) {
			DSS.printTime();
			if ( bridge.holderThread != null ) {
				System.out.println( bridge.holderThread + " holds bridge " );
			} else {
				System.out.println( "bridge is empty " );
			}
			DSS.hold( new RelativeTime( 10, 0 ) );
		}
	}
	
	private Bridge bridge;
	private int cycles;
}

