Class DataResource_impl

java.lang.Object
org.apache.uima.resource.Resource_ImplBase
org.apache.uima.resource.impl.DataResource_impl
All Implemented Interfaces:
DataResource, Resource

public class DataResource_impl extends Resource_ImplBase implements DataResource
A simple DataResource implementation that can read data from a file via a URL. There is an attribute for specifying the location of a local cache for a remote file, but this is not currently being used.
  • Constructor Details

    • DataResource_impl

      public DataResource_impl()
  • Method Details

    • initialize

      public boolean initialize(ResourceSpecifier aSpecifier, Map<String,Object> aAdditionalParams) throws ResourceInitializationException
      Initializes this DataResource.
      Specified by:
      initialize in interface Resource
      Overrides:
      initialize in class Resource_ImplBase
      Parameters:
      aSpecifier - describes how to create this DataResource. Must (at least for now) be a FileResourceSpecifier.
      aAdditionalParams - not currently used
      Returns:
      true if and only if initialization completed successfully. Returns false if this implementation cannot handle the given ResourceSpecifier.
      Throws:
      ResourceInitializationException - if a failure occurs during initialization.
      See Also:
    • getInputStream

      public InputStream getInputStream() throws IOException
      Description copied from interface: DataResource
      Gets an InputStream to the data. It is the caller's responsibility to close this input stream when finished with it.
      Specified by:
      getInputStream in interface DataResource
      Returns:
      an InputStream to the data
      Throws:
      IOException - if an I/O error occurred when trying to open the stream
      See Also:
    • getUrl

      public URL getUrl()
      Description copied from interface: DataResource
      Gets the URL where the data is stored. This method may return null if there is no appropriate URL (for example if the data is stored in a relational database). It is recommended that the DataResource.getInputStream() method be used whenever possible - see the class comment for more information.
      Specified by:
      getUrl in interface DataResource
      Returns:
      the URL where the data is stored, or null if this is not available.
      See Also:
    • getUri

      public URI getUri()
      Description copied from interface: DataResource
      Gets the URI of the data. In general, this method will return a URI that is equivalent to the URL returned by DataResource.getUrl(). However, in the case where DataResource.getUrl() returns null (indicating no URL available), this method may still return a URI. This can be the case if the URI does not use a standard protocol such as http or file.
      Specified by:
      getUri in interface DataResource
      Returns:
      The URI of the data
    • getLocalCache

      protected File getLocalCache()
      Gets the file name of the local cache for a remote resource file, if any.
      Returns:
      the local cache File
    • equals

      public boolean equals(Object obj)
      Description copied from interface: DataResource
      Determines if this DataResource is equal to another DataResource. It is important that DataResource implementations override this method appropriately, because the ResourceManager can make use of this method to determine when cached data can be reused. Two DataResources that are equal according to this method will be considered to provide access to the same data; therefore, a common cache can be used.
      Specified by:
      equals in interface DataResource
      Overrides:
      equals in class Object
      Parameters:
      obj - the object to compare to
      Returns:
      true if and only if aObj is a DataResource and provides access to the same data as this object.
      See Also:
    • hashCode

      public int hashCode()
      Description copied from interface: DataResource
      Gest the hash code for this DataResource. As always, if the DataResource.equals(Object) method is overridden, this method should also be overridden. Two objects that are equal must have the same hash code.
      Specified by:
      hashCode in interface DataResource
      Overrides:
      hashCode in class Object
      Returns:
      the hash code for this object
      See Also: