Class AdapterFileManager

java.lang.Object
org.apache.jena.riot.adapters.AdapterFileManager
All Implemented Interfaces:
FileManager

public class AdapterFileManager extends Object implements FileManager
FileManager A FileManager provides access to named file-like resources by opening InputStreams to things in the filing system, by URL (http: and file:) and found by the classloader. It can also load RDF data from such a system resource into an existing model or create a new (Memory-based) model. There is a global FileManager which provide uniform access to system resources: applications may also create specialised FileManagers. A FileManager contains a list of location functions to try: the global FileManger has one LocatorFile, one LocatorClassLoader and one LocatorURL Main operations:
  • loadModel, readModel : URI to model
  • open, openNoMap : URI to input stream
  • mapURI : map URI to another by LocationMapper
Utilities:
  • readWholeFileAsUTF8
A FileManager works in conjunction with a LocationMapper. A LocationMapper is a set of alternative locations for system resources and a set of alternative prefix locations. For example, a local copy of a common RDF dataset may be used whenever the usual URL is used by the application. The LocatorFile also supports the idea of "current directory".
See Also:
  • Constructor Details

    • AdapterFileManager

      public AdapterFileManager(StreamManager streamManager)
    • AdapterFileManager

      public AdapterFileManager(StreamManager streamManager, LocationMapper mapper)
      Create a FileManger using a RIOT StreamManager and RIOT LocationMapper
  • Method Details

    • get

      public static AdapterFileManager get()
      Get the global file manager.
      Returns:
      the global file manager
    • setGlobalFileManager

      public static void setGlobalFileManager(AdapterFileManager globalFileManager)
      Set the global file manager (as returned by get()) If called before any call to get(), then the usual default filemanager is not created
      Parameters:
      globalFileManager -
    • clone

      public FileManager clone()
      Specified by:
      clone in interface FileManager
    • makeGlobal

      public static AdapterFileManager makeGlobal()
      Create a "standard" FileManager.
    • getStreamManager

      public StreamManager getStreamManager()
      Return the associate stream manager
    • setLocationMapper

      public void setLocationMapper(LocationMapper mapper)
      Set the location mapping
      Specified by:
      setLocationMapper in interface FileManager
    • getLocationMapper

      public LocationMapper getLocationMapper()
      Get the location mapping
      Specified by:
      getLocationMapper in interface FileManager
    • locators

      public Iterator<Locator> locators()
      Return an iterator over all the handlers
      Specified by:
      locators in interface FileManager
    • remove

      public void remove(Locator loc)
      Remove a locator
      Specified by:
      remove in interface FileManager
    • addLocator

      public void addLocator(Locator oldloc)
      Add a locator to the end of the locators list
      Specified by:
      addLocator in interface FileManager
    • addLocatorFile

      public void addLocatorFile()
      Add a file locator
      Specified by:
      addLocatorFile in interface FileManager
    • addLocatorFile

      public void addLocatorFile(String dir)
      Add a file locator which uses dir as its working directory
      Specified by:
      addLocatorFile in interface FileManager
    • addLocatorClassLoader

      public void addLocatorClassLoader(ClassLoader cLoad)
      Add a class loader locator
      Specified by:
      addLocatorClassLoader in interface FileManager
    • addLocatorURL

      public void addLocatorURL()
      Specified by:
      addLocatorURL in interface FileManager
    • addLocatorHTTP

      public void addLocatorHTTP()
    • addLocatorFTP

      public void addLocatorFTP()
    • addLocatorZip

      public void addLocatorZip(String zfn)
      Add a zip file locator
      Specified by:
      addLocatorZip in interface FileManager
    • resetCache

      public void resetCache()
      Reset the model cache
      Specified by:
      resetCache in interface FileManager
    • setModelCaching

      public void setModelCaching(boolean state)
      Change the state of model cache : does not clear the cache
      Specified by:
      setModelCaching in interface FileManager
    • isCachingModels

      public boolean isCachingModels()
      return whether caching is on of off
      Specified by:
      isCachingModels in interface FileManager
    • getFromCache

      public Model getFromCache(String filenameOrURI)
      Read out of the cache - return null if not in the cache
      Specified by:
      getFromCache in interface FileManager
    • hasCachedModel

      public boolean hasCachedModel(String filenameOrURI)
      Specified by:
      hasCachedModel in interface FileManager
    • addCacheModel

      public void addCacheModel(String uri, Model m)
      Specified by:
      addCacheModel in interface FileManager
    • removeCacheModel

      public void removeCacheModel(String uri)
      Specified by:
      removeCacheModel in interface FileManager
    • open

      public InputStream open(String filenameOrURI)
      Open a file using the locators of this FileManager Throws RiotNotFoundException if not found.
      Specified by:
      open in interface FileManager
    • mapURI

      public String mapURI(String filenameOrURI)
      Apply the mapping of a filename or URI
      Specified by:
      mapURI in interface FileManager
    • openNoMap

      public InputStream openNoMap(String filenameOrURI)
      Open a file using the locators of this FileManager but without location mapping. Throws RiotNotFoundException if not found.
      Specified by:
      openNoMap in interface FileManager
    • openNoMapOrNull

      public TypedStream openNoMapOrNull(String filenameOrURI)
      Open a file using the locators of this FileManager without location mapping. Return null if not found
      Specified by:
      openNoMapOrNull in interface FileManager
    • loadModelInternal

      public Model loadModelInternal(String filenameOrURI)
      Specified by:
      loadModelInternal in interface FileManager
    • loadModel

      @Deprecated public Model loadModel(String filenameOrURI, String rdfSyntax)
      Deprecated.
      Load a model from a file (local or remote). URI is the base for reading the model.
      Specified by:
      loadModel in interface FileManager
      Parameters:
      filenameOrURI - The filename or a URI (file:, http:)
      rdfSyntax - RDF Serialization syntax.
      Returns:
      a new model
      Throws:
      JenaException - if there is syntax error in file.
    • loadModel

      @Deprecated public Model loadModel(String filenameOrURI, String baseURI, String rdfSyntax)
      Deprecated.
      Load a model from a file (local or remote).
      Specified by:
      loadModel in interface FileManager
      Parameters:
      filenameOrURI - The filename or a URI (file:, http:)
      baseURI - Base URI for loading the RDF model.
      rdfSyntax - RDF Serialization syntax.
      Returns:
      a new model
      Throws:
      JenaException - if there is syntax error in file.
    • readModelInternal

      public Model readModelInternal(Model model, String filenameOrURI)
      Specified by:
      readModelInternal in interface FileManager
    • readModel

      @Deprecated public Model readModel(Model model, String filenameOrURI, String rdfSyntax)
      Deprecated.
      Read a file of RDF into a model.
      Specified by:
      readModel in interface FileManager
      Parameters:
      model -
      filenameOrURI -
      rdfSyntax - RDF Serialization syntax.
      Returns:
      The model or null, if there was an error.
      Throws:
      JenaException - if there is syntax error in file.
    • readModel

      @Deprecated public Model readModel(Model model, String filenameOrURI, String baseURI, String syntax)
      Deprecated.
      Read a file of RDF into a model.
      Specified by:
      readModel in interface FileManager
      Parameters:
      model -
      filenameOrURI -
      baseURI -
      syntax -
      Returns:
      The model
      Throws:
      JenaException - if there is syntax error in file.
    • readWholeFileAsUTF8

      @Deprecated public String readWholeFileAsUTF8(InputStream in)
      Deprecated.
      Use IO.readWholeFileAsUTF8(InputStream)
      Specified by:
      readWholeFileAsUTF8 in interface FileManager
    • readWholeFileAsUTF8

      @Deprecated public String readWholeFileAsUTF8(String filename)
      Deprecated.
      Use IO.readWholeFileAsUTF8(String)
      Specified by:
      readWholeFileAsUTF8 in interface FileManager