org.apache.uima.resource.impl

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

- - ### 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 and Description
    `DataResource_impl()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `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

      `destroy, getCasManager, getLogger, getMetaData, getRelativePathResolver, getResourceManager, getUimaContext, getUimaContextAdmin, setLogger, setMetaData`

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

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

- - ### Constructor Detail

    - #### DataResource_impl

          public DataResource_impl()

  - ### Method Detail

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

    - #### 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()`

    - #### 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()`

    - #### 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 `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()`

Copyright © 2006–2021 The Apache Software Foundation. All rights reserved.