Package ucar.unidata.data.profiler
Class AddeProfilerDataSource
java.lang.Object
ucar.unidata.collab.SharableImpl
ucar.unidata.data.DataSourceImpl
ucar.unidata.data.profiler.AddeProfilerDataSource
- All Implemented Interfaces:
Sharable,DataSource,DataSourceFactory,XmlPersistable
A data source for Profiler Network data from an ADDE server.
Can handle three types of Profiler data requests - for station
time/heihgt plots of wind, plan views of wind at a level above MSL,
and 3D plots of multistation wind at all levels.
- Version:
- $Revision: 1.50 $
- Author:
- MetApps/Unidata
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringset of all params to requeststatic final Stringset of params for a single stationstatic final String12 minute profiler data identifierstatic final String1 hour profiler data identifierstatic final String30 minute profiler data identifierstatic final String6 minute profiler data identifierstatic final StringData source interval identifierstatic final StringData interval identifierstatic final StringProfile namestatic final StringProfiler server identifierstatic final String6 minute server interval identifierstatic final StringHourly server interval identifierstatic final StringProfiler stations identifierstatic final StringProfiler timesFields inherited from class ucar.unidata.data.DataSourceImpl
changeDataPathsCbx, dataCacheKey, dataChoices, geoSelectionPanel, haveBeenUnPersisted, okToContinue, PARAM_SHOW_HIDE, PARAM_SHOW_NO, PARAM_SHOW_YESFields inherited from interface ucar.unidata.data.DataSource
DATAPATH_DATE_FORMAT, DATAPATH_DATE_PATTERN, MOST_RECENT, ordinalNames, PROP_AUTOCREATEDISPLAY, PROP_BASEDIRECTORY, PROP_CACHEABLE, PROP_DATACHOICENAME, PROP_DISPLAYPROPERTIES, PROP_DOCUMENTLINKS, PROP_FILEPATTERN, PROP_GEOLOCATION, PROP_ICON, PROP_NAME, PROP_POLLINFO, PROP_RESOLVERURL, PROP_SERVICE_HTTP, PROP_SUBPROPERTIES, PROP_TIMELABELS, PROP_TIMESTRIDE, PROP_TITLE -
Constructor Summary
ConstructorsConstructorDescriptionNo argument XML persistence constructorAddeProfilerDataSource(DataSourceDescriptor descriptor, ArrayList stations, Hashtable properties) Create a new AddeProfilerDataSource -
Method Summary
Modifier and TypeMethodDescriptionvoidCalled by DataSourceImpl to make the actual DataChoice(s) and add them to a list of Datachoices; the DataSourceImpl then checks to see if any derived datachoices are possible to derive from these, and shows them if so.protected ListGet the list of times for this datasourcebooleanCheck to see if this AddeProfilerDataSource is equal to the object in question.protected DatagetDataInner(DataChoice dataChoice, DataCategory category, DataSelection dataSelection, Hashtable requestProperties) Actually get the data identified by the given DataChoce.Get the SelectedStations property.inthashCode()Return the hashcode for this objectvoidExtends method in DataSourceImpl to call local initProfiler ()protected static FieldImplrecastProfilerMultiStationData(FieldImpl input, int obInt) Take a FieldImpl of National Profiler Network data obtained from the PointDataAdapter.getData() call based on an ADDE source request, and turn it into a FieldImpl of data of different FunctionType.protected static FieldImplrecastProfilerSingleStationData(FieldImpl input, int obInt) Take a FieldImpl of National Profiler Network data obtained from the PointDataAdapter.getData() call based on an ADDE source request, and turn it into a FieldImpl of data of different FunctionType.voidsetSelectedStations(List value) Set the SelectedStations property.Methods inherited from class ucar.unidata.data.DataSourceImpl
addActions, addDataChangeListener, addDataChoice, addPropertiesTabs, addReloadTab, applyFieldMask, applyProperties, beginWritingDataToLocalDisk, canAddCurrentName, canCacheDataToDisk, canChangeData, canDoAllLevels, canDoFieldMask, canDoGeoSelection, canDoGeoSelectionMap, canDoGeoSelectionStride, canPoll, canSaveDataToLocalDisk, canShowParameter, checkForInitAfterUnPersistence, clearCachedData, clearFileCache, clearTimes, convertSourceFile, convertToFilesIfDirectory, createAutoDisplay, createCacheKey, createElement, decrOutstandingGetDataCalls, doDirectory, doMakeGeoSelectionPanel, doMakeGeoSelectionPanel, doMakeGeoSelectionPanel, doMakeGeoSubsetPropertiesComponent, doRemove, endWritingDataToLocalDisk, expandIfNeeded, findDataChoice, findDataChoices, flushCache, getAbsoluteDateTimes, getActions, getAlias, getAllDateTimes, getAllDateTimes, getAllLevels, getAllLevels, getAllTimesForTimeDriver, getCache, getCache, getCacheClearDelay, getCacheDataToDisk, getCompositeDataChoices, getData, getData, getDataCachePath, getDataChangeListeners, getDataChoices, getDataContext, getDataInner, getDataIsEditable, getDataPaths, getDataPrefix, getDataSelection, getDataSelectionComponents, getDataSource, getDateTimes, getDateTimeSelection, getDefaultSave, getDescription, getDescriptor, getErrorMessage, getEverChangedName, getExtraGeoSelectionComponent, getExtraTimesComponent, getFileFilterForPolling, getFullDescription, getid, getIdv, getInError, getLocalDirectory, getLocationForPolling, getLocationsForPolling, getMostRecentFiles, getName, getNameForDataSource, getNeedToShowErrorToUser, getNextId, getOutstandingGetDataCalls, getPartialDescription, getPassword, getPathsThatCanBeRelative, getPollingInfo, getProperties, getPropertiesComponents, getPropertiesHeader, getProperty, getProperty, getProperty, getProperty, getProperty, getProperty, getProperty, getRelativePaths, getSampleDataProjection, getSaveDataFileLabel, getSelectedDateTimes, getSelectedDateTimes, getTimesFromDataSelection, getTmpPaths, getTypeName, getUserName, handlePropertiesAction, hasPollingInfo, holdsDateTimes, holdsIndices, identifiedBy, identifiedByName, incrOutstandingGetDataCalls, initAfter, initAfterCreation, initDataChoice, initDataSelectionComponents, initFromXml, isPolling, loadFieldMask, loadFieldMask, loadLatestFile, logException, logException, makeDerivedDataChoices, makeSaveLocalActions, newFileFromPolling, newFilesFromPolling, notifyDataChange, propertiesChanged, putCache, putCache, reloadData, reloadData, reloadProperties, removeCache, removeDataChangeListener, removeDataChoice, removeProperty, replaceDataChoice, resetTmpState, saveDataToLocalDisk, saveDataToLocalDisk, saveDataToLocalDisk, selectTimesFromList, setAlias, setAskToUpdate, setCacheClearDelay, setCacheDataToDisk, setDataEditableStrings, setDataIsEditable, setDataIsRelative, setDataRelativeStrings, setDataSelection, setDateTimeSelection, setDefaultSave, setDescription, setDescriptor, setDirectory, setEverChangedName, setInError, setInError, setInError, setName, setNewFiles, setObjectProperties, setObjectProperty, setPassword, setPollingInfo, setPollLocation, setProperties, setProperty, setProperty, setRelativePaths, setTemplateName, setTmpPaths, setUserName, shouldCache, shouldCache, showPasswordDialog, showPropertiesDialog, showPropertiesDialog, showPropertiesDialog, showWaitDialog, tick, toString, toStringTruncated, updateDetailsText, updateState, writeFieldMaskFile, writeFieldMaskFileMethods inherited from class ucar.unidata.collab.SharableImpl
applySharableProperties, doShare, doShare, doShareExternal, doShareInternal, getReceiveShareTime, getSharablePropertiesComponent, getShareGroup, getSharing, getUniqueId, initSharable, receiveShareData, removeSharable, setReceiveShareTime, setShareGroup, setSharing, setUniqueId, showSharableDialogMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface ucar.unidata.data.DataSource
getUniqueId
-
Field Details
-
PARAMS_ALL
set of all params to request- See Also:
-
PARAMS_SINGLE
set of params for a single station- See Also:
-
PROFILER_NAME
Profile name- See Also:
-
PROFILER_TIMES
Profiler times- See Also:
-
PROFILER_INT
Data interval identifier- See Also:
-
PROFILER_DATAINT
Data source interval identifier- See Also:
-
PROFILER_STATIONS
Profiler stations identifier- See Also:
-
PROFILER_SERVER
Profiler server identifier- See Also:
-
PROFILER_6MIN
6 minute profiler data identifier- See Also:
-
PROFILER_12MIN
12 minute profiler data identifier- See Also:
-
PROFILER_30MIN
30 minute profiler data identifier- See Also:
-
PROFILER_1HR
1 hour profiler data identifier- See Also:
-
PROFILER_SERVER_INT_6MIN
6 minute server interval identifier- See Also:
-
PROFILER_SERVER_INT_HR
Hourly server interval identifier- See Also:
-
-
Constructor Details
-
AddeProfilerDataSource
No argument XML persistence constructor- Throws:
VisADException- problem in VisAD
-
AddeProfilerDataSource
public AddeProfilerDataSource(DataSourceDescriptor descriptor, ArrayList stations, Hashtable properties) throws VisADException Create a new AddeProfilerDataSource- Parameters:
descriptor- description of sourcestations- stations to getproperties- extra properties- Throws:
VisADException- problem accessing data
-
-
Method Details
-
initAfterUnpersistence
public void initAfterUnpersistence()Extends method in DataSourceImpl to call local initProfiler ()- Specified by:
initAfterUnpersistencein interfaceDataSource- Overrides:
initAfterUnpersistencein classDataSourceImpl
-
doMakeDataChoices
public void doMakeDataChoices()Called by DataSourceImpl to make the actual DataChoice(s) and add them to a list of Datachoices; the DataSourceImpl then checks to see if any derived datachoices are possible to derive from these, and shows them if so. Used data supplied in the constructor.- Overrides:
doMakeDataChoicesin classDataSourceImpl
-
getDataInner
protected Data getDataInner(DataChoice dataChoice, DataCategory category, DataSelection dataSelection, Hashtable requestProperties) throws VisADException, RemoteException Actually get the data identified by the given DataChoce. The default is to call the getDataInner that does not take the requestProperties. This allows other, non unidata.data DataSource-s (that follow the old API) to work.- Overrides:
getDataInnerin classDataSourceImpl- Parameters:
dataChoice- The data choice that identifies the requested data.category- The data category of the request.dataSelection- Identifies any subsetting of the data.requestProperties- Hashtable that holds any detailed request properties.- Returns:
- The visad.Data object
- Throws:
RemoteException- Java RMI problemVisADException- VisAD problem
-
recastProfilerSingleStationData
protected static FieldImpl recastProfilerSingleStationData(FieldImpl input, int obInt) throws VisADException Take a FieldImpl of National Profiler Network data obtained from the PointDataAdapter.getData() call based on an ADDE source request, and turn it into a FieldImpl of data of different FunctionType. Input expects (index -> (TIME, Z, DIR, SPD, DAY)); all reals. Want to make FieldImpl with function (DateTime -> ((z)->(dir,spd)) ) suitable for display by a Unidata windBarbDisplayable. Skip some ob times depending on whether have 1 hourly or 6 minute data, and whether want 1 hour, 30 min, 12 min, or 6 min intervals in the displayed data.- Parameters:
input- a FieldImpl of NOAA National Profiler Network data obtained from the PointDataAdapter.getData() call based on an ADDE source request.obInt- an int how many time values to skip to get desired interval- Returns:
- FieldImpl of Profiler obs with rearranged function.
- Throws:
VisADException
-
recastProfilerMultiStationData
protected static FieldImpl recastProfilerMultiStationData(FieldImpl input, int obInt) throws VisADException, RemoteException Take a FieldImpl of National Profiler Network data obtained from the PointDataAdapter.getData() call based on an ADDE source request, and turn it into a FieldImpl of data of different FunctionType. Input expects (index -> (lat, lon, day, TIME, Z, DIR, SPD)); all reals. Want to make FieldImpl with function:(DateTime -> ((lat,lon,z)->(dir,spd)) )
suitable for display by a Unidata windBarbDisplayable.Skip some ob times depending on whether have 1 hourly or 6 minute data, and whether want 1 hour, 30 min, 12 min, or 6 min intervals in the displayed data.
level filtering accepts date in altitude range zlevel +/- 125 meters
- Parameters:
input- a FieldImpl of NOAA National Profiler Network data obtained from the PointDataAdapter.getData() call based on an ADDE source request.obInt- an int how many time values to skip to get desired interval- Returns:
- FieldImpl of Profiler obs with rearranged function.
- Throws:
RemoteExceptionVisADException
-
setSelectedStations
Set the SelectedStations property.- Parameters:
value- The new value for SelectedStations
-
getSelectedStations
Get the SelectedStations property.- Returns:
- The SelectedStations
-
equals
Check to see if this AddeProfilerDataSource is equal to the object in question.- Overrides:
equalsin classDataSourceImpl- Parameters:
o- object in question- Returns:
- true if they are the same or equivalent objects
-
hashCode
public int hashCode()Return the hashcode for this object -
doMakeDateTimes
Get the list of times for this datasource- Overrides:
doMakeDateTimesin classDataSourceImpl- Returns:
- empty list from this class
-