org.apache.uima.resource

## Interface ResourceCreationSpecifier

- All Superinterfaces:
    Cloneable, MetaDataObject, ResourceSpecifier, Serializable, XMLizable
  All Known Subinterfaces:
    AnalysisEngineDescription, CasConsumerDescription, CasInitializerDescription, CollectionReaderDescription, FlowControllerDescription, TaeDescription
  All Known Implementing Classes:
    AnalysisEngineDescription_impl, CasConsumerDescription_impl, CasInitializerDescription_impl, CollectionReaderDescription_impl, FlowControllerDescription_impl, ResourceCreationSpecifier_impl, TaeDescription_impl

      public interface ResourceCreationSpecifier
      extends ResourceSpecifier

  A `ResourceCreationSpecifier` is the supertype of `AnalysisEngineDescription`, `CasConsumerDescription`, `CollectionReaderDescription`, and `CasInitializerDescription`.

  All Resource Creation Specifiers must the following:

  - `frameworkImplementation`: The name of the UIMA framework in which the component executes. The name for this implementation is given by `Constants.JAVA_FRAMEWORK_NAME`. A component that runs in the C++ enablement layer needs to have the framework name given by `Constants.CPP_FRAMEWORK_NAME`.
  - `implementationName`: The fully-qualified Java class name of the user's component (Annotator, CAS Consumer, Collection Reader, or CAS Initializer).
  - `metaData`: the `ResourceMetaData` describing the resource
  The following are optional:
  - A set of `ExternalResourceDependency` objects that define this resource's dependencies on other resources.
  - A set of `ExternalResourceDescription` objects that satisfy the dependencies.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `doFullValidation()` Does full validation of this `ResourceCreationSpecifier`.
    `void` | `doFullValidation(ResourceManager aResourceManager)` Does full validation of this `ResourceCreationSpecifier`.
    `ExternalResourceDependency[]` | `getExternalResourceDependencies()` Retrieves descriptions of this `ResourceCreationSpecifier`'s dependencies on external resources.
    `ExternalResourceDependency` | `getExternalResourceDependency(String aKey)` Gets the external resource dependency with the given key.
    `String` | `getFrameworkImplementation()` Gets the name of the AE framework implementation within which the Resource executes.
    `String` | `getImplementationName()` Retrieves the name of this `ResourceCreationSpecifier`'s implementation.
    `ResourceMetaData` | `getMetaData()` Retrieves the `ResourceMetaData` to assign to the newly constructed `ResourceCreationSpecifier`.
    `ResourceManagerConfiguration` | `getResourceManagerConfiguration()` Retrieves the Resource Manager configuration, which declares the resources that satisfy the dependencies defined by `getExternalResourceDependencies()`.
    `void` | `setExternalResourceDependencies(ExternalResourceDependency[] aDependencies)` Sets the descriptions of this `ResourceCreationSpecifier`'s dependencies on external resources.
    `void` | `setFrameworkImplementation(String aFrameworkImplementation)` Sets the name of the AE framework implementation within which the `ResourceCreationSpecifier` executes.
    `void` | `setImplementationName(String aImplementationName)` Sets the name of this `ResourceCreationSpecifier`'s implementation.
    `void` | `setMetaData(ResourceMetaData aMetaData)` Sets the MetaData for this `ResourceCreationSpecifier`.
    `void` | `setResourceManagerConfiguration(ResourceManagerConfiguration aResourceManagerConfiguration)` Sets the Resource Manager configuration, which declares the resources that satisfy the dependencies defined by `getExternalResourceDependencies()`.
    `void` | `validate()` Checks that this `ResourceCreationSpecifier` is valid.
    `void` | `validate(ResourceManager aResourceManager)` Checks that this `ResourceCreationSpecifier` is valid.

    - ### Methods inherited from interface org.apache.uima.resource.metadata.MetaDataObject

      `clone, equals, getAttributeValue, getSourceUrl, getSourceUrlString, isModifiable, listAttributes, setAttributeValue, setSourceUrl`

    - ### Methods inherited from interface org.apache.uima.util.XMLizable

      `buildFromXMLElement, buildFromXMLElement, toXML, toXML, toXML, toXML`

