Interface DataSource

All Known Implementing Classes:
AddeImageDataSource, AddePointDataSource, AddeProfilerDataSource, AddeTextDataSource, AddeTextProductDataSource, AMRCTextPointDataSource, CacheDataSource, CDMProfileDataSource, CDMProfilerDataSource, CDMRadarDataSource, CDOGTextPointDataSource, DataSourceImpl, DbPointDataSource, DbTrajectoryDataSource, DemDataSource, DescriptorDataSource, DiamondPointDataSource, DodsGeoGridDataSource, DoradeDataSource, DrawingDataSource, EOLProfilerDataSource, FilesDataSource, FrontDataSource, GeodasDataSource, GeoGridDataSource, GeotiffDataSource, GNOMETextPointDataSource, GridCoverageDataSource, GridDataSource, ImageDataSource, ImageGridDataSource, ImageXmlDataSource, JsonDataSource, KmlDataSource, Level2RadarDataSource, ListDataSource, McIDASImageDataSource, MovieDataSource, NetcdfMetarDataSource, NetcdfPointCloudDataSource, NetcdfPointDataSource, NetcdfRadarDataSource, NwxTextProductDataSource, PlaceFileDataSource, PointCloudDataSource, PointDataSource, RadarDataSource, RaobDataSource, SerializedDataSource, ShapeFileDataSource, SondeDataSource, TextDataSource, TextPointDataSource, TextProductDataSource, TrackDataSource, TrajectoryFeatureTypeDataSource, Vis5DDataSource, VisadDataSource, WaterMLDataSource, WmsDataSource, WRFHDNetcdfDataSource

