/** * Getting data for a single radar station, with time range. * * @param sName radar station name * @param dateSelect the date time selection information * @param cancel _more_ * @return list of radialDatasetSweep * @throws IOException _more_ */ public List getData(String sName, DateSelection dateSelect, ucar.nc2.util.CancelTask cancel) throws IOException { if ((cancel != null) && cancel.isCancel()) { return null; } TDSRadarDatasetInfo dri = queryRadarStation(sName, dateSelect.getStartFixedDate(), dateSelect.getEndFixedDate()); List datasetList = new ArrayList(); List datasetINVs = dateSelect.apply(dri.getInvList()); Iterator it = datasetINVs.iterator(); while (it.hasNext()) { InvDatasetInfo ifo = (InvDatasetInfo) it.next(); InvDataset tdata = ifo.inv; ThreddsDataFactory tdFactory = new ThreddsDataFactory(); ThreddsDataFactory.Result result; result = tdFactory.openFeatureDataset(tdata, null); datasetList.add(result.featureDataset); if ((cancel != null) && cancel.isCancel()) { return null; } } return datasetList; }
/** * get all radar station within box. * * @param boundingBox the bounding box * @param cancel the cancel task * @return List Station objects * @throws IOException java io exception */ public List<Station> getStations(LatLonRect boundingBox, ucar.nc2.util.CancelTask cancel) throws IOException { Collection<Station> sl = stationHMap.values(); List<Station> dsl = new ArrayList<Station>(); if (!boundingBox.containedIn(radarRegion)) { return null; } // for (Iterator it = sl.iterator(); it.hasNext(); ) { // Station s = (Station) it.next(); for (Station s : sl) { // LatLonPointImpl latlonPt = new LatLonPointImpl(); // latlonPt.set(s.getLatitude(), s.getLongitude()); // if (boundingBox.contains(latlonPt)) { if (boundingBox.contains(s.getLatLon())) { dsl.add(s); } if ((cancel != null) && cancel.isCancel()) { return null; } } return dsl; }
/** * getting data uri list * * @param sName station name * @param dateSelect the date selection * @param cancel the cancel task * @return the list of URIs * @throws IOException problem reading URIs */ public List<URI> getDataURIs( String sName, DateSelection dateSelect, ucar.nc2.util.CancelTask cancel) throws IOException { if ((cancel != null) && cancel.isCancel()) { return null; } TDSRadarDatasetInfo dri = queryRadarStation(sName, dateSelect.getStartFixedDate(), dateSelect.getEndFixedDate()); // create a list to hold URIs List<DatasetURIInfo> datasetsURIs = dateSelect.apply(dri.getURIList()); List<URI> uriList = new ArrayList<URI>(); for (DatasetURIInfo ufo : datasetsURIs) { URI u = ufo.uri; uriList.add(u); if ((cancel != null) && cancel.isCancel()) { return null; } } return uriList; }
/** * _more_ * * @param sName _more_ * @param dateSelect _more_ * @param cancel _more_ * @return _more_ * @throws IOException _more_ */ public ArrayList getDataURIs( String sName, DateSelection dateSelect, ucar.nc2.util.CancelTask cancel) throws IOException { if ((cancel != null) && cancel.isCancel()) { return null; } DqcRadarDatasetInfo dri = queryRadarStation(sName, dateSelect.getStartFixedDate(), dateSelect.getEndFixedDate()); // create a list to hold URIs List datasetsURIs = dateSelect.apply(dri.getURIList()); ArrayList uriList = new ArrayList(); Iterator it = datasetsURIs.iterator(); while (it.hasNext()) { DatasetURIInfo ufo = (DatasetURIInfo) it.next(); URI u = ufo.uri; uriList.add(u); if ((cancel != null) && cancel.isCancel()) { return null; } } return uriList; }
/** * get all radar station within box. * * @param boundingBox _more_ * @param cancel _more_ * @return List of type DqcRadarStation objects * @throws IOException java io exception */ public List getStations( ucar.unidata.geoloc.LatLonRect boundingBox, ucar.nc2.util.CancelTask cancel) throws IOException { List sl = selStation.getStations(); ArrayList dsl = new ArrayList(); for (Iterator it = sl.iterator(); it.hasNext(); ) { Station s = (Station) it.next(); LatLonPointImpl latlonPt = new LatLonPointImpl(); latlonPt.set(s.getLocation().getLatitude(), s.getLocation().getLongitude()); if (boundingBox.contains(latlonPt)) { dsl.add(s); } if ((cancel != null) && cancel.isCancel()) { return null; } } return dsl; }