edu.wisc.ssec.mcidasv.data.hrit
Class HRITDataSource

java.lang.Object
  extended by ucar.unidata.collab.SharableImpl
      extended by ucar.unidata.data.DataSourceImpl
          extended by edu.wisc.ssec.mcidasv.data.hrit.HRITDataSource
All Implemented Interfaces:
Sharable, DataSource, DataSourceFactory, XmlPersistable

public class HRITDataSource
extends DataSourceImpl


Nested Class Summary
(package private)  class HRITDataSource.ResolutionSelection
           
 
Field Summary
protected  List adapters
          List of sources files
private  List categories
           
private static int counter
           
private static String DATA_DESCRIPTION
           
private  List myDataChoices
          children choices
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
HRITDataSource()
          Default constructor
HRITDataSource(DataSourceDescriptor descriptor, List newSources, Hashtable properties)
          Construct a new HRIT data source.
HRITDataSource(DataSourceDescriptor descriptor, List newSources, String description, Hashtable properties)
          Create a HRITDataSource
HRITDataSource(DataSourceDescriptor descriptor, String fileName, Hashtable properties)
          Construct a new HRIT data source.
 
Method Summary
 boolean canSaveDataToLocalDisk()
          Can this data source save its data to local disk
 void clearCachedData()
          This is called when the CacheManager detects the need ot clear memory.
private  DataChoice doMakeDataChoice(int idx, String var)
           
 void doMakeDataChoices()
          Make and insert the DataChoice-s for this DataSource.
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 dataparams, Hashtable requestProperties)
          Get the data for the given DataChoice and selection criteria.
protected  void initDataSelectionComponents(List<DataSelectionComponent> components, DataChoice dataChoice)
           
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, 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, 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


categories

private List categories

oldSourceFromBundles

protected String oldSourceFromBundles
for unpersistence


DATA_DESCRIPTION

private static final String DATA_DESCRIPTION
See Also:
Constant Field Values

counter

private static int counter

myDataChoices

private List myDataChoices
children choices

Constructor Detail

HRITDataSource

public HRITDataSource()
Default constructor


HRITDataSource

public HRITDataSource(DataSourceDescriptor descriptor,
                      String fileName,
                      Hashtable properties)
               throws VisADException
Construct a new HRIT data source.

Parameters:
descriptor - descriptor for this DataSource
fileName - name of the HRIT segment file to read
properties - hashtable of properties
Throws:
VisADException - problem creating data

HRITDataSource

public HRITDataSource(DataSourceDescriptor descriptor,
                      List newSources,
                      Hashtable properties)
               throws VisADException
Construct a new HRIT data source.

Parameters:
descriptor - descriptor for this DataSource
sources - List of filenames
properties - hashtable of properties
Throws:
VisADException - problem creating data

HRITDataSource

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

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 data 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

doMakeDataChoices

public void doMakeDataChoices()
Make and insert the DataChoice-s for this DataSource.

Overrides:
doMakeDataChoices in class DataSourceImpl

doMakeDataChoice

private DataChoice doMakeDataChoice(int idx,
                                    String var)
                             throws Exception
Throws:
Exception

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 dataparams,
                            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)
resolution - resolution 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

initDataSelectionComponents

protected void initDataSelectionComponents(List<DataSelectionComponent> components,
                                           DataChoice dataChoice)
Overrides:
initDataSelectionComponents in class DataSourceImpl