public class OldUnidataStationObsDataset extends StationObsDatasetImpl implements TypedDatasetFactoryIF
Since there is no other way to find what the stations are, or to find what data belongs to what station, we read through the entire dataset at open. We construct the list of StationObsDatatype records, but without the data cached.
stationHelper, stations
formatter, timeUnit
boundingBox, dataVariables, desc, endDate, location, netcdfDataset, parseInfo, startDate, title
Constructor and Description |
---|
OldUnidataStationObsDataset()
Deprecated.
|
OldUnidataStationObsDataset(NetcdfDataset ds)
Deprecated.
|
OldUnidataStationObsDataset(NetcdfDataset ds,
java.lang.String ncmlURL)
Deprecated.
|
Modifier and Type | Method and Description |
---|---|
java.util.List |
getData(CancelTask cancel)
Deprecated.
Get all data, allow user to cancel.
|
java.util.List |
getData(LatLonRect boundingBox,
CancelTask cancel)
Deprecated.
Get all data within the specified bounding box, allow user to cancel.
|
java.util.List |
getData(LatLonRect boundingBox,
java.util.Date start,
java.util.Date end,
CancelTask cancel)
Deprecated.
Get all data within the specified bounding box and date range, allow user to cancel.
|
java.util.List |
getData(Station s,
CancelTask cancel)
Deprecated.
Get all data for this Station, allow user to cancel.
|
int |
getDataCount()
Deprecated.
Get estimate of number of data records (may not be exact).
|
DataIterator |
getDataIterator(int bufferSize)
Deprecated.
Get an efficient iterator over all the data in the Collection.
|
int |
getStationDataCount(Station s)
Deprecated.
How many Data objects are available for this Station?
|
protected void |
init(java.lang.String ncmlURL)
Deprecated.
|
boolean |
isMine(NetcdfDataset ds)
Deprecated.
Determine if this dataset belongs to you
|
static boolean |
isValidFile(NetcdfFile ds)
Deprecated.
|
TypedDataset |
open(NetcdfDataset ncd,
CancelTask task,
java.lang.StringBuilder errlog)
Deprecated.
Open a NetcdfDataset as a TypedDataset.
|
protected void |
setBoundingBox()
Deprecated.
|
protected void |
setEndDate()
Deprecated.
|
protected void |
setStartDate()
Deprecated.
|
protected void |
setTimeUnits()
Deprecated.
|
getData, getData, getData, getData, getData, getData, getData, getDataClass, getDataIterator, getDataIterator, getDetailInfo, getScientificDataType, getStation, getStations, getStations, getStations, getStations, sortByTime
getData, getData, getData, getMetersConversionFactor, getTime, getTimeUnits
close, findGlobalAttributeIgnoreCase, getBoundingBox, getDataVariable, getDataVariables, getDescription, getEndDate, getGlobalAttributes, getLocation, getLocationURI, getNetcdfFile, getStartDate, getTitle, removeDataVariable, setDescription, setLocationURI, setTitle
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getScientificDataType
close, findGlobalAttributeIgnoreCase, getBoundingBox, getDataVariable, getDataVariables, getDescription, getEndDate, getGlobalAttributes, getLocationURI, getNetcdfFile, getStartDate, getTitle
getData, getData, getData, getTimeUnits
public OldUnidataStationObsDataset()
public OldUnidataStationObsDataset(NetcdfDataset ds) throws java.io.IOException
java.io.IOException
public OldUnidataStationObsDataset(NetcdfDataset ds, java.lang.String ncmlURL) throws java.io.IOException
java.io.IOException
public static boolean isValidFile(NetcdfFile ds)
public boolean isMine(NetcdfDataset ds)
TypedDatasetFactoryIF
isMine
in interface TypedDatasetFactoryIF
ds
- examine this NetcdfDataset to see if it belongs to this class.public TypedDataset open(NetcdfDataset ncd, CancelTask task, java.lang.StringBuilder errlog) throws java.io.IOException
TypedDatasetFactoryIF
open
in interface TypedDatasetFactoryIF
ncd
- already opened NetcdfDataset.task
- use may cancelerrlog
- place errors herejava.io.IOException
- on errorprotected void init(java.lang.String ncmlURL) throws java.io.IOException
java.io.IOException
protected void setTimeUnits()
setTimeUnits
in class PointObsDatasetImpl
protected void setStartDate()
setStartDate
in class TypedDatasetImpl
protected void setEndDate()
setEndDate
in class TypedDatasetImpl
protected void setBoundingBox()
setBoundingBox
in class TypedDatasetImpl
public java.util.List getData(CancelTask cancel) throws java.io.IOException
PointCollection
getData
in interface PointCollection
cancel
- allow user to cancel. Implementors should return ASAP.java.io.IOException
- on io erroras a (possibly) more efficient alternative
public int getDataCount()
PointCollection
getDataCount
in interface PointCollection
public java.util.List getData(LatLonRect boundingBox, CancelTask cancel) throws java.io.IOException
PointCollection
getData
in interface PointCollection
getData
in class StationObsDatasetImpl
boundingBox
- restrict data to this bounding noxcancel
- allow user to cancel. Implementors should return ASAP.java.io.IOException
- on io erroras a (possibly) more efficient alternative
public java.util.List getData(LatLonRect boundingBox, java.util.Date start, java.util.Date end, CancelTask cancel) throws java.io.IOException
PointCollection
getData
in interface PointCollection
getData
in class StationObsDatasetImpl
boundingBox
- restrict data to this bounding noxstart
- restrict data to after this timeend
- restrict data to before this timecancel
- allow user to cancel. Implementors should return ASAP.java.io.IOException
- on io erroras a (possibly) more efficient alternative
public int getStationDataCount(Station s)
StationCollection
getStationDataCount
in interface StationCollection
getStationDataCount
in class StationObsDatasetImpl
s
- stationpublic java.util.List getData(Station s, CancelTask cancel) throws java.io.IOException
StationCollection
getData
in interface StationCollection
s
- for this Stationcancel
- allow user to cancel. Implementors should return ASAP.java.io.IOException
- on io errorpublic DataIterator getDataIterator(int bufferSize) throws java.io.IOException
PointCollection
We dont need a cancelTask, just stop the iteration if the user want to cancel.
Example for point observations: Iterator iter = pointObsDataset.getDataIterator(); while (iter.hasNext()) { PointObsDatatype pobs = (PointObsDatatype) iter.next(); StructureData sdata = pobs.getData(); // process fully }
getDataIterator
in interface PointCollection
bufferSize
- if > 0, the internal buffer size, else use the default. Typically 100k - 1M for best results.java.io.IOException
- on io error