private void configureGtfsRealtimeBeanDefinition(CommandLine cli,
      Map<String, BeanDefinition> beanDefinitions) {
    boolean tripUpdates = cli.hasOption(WebappCommon.ARG_GTFS_REALTIME_TRIP_UPDATES_URL);
    boolean vehiclePositions = cli.hasOption(WebappCommon.ARG_GTFS_REALTIME_VEHICLE_POSITIONS_URL);
    boolean alertsUrl = cli.hasOption(WebappCommon.ARG_GTFS_REALTIME_ALERTS_URL);

    if (tripUpdates || vehiclePositions || alertsUrl) {
      BeanDefinitionBuilder bean = BeanDefinitionBuilder.genericBeanDefinition("org.onebusaway.transit_data_federation.impl.realtime.gtfs_realtime.GtfsRealtimeSource");
      if (tripUpdates)
        bean.addPropertyValue("tripUpdatesUrl",
            cli.getOptionValue(WebappCommon.ARG_GTFS_REALTIME_TRIP_UPDATES_URL));
      if (vehiclePositions)
        bean.addPropertyValue(
            "vehiclePositionsUrl",
            cli.getOptionValue(WebappCommon.ARG_GTFS_REALTIME_VEHICLE_POSITIONS_URL));
      if (alertsUrl)
        bean.addPropertyValue("alertsUrl",
            cli.getOptionValue(WebappCommon.ARG_GTFS_REALTIME_ALERTS_URL));
      if (cli.hasOption(WebappCommon.ARG_GTFS_REALTIME_REFRESH_INTERVAL)) {
        String refreshInterval = cli.getOptionValue(WebappCommon.ARG_GTFS_REALTIME_REFRESH_INTERVAL);
        bean.addPropertyValue("refreshInterval", refreshInterval);
      }
      beanDefinitions.put("gtfsRealtimeSource", bean.getBeanDefinition());
      System.out.println("=== GTFS REALTIME! ============================");
    }
  }