- - ### Method Detail

    - #### getFrameworkImplementation

          String getFrameworkImplementation()

      Gets the name of the AE framework implementation within which the Resource executes. The framework name for this implementation is given by `Constants.JAVA_FRAMEWORK_NAME`..
      Returns:
        the framework implementation name

    - #### setFrameworkImplementation

          void setFrameworkImplementation(String aFrameworkImplementation)

      Sets the name of the AE framework implementation within which the `ResourceCreationSpecifier` executes. The framework name for this implementation is given by `Constants.JAVA_FRAMEWORK_NAME`..
      Parameters:
        `aFrameworkImplementation` - the framework implementation name

    - #### getImplementationName

          String getImplementationName()

      Retrieves the name of this `ResourceCreationSpecifier`'s implementation. This must be a fully qualified Java class name.
      Returns:
        the implementation name of the CasConsumer

    - #### setImplementationName

          void setImplementationName(String aImplementationName)

      Sets the name of this `ResourceCreationSpecifier`'s implementation. This must be a fully qualified Java class name.
      Parameters:
        `aImplementationName` - the implementation name of the CasConsumer

    - #### getMetaData

          ResourceMetaData getMetaData()

      Retrieves the `ResourceMetaData` to assign to the newly constructed `ResourceCreationSpecifier`.
      Returns:
        the metadata for the new resource. This will always be modifiable.

    - #### setMetaData

          void setMetaData(ResourceMetaData aMetaData)

      Sets the MetaData for this `ResourceCreationSpecifier`.
      Parameters:
        `aMetaData` - metadata to assign

    - #### getExternalResourceDependencies

          ExternalResourceDependency[] getExternalResourceDependencies()

      Retrieves descriptions of this `ResourceCreationSpecifier`'s dependencies on external resources. Each required external resource is assigned a String identifier. This is the identifier that this `ResourceCreationSpecifier` can use to locate the Resource (using the `AnnotatorContext.getResourceObject(String)` method).
      Returns:
        an array of `ExternalResourceDependency` objects that describe this AnalysisEngine's resource dependencies.

    - #### setExternalResourceDependencies

          void setExternalResourceDependencies(ExternalResourceDependency[] aDependencies)

      Sets the descriptions of this `ResourceCreationSpecifier`'s dependencies on external resources.
      Parameters:
        `aDependencies` - an array of `ExternalResourceDependency` objects that describe this `ResourceCreationSpecifier`'s resource dependencies.

    - #### getExternalResourceDependency

          ExternalResourceDependency getExternalResourceDependency(String aKey)

      Gets the external resource dependency with the given key.
      Parameters:
        `aKey` - the key of the external resource dependency to get
      Returns:
        the resource dependency with the specified key, `null` if none.

    - #### getResourceManagerConfiguration

          ResourceManagerConfiguration getResourceManagerConfiguration()

      Retrieves the Resource Manager configuration, which declares the resources that satisfy the dependencies defined by `getExternalResourceDependencies()`.
      Returns:
        the Resource Manager configuration that describes how external resource dependencies are bound to actual resources.

    - #### setResourceManagerConfiguration

          void setResourceManagerConfiguration(ResourceManagerConfiguration aResourceManagerConfiguration)

      Sets the Resource Manager configuration, which declares the resources that satisfy the dependencies defined by `getExternalResourceDependencies()`.
      Parameters:
        `aResourceManagerConfiguration` - the Resource Manager configuration that describes how external resource dependencies are bound to actual resources.

    - #### validate

          void validate()
                 throws ResourceInitializationException,
                        ResourceConfigurationException

      Checks that this `ResourceCreationSpecifier` is valid. An exception is thrown if it is not valid. This only does fairly lightweight checking. To do a more complete but more expensive check, use `doFullValidation()`.
      Throws:
        `ResourceInitializationException` - if `aDesc` is invalid
        `ResourceConfigurationException` - if the configuration parameter settings in `aDesc` are invalid

    - #### validate

          void validate(ResourceManager aResourceManager)
                 throws ResourceInitializationException,
                        ResourceConfigurationException

      Checks that this `ResourceCreationSpecifier` is valid. An exception is thrown if it is not valid. This only does fairly lightweight checking. To do a more complete but more expensive check, use `doFullValidation()`.
      Parameters:
        `aResourceManager` - a ResourceManager instance to use to resolve imports by name.
      Throws:
        `ResourceInitializationException` - if `aDesc` is invalid
        `ResourceConfigurationException` - if the configuration parameter settings in `aDesc` are invalid

    - #### doFullValidation

          void doFullValidation()
                         throws ResourceInitializationException

      Does full validation of this `ResourceCreationSpecifier`. This essentially performs all operations necessary to instantiate a Resource except that it does not actually instantiate the implementation class. If appropriate, this method will also attempt to create a CAS based on the descriptor, in order to do full type system verification. If any operations fail, an exception will be thrown.
      Throws:
        `ResourceInitializationException` - if validation failed

    - #### doFullValidation

          void doFullValidation(ResourceManager aResourceManager)
                         throws ResourceInitializationException

      Does full validation of this `ResourceCreationSpecifier`. This essentially performs all operations necessary to instantiate a Resource except that it does not actually instantiate the implementation class. If appropriate, this method will also attempt to create a CAS based on the descriptor, in order to do full type system verification. If any operations fail, an exception will be thrown.
      Parameters:
        `aResourceManager` - a ResourceManager instance to use to load annotator classes, external resource classes, and resolve imports by name.
      Throws:
        `ResourceInitializationException` - if validation failed

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