Class TLcyDataFormatManager.ALcyMapComponentChooser

java.lang.Object
com.luciad.lucy.TLcyDataFormatManager.ALcyMapComponentChooser
Enclosing class:
TLcyDataFormatManager

public abstract static class TLcyDataFormatManager.ALcyMapComponentChooser extends Object

Class that represents the logic to choose one or multiple ILcyGenericMapComponent(s) out of a list of candidates. This class will only be triggered when the data could not be loaded on the specified map. As a back-up mechanism, the TLcyDataFormatManager tries to load the data on another map, and this class allows to choose on which map(s) the TLcyDataFormatManager should retry.

Implementations could for example present the user with a dialog to choose the appropriate map component.

  • Constructor Details

    • ALcyMapComponentChooser

      protected ALcyMapComponentChooser()
      The default constructor
  • Method Details

    • chooseMapComponent

      public abstract List<ILcyGenericMapComponent<? extends ILcdView,? extends ILcdLayer>> chooseMapComponent(String aSourceName, ILcyGenericMapComponent<? extends ILcdView,? extends ILcdLayer> aFailedMapComponent, List<ILcyGenericMapComponent<? extends ILcdView,? extends ILcdLayer>> aMapComponentsToChooseFrom, ILcdModelDecoder[] aModelDecoders, ALcyFileTypeDescriptor[] aModelDecoderFileTypeDescriptors, ALcyDataSourceHandler[] aDataSourceHandlers, ALcyFileTypeDescriptor[] aDataSourceHandlerFileTypeDescriptors, ALcyFileTypeDescriptor aSelectedFileTypeDescriptor, Component aParentComponent) throws TLcyUserCancelledException
      Chooses the ILcyGenericMapComponent(s) to use for the given aSourceName out of the list of given map components. Choosing multiple map components will result in opening the data source on multiple maps.
      Parameters:
      aSourceName - The data source to choose a map component for.
      aFailedMapComponent - The map component on which loading the data failed. Will not be included in aMapComponentsToChooseFrom
      aMapComponentsToChooseFrom - A list of map components from which to choose
      aModelDecoders - A list of ILcdModelDecoders from which to choose.
      aModelDecoderFileTypeDescriptors - The file type descriptors corresponding to aModelDecoders. Is null iff aModelDecoders is null. Array must have equal length as aModelDecoders. It can contain null values for those ILcdModelDecoders that don't work with files.
      aDataSourceHandlers - A list of ALcyDataSourceHandlers from which to choose.
      aDataSourceHandlerFileTypeDescriptors - The file type descriptors corresponding to aDataSourceHandlers. Is null iff aDataSourceHandlers is null. Array must have equal length as aDataSourceHandlers. It can contain null values for those ALcyDataSourceHandlers that don't work with files.
      aSelectedFileTypeDescriptor - The selected file type descriptor, can be used if there is ambiguity (multiple decoders can read a file). Can be null for default behavior.
      aParentComponent - A parent component, used to display message dialogs.
      Returns:
      a list of map components, or an empty list. Must not be null. Each of the elements in the returned list must be included in aMapComponentsToChooseFrom
      Throws:
      TLcyUserCancelledException - This method can throw a TLcyUserCancelledException to indicate that the user has decided to cancel the data loading instead of choosing a handler. In such case, the TLcyDataFormatManager will not indicate to the TLcyDataFormatManager.getLogListener() that the source failed, but rather swallow the exception.
    • chooseMapComponent

      public abstract List<ILcyGenericMapComponent<? extends ILcdView,? extends ILcdLayer>> chooseMapComponent(ILcdDataSource aSource, ILcyGenericMapComponent<? extends ILcdView,? extends ILcdLayer> aFailedMapComponent, List<ILcyGenericMapComponent<? extends ILcdView,? extends ILcdLayer>> aMapComponentsToChooseFrom, ILcdModelDecoder[] aModelDecoders, Component aParentComponent) throws TLcyUserCancelledException
      Chooses the ILcyGenericMapComponent(s) to use for the given aSource out of the list of given map components. Choosing multiple map components will result in opening the data source on multiple maps.
      Parameters:
      aSource - The data source to choose a handler for.
      aFailedMapComponent - The map component on which loading the data failed. Will not be included in aMapComponentsToChooseFrom
      aMapComponentsToChooseFrom - A list of map components from which to choose
      aModelDecoders - An array of ILcdModelDecoders from which to choose.
      aParentComponent - A parent component, used to display message dialogs.
      Returns:
      a list of map components, or an empty list. Must not be null. Each of the elements in the returned list must be included in aMapComponentsToChooseFrom
      Throws:
      TLcyUserCancelledException - This method can throw a TLcyUserCancelledException to indicate that the user has decided to cancel the data loading instead of choosing a handler. In such case, the TLcyDataFormatManager will not indicate to the TLcyDataFormatManager.getLogListener() that the source failed, but rather swallow the exception.