Ejemplo n.º 1
0
  /**
   * time is advanced here checks which light is on moves as many times as specified by "i" every
   * movement moves time forward 3 also catches emptycollectionexceptions
   */
  public void move(int i) {

    Vehicle car = new Vehicle();
    int localcount = 0;
    while (localcount < i) {
      time += 3;
      if (movingChurch) {
        try {
          car = NChurch.dequeue();
          car.setDepartureTime(time);
          write(car.toString());
          write("\n");
        } catch (EmptyCollectionException e) {
        }

        try {
          car = NChurchTurn.dequeue();
          car.setDepartureTime(time);
          write(car.toString());
          write("\n");
        } catch (EmptyCollectionException e) {
        }

        try {
          car = SChurch.dequeue();
          car.setDepartureTime(time);
          write(car.toString());
          write("\n");
        } catch (EmptyCollectionException e) {
        }

        try {
          car = SChurchTurn.dequeue();
          car.setDepartureTime(time);
          write(car.toString());
          write("\n");
        } catch (EmptyCollectionException e) {
        }

      } else {
        try {
          car = EMain.dequeue();
          car.setDepartureTime(time);
          write(car.toString());
          write("\n");
        } catch (EmptyCollectionException e) {
        }

        try {
          car = EMainTurn.dequeue();
          car.setDepartureTime(time);
          write(car.toString());
          write("\n");
        } catch (EmptyCollectionException e) {
        }

        try {
          car = WMain.dequeue();
          car.setDepartureTime(time);
          write(car.toString());
          write("\n");
        } catch (EmptyCollectionException e) {
        }
        try {
          car = WMainTurn.dequeue();
          car.setDepartureTime(time);
          write(car.toString());
          write("\n");
        } catch (EmptyCollectionException e) {
        }
      }

      localcount++;
    }
  }