Package org.apache.uima.resource.impl

# Class ConfigurableDataResource_impl

java.lang.Object
org.apache.uima.resource.Resource_ImplBase
org.apache.uima.resource.impl.ConfigurableDataResource_impl

All Implemented Interfaces:
  `DataResource`, `Resource`

public class ConfigurableDataResource_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.

- ## Field Summary

  ### Fields inherited from interface org.apache.uima.resource.DataResource

  `PARAM_RELATIVE_PATH_RESOLVER`

  ### Fields inherited from interface org.apache.uima.resource.Resource

  `PARAM_AGGREGATE_SOFA_MAPPINGS, PARAM_CONFIG_MANAGER, PARAM_CONFIG_PARAM_SETTINGS, PARAM_EXTERNAL_OVERRIDE_SETTINGS, PARAM_PERFORMANCE_TUNING_SETTINGS, PARAM_RESOURCE_MANAGER, PARAM_UIMA_CONTEXT`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ConfigurableDataResource_impl()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `destroy()`
  Releases all resources held by this `Resource`.
  `boolean`
  `equals(Object obj)`
  Determines if this `DataResource` is equal to another `DataResource`.
  `InputStream`
  `getInputStream()`
  Gets an `InputStream` to the data.
  `protected File`
  `getLocalCache()`
  Gets the file name of the local cache for a remote resource file, if any.
  `URI`
  `getUri()`
  Gets the URI of the data.
  `URL`
  `getUrl()`
  Gets the URL where the data is stored.
  `int`
  `hashCode()`
  Gest the hash code for this `DataResource`.
  `boolean`
  `initialize(ResourceSpecifier aSpecifier, Map<String,Object> aAdditionalParams)`
  Initializes this DataResource.

  ### Methods inherited from class org.apache.uima.resource.Resource_ImplBase

  `getCasManager, getLogger, getMetaData, getRelativePathResolver, getResourceManager, getUimaContext, getUimaContextAdmin, loadUserClass, loadUserClassOrThrow, setContextHolder, setContextHolderX, setLogger, setMetaData, withContextHolder`

  ### Methods inherited from class java.lang.Object

  `clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

  ### Methods inherited from interface org.apache.uima.resource.Resource

  `getLogger, getMetaData, getResourceManager, getUimaContext, getUimaContextAdmin, setLogger`

- ## Constructor Details

  - ### ConfigurableDataResource_impl

    public ConfigurableDataResource_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:
      - `Resource.initialize(ResourceSpecifier, Map)`

  - ### destroy

    public void destroy()
    Description copied from interface: `Resource`
    Releases all resources held by this `Resource`.
    Specified by:
      `destroy` in interface `Resource`
    Overrides:
      `destroy` in class `Resource_ImplBase`
    See Also:
      - `Resource.destroy()`

  - ### 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:
      - `DataResource.getInputStream()`

  - ### 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

  - ### 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:
      - `DataResource.getUrl()`

  - ### getLocalCache

    protected File getLocalCache()
    Gets the file name of the local cache for a remote resource file, if any. This is not currently supported; it always returns null.
    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 `DataResource`s 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:
      - `DataResource.equals(java.lang.Object)`

  - ### 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:
      - `DataResource.hashCode()`