tds/src/main/java/thredds/server/ncss/view/dsg/station/AbstractStationSubsetWriter.java
public static List<StationFeature> getStationsInSubset(
          StationTimeSeriesFeatureCollection stationFeatCol, SubsetParams ncssParams) throws IOException {

    List<StationFeature> wantedStations;

    // verify SpatialSelection has some stations
    if (ncssParams.getStations() != null) {
      List<String> stnNames = ncssParams.getStations();

      if (stnNames.get(0).equals("all")) {
        wantedStations = stationFeatCol.getStationFeatures();
      } else {
        wantedStations = stationFeatCol.getStationFeatures(stnNames);
      }
    } else if (ncssParams.getLatLonBoundingBox() != null) {
      LatLonRect llrect = ncssParams.getLatLonBoundingBox();
      wantedStations = stationFeatCol.getStationFeatures(llrect);

    } else if (ncssParams.getLatLonPoint() != null) {
      Station closestStation = findClosestStation(stationFeatCol, ncssParams.getLatLonPoint());
      List<String> stnList = new ArrayList<>();
      stnList.add(closestStation.getName());
      wantedStations = stationFeatCol.getStationFeatures(stnList);

    } else { // Want all.
      wantedStations = stationFeatCol.getStationFeatures();
    }

    return wantedStations;
  }
public static List<StationFeature> getStationsInSubset(
          StationTimeSeriesFeatureCollection stationFeatCol, SubsetParams ncssParams) throws IOException {

    List<StationFeature> wantedStations;

    // verify SpatialSelection has some stations
    if (ncssParams.getStations() != null) {
      List<String> stnNames = ncssParams.getStations();

      if (stnNames.get(0).equals("all")) {
        wantedStations = stationFeatCol.getStationFeatures();
      } else {
        wantedStations = stationFeatCol.getStationFeatures(stnNames);
      }
    } else if (ncssParams.getLatLonBoundingBox() != null) {
      LatLonRect llrect = ncssParams.getLatLonBoundingBox();
      wantedStations = stationFeatCol.getStationFeatures(llrect);

    } else if (ncssParams.getLatLonPoint() != null) {
      Station closestStation = findClosestStation(stationFeatCol, ncssParams.getLatLonPoint());
      List<String> stnList = new ArrayList<>();
      stnList.add(closestStation.getName());
      wantedStations = stationFeatCol.getStationFeatures(stnList);

    } else { // Want all.
      wantedStations = stationFeatCol.getStationFeatures();
    }

    return wantedStations;
  }
public static List < StationFeature > getStationsInSubset ( StationTimeSeriesFeatureCollection stationFeatCol , SubsetParams ncssParams ) throws IOException { List < StationFeature > wantedStations ; // verify SpatialSelection has some stations if ( ncssParams . getStations ( ) != null ) { List < String > stnNames = ncssParams . getStations ( ) ; if ( stnNames . get ( 0 ) . equals ( "all" ) ) { wantedStations = stationFeatCol . getStationFeatures ( ) ; } else { wantedStations = stationFeatCol . getStationFeatures ( stnNames ) ; } } else if ( ncssParams . getLatLonBoundingBox ( ) != null ) { LatLonRect llrect = ncssParams . getLatLonBoundingBox ( ) ; wantedStations = stationFeatCol . getStationFeatures ( llrect ) ; } else if ( ncssParams . getLatLonPoint ( ) != null ) { Station closestStation = findClosestStation ( stationFeatCol , ncssParams . getLatLonPoint ( ) ) ; List < String > stnList = new ArrayList <> ( ) ; stnList . add ( closestStation . getName ( ) ) ; wantedStations = stationFeatCol . getStationFeatures ( stnList ) ; } else { // Want all. wantedStations = stationFeatCol . getStationFeatures ( ) ; } return wantedStations ; }
LOOK could do better : "all", and maybe HashSet<Name>
LOOK could do better : all and maybe HashSet<Name >