Esempio n. 1
0
 // returns one of two possible departure strings for a train
 protected String getStatus(RouteLocation rl, boolean isManifest) {
   if (rl == _train.getRoute().getTerminatesRouteLocation()) {
     return MessageFormat.format(
         TrainManifestText.getStringTrainTerminates(),
         new Object[] {_train.getTrainTerminatesName()});
   }
   if (rl != _train.getCurrentLocation()
       && _train.getExpectedArrivalTime(rl).equals(Train.ALREADY_SERVICED)) {
     return MessageFormat.format(
         TrainSwitchListText.getStringTrainDone(), new Object[] {_train.getName()});
   }
   if (!_train.isBuilt()) {
     return _train.getStatus();
   }
   if (Setup.isPrintLoadsAndEmptiesEnabled()) {
     int emptyCars = _train.getNumberEmptyCarsInTrain(rl);
     String text;
     if (isManifest) {
       text = TrainManifestText.getStringTrainDepartsLoads();
     } else {
       text = TrainSwitchListText.getStringTrainDepartsLoads();
     }
     return MessageFormat.format(
         text,
         new Object[] {
           TrainCommon.splitString(rl.getName()),
           rl.getTrainDirectionString(),
           _train.getNumberCarsInTrain(rl) - emptyCars,
           emptyCars,
           _train.getTrainLength(rl),
           Setup.getLengthUnit().toLowerCase(),
           _train.getTrainWeight(rl),
           _train.getTrainTerminatesName(),
           _train.getName()
         });
   } else {
     String text;
     if (isManifest) {
       text = TrainManifestText.getStringTrainDepartsCars();
     } else {
       text = TrainSwitchListText.getStringTrainDepartsCars();
     }
     return MessageFormat.format(
         text,
         new Object[] {
           TrainCommon.splitString(rl.getName()),
           rl.getTrainDirectionString(),
           _train.getNumberCarsInTrain(rl),
           _train.getTrainLength(rl),
           Setup.getLengthUnit().toLowerCase(),
           _train.getTrainWeight(rl),
           _train.getTrainTerminatesName(),
           _train.getName()
         });
   }
 }