ucar.unidata.data.text
Class FrontDataSource

java.lang.Object
  extended by ucar.unidata.collab.SharableImpl
      extended by ucar.unidata.data.DataSourceImpl
          extended by ucar.unidata.data.FilesDataSource
              extended by ucar.unidata.data.text.FrontDataSource
All Implemented Interfaces:
Sharable, DataSource, DataSourceFactory, XmlPersistable

public class FrontDataSource
extends FilesDataSource

A class for handling text (and HTML) classes

Version:
$Revision: 1.15 $
Author:
IDV development team

Field Summary
static String PROP_TIMEWINDOW
          Property to show the time selection window
 
Fields inherited from class ucar.unidata.data.FilesDataSource
adapters, oldSourceFromBundles, sources
 
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
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
FrontDataSource()
          Default bean constructor; does nothing.
FrontDataSource(DataSourceDescriptor descriptor, List files, Hashtable properties)
          Create a new FrontDataSource
FrontDataSource(DataSourceDescriptor descriptor, String filename, Hashtable properties)
          Create a new FrontDataSource
 
Method Summary
 boolean applyProperties()
          Apply the properties
 boolean canSaveDataToLocalDisk()
          Is this data source capable of saving its data to local disk
protected  void doMakeDataChoices()
          Make the data choices associated with this source
protected  String getDataFileExtension(String file)
          Get the file extension for saving to local disk
protected  String getDataFilePrefix(String file)
          get the prefix to use when saving to local disk
protected  Data getDataInner(DataChoice dataChoice, DataCategory category, DataSelection dataSelection, Hashtable requestProperties)
          Actually get the data identified by the given DataChoce.
protected  List getInputStreams(List processedSources)
          Get the list of input streams used to make data local
 void getPropertiesComponents(List comps)
          Add to the properties component list
 double getTimeWindow()
          Get the TimeWindow property.
static void main(String[] args)
          test main
protected  String processDataFilename(String filename, int index)
          Process the file name to get a file that we can use to write to local disk
 void setTimeWindow(double value)
          Set the TimeWindow property.
 
Methods inherited from class ucar.unidata.data.FilesDataSource
doRemove, equals, getDataPaths, getFilePath, getFullDescription, getLocationsForPolling, getPartialDescription, getSource, getSources, haveSources, initAfterCreation, initAfterUnpersistence, initWithPollingInfo, isFileBased, newFilesFromPolling, propertiesChanged, reloadData, saveDataToLocalDisk, setNewFiles, setSource, setSources, sourcesChanged, updateState
 
Methods inherited from class ucar.unidata.data.DataSourceImpl
addActions, addDataChangeListener, addDataChoice, addPropertiesTabs, applyFieldMask, beginWritingDataToLocalDisk, canCacheDataToDisk, canChangeData, canDoFieldMask, canDoGeoSelection, canDoGeoSelectionMap, canDoGeoSelectionStride, canPoll, canShowParameter, checkForInitAfterUnPersistence, clearCachedData, clearFileCache, clearTimes, convertToFilesIfDirectory, createAutoDisplay, createCacheKey, createElement, decrOutstandingGetDataCalls, doDirectory, doMakeDateTimes, doMakeGeoSelectionPanel, doMakeGeoSelectionPanel, doMakeGeoSelectionPanel, doMakeGeoSubsetPropertiesComponent, endWritingDataToLocalDisk, expandIfNeeded, findDataChoice, findDataChoices, flushCache, getAbsoluteDateTimes, getActions, getAlias, getAllDateTimes, getAllDateTimes, getAllLevels, getAllLevels, getCache, getCacheClearDelay, getCacheDataToDisk, getCompositeDataChoices, getData, getData, getDataCachePath, getDataChangeListeners, getDataChoices, getDataContext, getDataInner, getDataIsEditable, getDataPrefix, getDataSelection, getDataSelectionComponents, getDataSource, getDateTimes, getDateTimeSelection, getDescription, getDescriptor, getErrorMessage, getExtraGeoSelectionComponent, getFileFilterForPolling, getid, getInError, getLocalDirectory, getLocationForPolling, getMostRecentFiles, getName, getNameForDataSource, getNeedToShowErrorToUser, getNextId, getOutstandingGetDataCalls, getPassword, getPathsThatCanBeRelative, getPollingInfo, getProperties, 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, initDataChoice, initDataSelectionComponents, initFromXml, isPolling, loadFieldMask, loadFieldMask, loadLatestFile, logException, logException, makeDerivedDataChoices, makeSaveLocalActions, newFileFromPolling, notifyDataChange, putCache, removeCache, removeDataChangeListener, removeDataChoice, removeProperty, replaceDataChoice, resetTmpState, saveDataToLocalDisk, saveDataToLocalDisk, setAlias, setAskToUpdate, setCacheClearDelay, setCacheDataToDisk, setDataEditableStrings, setDataIsEditable, setDataIsRelative, setDataRelativeStrings, setDataSelection, setDateTimeSelection, setDescription, setDescriptor, setDirectory, setInError, setInError, setInError, setName, setObjectProperties, setObjectProperty, setPassword, setPollingInfo, setPollLocation, setProperties, setProperty, setProperty, setRelativePaths, setTemplateName, setTmpPaths, setUserName, shouldCache, showPasswordDialog, showPropertiesDialog, showPropertiesDialog, showPropertiesDialog, showWaitDialog, tick, toString, toStringTruncated, updateDetailsText, writeFieldMaskFile, writeFieldMaskFile
 
