/*****************************************
 * File
 * ~caviness/Class/CISC367/exer-solutions/TrafficLightThread/soln2/PedestrianLightT
hread.java
 *****************************************/


public class PedestrianLightThread extends Thread
{

/*********************************************
  * Instance variables
  ********************************************/
   private FlasherCoordinator f;
   private PedestrianLight PL;

/********************************************
 * Constructor
 ********************************************/

   public PedestrianLightThread( FlasherCoordinator f, PedestrianLight PL )
   {
      this.f = f;
      this.PL = PL;
   }

/*******************************************
 * Instance method
 *******************************************/

   public void run()
   {
      System.out.println("Entering PedestrianLightThread:run()");
      String msg;
      while ( true )
      {
         if ( f.isFlashing() )
         {
            msg = PL.message;
            PL.setMsg( "" );
            try { sleep(200); }
            catch( InterruptedException e ) {}

            if ( PL.message == "" )
               PL.setMsg( msg );
            try { sleep(200); }
            catch( InterruptedException e ) {}
         }
         
         try { sleep(200); }			// Relinquish control
         catch( InterruptedException e ) {}
         //yield();
      }
   }
}
