Interface DataProvider

All Known Implementing Classes:
AbstractListCrawler, ClasspathCrawler, DirectoryCrawler, FilesListCrawler, NetworkCrawler, ZipJarCrawler

public interface DataProvider
Interface for providing data files to file loaders.

This interface defines a generic way to explore some collection holding data files and load some of them. The collection may be a list of resources in the classpath, a directories tree in filesystem, a zip or jar archive, a database, a connexion to a remote server ...

The proper way to use this interface is to configure one or more implementations and register them in the data providers manager singleton, or to let this manager use its default configuration. Once registered, they will be used automatically whenever some data needs to be loaded. This allow high level applications developers to customize Orekit data loading mechanism and get a tighter integration of the library within their application.

Author:
Luc Maisonobe
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final Pattern
    Pattern for name of zip/jar archives.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    feed(Pattern supported, DataLoader visitor, DataProvidersManager manager)
    Feed a data file loader by browsing the data collection.
  • Field Details

    • ZIP_ARCHIVE_PATTERN

      static final Pattern ZIP_ARCHIVE_PATTERN
      Pattern for name of zip/jar archives.
  • Method Details

    • feed

      boolean feed(Pattern supported, DataLoader visitor, DataProvidersManager manager)
      Feed a data file loader by browsing the data collection.

      The method crawls all files referenced in the instance (for example all files in a directories tree) and for each file supported by the file loader it asks the file loader to load it.

      If the method completes without exception, then the data loader is considered to have been fed successfully and the top level data providers manager will return immediately without attempting to use the next configured providers.

      If the method completes abruptly with an exception, then the top level data providers manager will try to use the next configured providers, in case another one can feed the data loader.

      Parameters:
      supported - pattern for file names supported by the visitor
      visitor - data file visitor to use
      manager - with the filters to apply to the resources.
      Returns:
      true if some data has been loaded