edu.wisc.ssec.mcidasv.data
Class HydraDataSource

java.lang.Object
  extended by ucar.unidata.collab.SharableImpl
      extended by ucar.unidata.data.DataSourceImpl
          extended by edu.wisc.ssec.mcidasv.data.HydraDataSource
All Implemented Interfaces:
Sharable, DataSource, DataSourceFactory, XmlPersistable
Direct Known Subclasses:
MultiDimensionDataSource, MultiSpectralDataSource, SuomiNPPDataSource

public class HydraDataSource
extends DataSourceImpl


Field Summary
protected  List adapters
          List of sources files
protected  String oldSourceFromBundles
          for unpersistence
static String request
           
protected  List sources
          List of sources files
 
Fields inherited from class ucar.unidata.data.DataSourceImpl
changeDataPathsCbx, dataCacheKey, dataChoices, geoSelectionPanel, haveBeenUnPersisted, okToContinue, PARAM_SHOW_HIDE, PARAM_SHOW_NO, PARAM_SHOW_YES
 
Fields 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_TITLE
 
Constructor Summary
HydraDataSource()
          Default constructor
HydraDataSource(DataSourceDescriptor descriptor, List newSources, String description, Hashtable properties)
          Create a HydraDataSource
 
Method Summary
 boolean canSaveDataToLocalDisk()
          Can this data source save its dat to local disk
 void clearCachedData()
          This is called when the CacheManager detects the need ot clear memory.
protected  List doMakeDateTimes()
          Create the list of times associated with this DataSource.
protected  List getAdapters()
          Create, if needed, and return the list of adapters.
protected  Data getDataInner(DataChoice dataChoice, DataCategory category, DataSelection subset, Hashtable requestProperties)
          Get the data for the given DataChoice and selection criteria.
protected  boolean isFileBased()
          Are we getting data from a file or from server
private  void makeAdapters(List files)
          Make the adapters for the given list of files
 
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, canShowParameter, checkForInitAfterUnPersistence, clearFileCache, clearTimes, convertSourceFile, convertToFilesIfDirectory, createAutoDisplay, createCacheKey, createElement, decrOutstandingGetDataCalls, doDirectory, doMakeDataChoices, doMakeGeoSelectionPanel, doMakeGeoSelectionPanel, doMakeGeoSelectionPanel, doMakeGeoSubsetPropertiesComponent, doRemove, endWritingDataToLocalDisk, equals, 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, initAfterUnpersistence, 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, writeFieldMaskFile
 
Methods inherited from class ucar.unidata.collab.SharableImpl
applySharableProperties, doShare, doShare, doShareExternal, doShareInternal, getReceiveShareTime, getSharablePropertiesComponent, getShareGroup, getSharing, getUniqueId, initSharable, receiveShareData, removeSharable, setReceiveShareTime, setShareGroup, setSharing, setUniqueId, showSharableDialog
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface ucar.unidata.data.DataSource
getUniqueId
 

Field Detail

sources

protected List sources
List of sources files


request

public static String request

adapters

protected List adapters
List of sources files


oldSourceFromBundles

protected String oldSourceFromBundles
for unpersistence

Constructor Detail

HydraDataSource

public HydraDataSource()
Default constructor


HydraDataSource

public HydraDataSource(DataSourceDescriptor descriptor,
                       List newSources,
                       String description,
                       Hashtable properties)
                throws VisADException
Create a HydraDataSource

Parameters:
descriptor - The datasource descriptor
newSources - List of files or urls
description - The long name
properties - properties
Throws:
VisADException - couldn't create the data
Method Detail

canSaveDataToLocalDisk

public boolean canSaveDataToLocalDisk()
Can this data source save its dat to local disk

Specified by:
canSaveDataToLocalDisk in interface DataSource
Overrides:
canSaveDataToLocalDisk in class DataSourceImpl
Returns:
can save to local disk

isFileBased

protected boolean isFileBased()
Are we getting data from a file or from server

Returns:
is the data from files

clearCachedData

public void clearCachedData()
This is called when the CacheManager detects the need ot clear memory. It is intended to be overwritten by derived classes that are holding cached data that is not in the normal putCache facilities provided by this class since that data is actually managed by the CacheManager

Specified by:
clearCachedData in interface DataSource
Overrides:
clearCachedData in class DataSourceImpl

getAdapters

protected List getAdapters()
Create, if needed, and return the list of adapters. Will return null if there are no valid adapters.

Returns:
List of adapters or null

makeAdapters

private void makeAdapters(List files)
                   throws Exception
Make the adapters for the given list of files

Parameters:
files - Data files
Throws:
Exception - When bad things happen

doMakeDateTimes

protected List doMakeDateTimes()
Create the list of times associated with this DataSource.

Overrides:
doMakeDateTimes in class DataSourceImpl
Returns:
list of times.

getDataInner

protected Data getDataInner(DataChoice dataChoice,
                            DataCategory category,
                            DataSelection subset,
                            Hashtable requestProperties)
                     throws VisADException,
                            RemoteException
Get the data for the given DataChoice and selection criteria.

Overrides:
getDataInner in class DataSourceImpl
Parameters:
dataChoice - DataChoice for selection
category - DataCategory for the DataChoice (not used)
subset - subsetting criteria
requestProperties - extra request properties
Returns:
the Data object for the request
Throws:
RemoteException - couldn't create a remote data object
VisADException - couldn't create the data