Methods inherited from class ucar.unidata.collab.SharableImpl
applySharableProperties, doShare, doShare, doShareExternal, doShareInternal, getSharablePropertiesComponent, getShareGroup, getSharing, getUniqueId, initSharable, receiveShareData, removeSharable, 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

PROP_TIMEWINDOW

public static final String PROP_TIMEWINDOW
Property to show the time selection window

See Also:
Constant Field Values
Constructor Detail

FrontDataSource

public FrontDataSource()
Default bean constructor; does nothing.


FrontDataSource

public FrontDataSource(DataSourceDescriptor descriptor,
                       String filename,
                       Hashtable properties)
Create a new FrontDataSource

Parameters:
descriptor - descriptor for this DataSource
filename - name of the file (or URL)
properties - extra data source properties

FrontDataSource

public FrontDataSource(DataSourceDescriptor descriptor,
                       List files,
                       Hashtable properties)
Create a new FrontDataSource

Parameters:
descriptor - Descriptor for this DataSource
files - List of files or urls
properties - Extra data source properties
Method Detail

canSaveDataToLocalDisk

public boolean canSaveDataToLocalDisk()
Is this data source capable of saving its data to local disk

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

getDataFileExtension

protected String getDataFileExtension(String file)
Get the file extension for saving to local disk

Overrides:
getDataFileExtension in class FilesDataSource
Parameters:
file - The file
Returns:
its extension

getDataFilePrefix

protected String getDataFilePrefix(String file)
get the prefix to use when saving to local disk

Parameters:
file - file
Returns:
prefix

getPropertiesComponents

public void getPropertiesComponents(List comps)
Add to the properties component list

Overrides:
getPropertiesComponents in class DataSourceImpl
Parameters:
comps - List of components for the properties dialog

applyProperties

public boolean applyProperties()
Apply the properties

Overrides:
applyProperties in class DataSourceImpl
Returns:
successful

doMakeDataChoices

protected void doMakeDataChoices()
Make the data choices associated with this source

Overrides:
doMakeDataChoices in class DataSourceImpl

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:
getDataInner in class DataSourceImpl
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 problem p * @throws VisADException VisAD problem
VisADException - VisAD problem

processDataFilename

protected String processDataFilename(String filename,
                                     int index)
Process the file name to get a file that we can use to write to local disk

Overrides:
processDataFilename in class FilesDataSource
Parameters:
filename - Filename
index - Which file it it. This can be used by derived classes to add more info to the file name
Returns:
The processed filename

getInputStreams

protected List getInputStreams(List processedSources)
                        throws Exception
Get the list of input streams used to make data local

Overrides:
getInputStreams in class FilesDataSource
Parameters:
processedSources - Source paths
Returns:
List of input streams
Throws:
Exception - On badness

setTimeWindow

public void setTimeWindow(double value)
Set the TimeWindow property.

Parameters:
value - The new value for TimeWindow

getTimeWindow

public double getTimeWindow()
Get the TimeWindow property.

Returns:
The TimeWindow

main

public static void main(String[] args)
                 throws Exception
test main

Parameters:
args - args
Throws:
Exception - On badness