public interface DataSource
Interface for a source of Data
Version:
$Revision: 1.94 $
Author:
IDV Development Team
  • Field Details

  • Method Details

    • getDataChoices

      List getDataChoices()
      Return the List of DataChoice objects
      Returns:
      List of DataChoices
    • getData

      Data getData(DataChoice dataChoice, DataCategory category, DataSelection dataSelection, Hashtable requestProperties) throws VisADException, RemoteException
      Return the visad.Data object represented by the given dataChoice argument
      Parameters:
      dataChoice - choice for the data
      category - The data category
      dataSelection - sub selection (i.e. times) criteria
      requestProperties - extra request properties
      Returns:
      the Data object for the request
      Throws:
      RemoteException - Java RMI problem
      VisADException - VisAD problem
    • getData

      Data getData(DataChoice dataChoice, DataCategory category, Hashtable requestProperties) throws VisADException, RemoteException
      Return the visad.Data object represented by the given dataChoice argument
      Parameters:
      dataChoice - choice for the data
      category - The data category
      requestProperties - extra request properties
      Returns:
      the Data object for the request
      Throws:
      RemoteException - Java RMI problem
      VisADException - VisAD problem
    • getProperty

      Object getProperty(String name)
      Get the property
      Parameters:
      name - prop name
      Returns:
      prop value
    • getName

      String getName()
      Human readable name of this DataSource
      Returns:
      a human readable name
    • setNewFiles

      void setNewFiles(List files)
      Used to change what files this data source uses
      Parameters:
      files - List of files
    • getDescription

      String getDescription()
      Human readable description of this DataSource
      Returns:
      a human readable description
    • getPartialDescription

      String getPartialDescription()
      A little more detailed description of this DataSource
      Returns:
      a human readable description
    • getFullDescription

      String getFullDescription()
      All the details
      Returns:
      full descriptive name
    • findDataChoice

      DataChoice findDataChoice(Object dataChoiceId)
      A utility method to find a given DataChoice based on the id
      Parameters:
      dataChoiceId - the ID of the DataChoice
      Returns:
      the DataChoice or null
    • findDataChoices

      List findDataChoices(Object id)
      A utility method to find all data choices that match the pattern
      Parameters:
      id - The id
      Returns:
      List of data choices
    • getTypeName

      String getTypeName()
      Get the type name of this DataSource
      Returns:
      type name
    • getAllLevels

      List getAllLevels(DataChoice dataChoice)
      Get the list of all levels available from this DataSource
      Parameters:
      dataChoice - The data choice to get levels for
      Returns:
      List of all available levels
    • getAllLevels

      List getAllLevels(DataChoice dataChoice, DataSelection dataSelection)
      Get all levels for the data choice and selection
      Parameters:
      dataChoice - data choice
      dataSelection - selection
      Returns:
      List of levels
    • getAllDateTimes

      List getAllDateTimes()
      Get the list of all times available from this DataSource
      Returns:
      List of all available times
    • getSelectedDateTimes

      List getSelectedDateTimes()
      Get the list of all times selected from this DataSource
      Returns:
      List of selected times
    • getAllDateTimes

      List getAllDateTimes(DataChoice dataChoice)
      Get the list of all times available from the DataChoice
      Parameters:
      dataChoice - DataChoice in question
      Returns:
      List of times
    • getSelectedDateTimes

      List getSelectedDateTimes(DataChoice dataChoice)
      Get the list of all times selected from the DataChoice
      Parameters:
      dataChoice - DataChoice in question
      Returns:
      List of times
    • setDateTimeSelection

      void setDateTimeSelection(List selectedTimes)
      Set the list of datetimes that this data source should use.
      Parameters:
      selectedTimes - List of times to use
    • getDateTimeSelection

      List getDateTimeSelection()
      Get the list of datetimes that this data source should use.
      Returns:
      List of times the data source should use.
    • getDataSelection

      DataSelection getDataSelection()
      Get the DataSelection for this DataSource
      Returns:
      the DataSelection (time sub-selection)
    • addDataChangeListener

      void addDataChangeListener(DataChangeListener listener)
      Add the data change listener.
      Parameters:
      listener - listener to add
    • expandIfNeeded

      void expandIfNeeded(CompositeDataChoice cdc)
      Gets called by the DataSelection tree gui when a CompositeDataChoice is first opened. This allows us to incrementally expand these nested data choices.
      Parameters:
      cdc - the data choice
    • removeDataChangeListener

      void removeDataChangeListener(DataChangeListener listener)
      Remove the data change listener.
      Parameters:
      listener - listener to remove
    • notifyDataChange

      void notifyDataChange()
      Method to call notifying implementers of changes to data
    • doRemove

      void doRemove()
      Remove this DataSource
    • getInError

      boolean getInError()
      See if this DataSource is in error.
      Returns:
      true if in error
    • setInError

      void setInError(boolean b)
      _more_
      Parameters:
      b - _more_
    • getNeedToShowErrorToUser

      boolean getNeedToShowErrorToUser()
      Do we need to show the error to the user or was it already handled
      Returns:
      need to show the error to the user
    • getErrorMessage

      String getErrorMessage()
      Get the current error message.
      Returns:
      error message
    • initAfterUnpersistence

      void initAfterUnpersistence()
      Method to be implemented to have work done after the DataSource has been unpersisted from XML
    • initAfterCreation

      void initAfterCreation()
      Intialization method that gets called after the DataSource has been created.
    • identifiedBy

      boolean identifiedBy(Object definingObject)
      Is this datasource identified by the given defining object.
      Parameters:
      definingObject - object in question
      Returns:
      true if it is
    • identifiedByName

      boolean identifiedByName(String name)
      Is this datasource identified by the given label. The name may be of the form "class:classpattern" or just a pattern to match the name by
      Parameters:
      name - the name.
      Returns:
      true if it is
    • getAlias

      String getAlias()
      Return the alias for this DataSource.
      Returns:
      alias (i.e., alternate name) for this DataSource
    • setAlias

      void setAlias(String alias)
      Set the alias
      Parameters:
      alias - alias to use
    • getUniqueId

      String getUniqueId()
      Return the unique id of this datasource.
      Returns:
      unique id
    • getActions

      List getActions()
      Get any Action-s associated with this DataSource. The actions can be used to create menus, buttons, etc.
      Returns:
      a list of Actions associated with this DataSource
    • showPropertiesDialog

      boolean showPropertiesDialog()
      Show the properties dialog
      Returns:
      Was ok pressed
    • reloadData

      void reloadData()
      Reload the data and notify any listeners
    • getCompositeDataChoices

      List getCompositeDataChoices(CompositeDataChoice compositeDataChoice, List dataChoices)
      Utility to update the children data choices
      Parameters:
      compositeDataChoice - composite data choice
      dataChoices - Its children
      Returns:
      The actual children to use
    • canDoGeoSelection

      boolean canDoGeoSelection()
      Can this datasource do the geoselection subsetting and decimation
      Returns:
      can do geo subsetting
    • getDataSelectionComponents

      List<DataSelectionComponent> getDataSelectionComponents(DataChoice dataChoice)
      Returns a list of DataSelectionComponents that are shown in the field selector
      Parameters:
      dataChoice - The data choice in the field selector
      Returns:
      The list of components
    • setObjectProperties

      void setObjectProperties(Hashtable properties)
      set the properties
      Parameters:
      properties - properties
    • canDoAllLevels

      boolean canDoAllLevels()
      Whether this DataSource to do "All levels"
      Returns:
      boolean
    • setDataIsEditable

      void setDataIsEditable(boolean value)
      Set the DataIsEditable property.
      Parameters:
      value - The new value for DataIsEditable
    • getDataIsEditable

      boolean getDataIsEditable()
      Has this data source been marked to change it file on a bundle load
      Returns:
      is editable
    • getTmpPaths

      List getTmpPaths()
      for changing paths
      Returns:
      paths to change
    • updateState

      void updateState(Object newObject, Hashtable newProperties)
      Update the state
      Parameters:
      newObject - new object
      newProperties - the properties
    • setTmpPaths

      void setTmpPaths(List strings)
      for changing paths
      Parameters:
      strings - Changed paths
    • resetTmpState

      void resetTmpState()
      This gets called after we have been saved in a zidv bundle to reset us back to any original state
    • getDataPaths

      List getDataPaths()
      Get the list of file or url paths this data source has
      Returns:
      List of files or urls
    • canSaveDataToLocalDisk

      boolean canSaveDataToLocalDisk()
      Can this data source saves its files to local disk
      Returns:
      can save to local disk
    • saveDataToLocalDisk

      List saveDataToLocalDisk(boolean changeLinks, String uniqueFilePath) throws IOException
      Save the files to local disk
      Parameters:
      changeLinks - And change the internal file references
      uniqueFilePath - Prefix to save files to
      Returns:
      List of files saved
      Throws:
      IOException - On badness
    • clearCachedData

      void clearCachedData()
      This is called when the CacheManager detects the need ot clear memory.
    • createAutoDisplay

      void createAutoDisplay(String displayType, DataContext dataContext)
      Automatically create the given display on initialization. This used to be in the IDV but we moved it here to allow different data sources to do different things.
      Parameters:
      displayType - The display control type id
      dataContext - Really, the IDV
    • canAddCurrentName

      boolean canAddCurrentName(DataChoice dataChoice)
      can we add the data choice to the global list of parameter names
      Parameters:
      dataChoice - the data choice
      Returns:
      can add
    • reloadData

      void reloadData(Object object, Hashtable properties)
      Reload data.
      Parameters:
      object - the object
      properties - the properties
    • setDefaultSave

      void setDefaultSave(boolean selected)
      Sets the default save. The idea here is the user should just be allowed to select a default option when saving a zidv bundle rather than being asked additional questions.
      Parameters:
      selected - the new default save