Package org.apache.uima.resource.impl
Class ResourceCreationSpecifier_impl
java.lang.Object
org.apache.uima.resource.metadata.impl.MetaDataObject_impl
org.apache.uima.resource.impl.ResourceCreationSpecifier_impl
- All Implemented Interfaces:
Serializable
,Cloneable
,MetaDataObject
,ResourceCreationSpecifier
,ResourceSpecifier
,XMLizable
- Direct Known Subclasses:
AnalysisEngineDescription_impl
,CasConsumerDescription_impl
,CasInitializerDescription_impl
,CollectionReaderDescription_impl
,FlowControllerDescription_impl
public class ResourceCreationSpecifier_impl
extends MetaDataObject_impl
implements ResourceCreationSpecifier
Reference implementation of
ResourceCreationSpecifier
.- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.uima.resource.metadata.impl.MetaDataObject_impl
MetaDataObject_impl.MetaDataAttr, MetaDataObject_impl.SerialContext, MetaDataObject_impl.Serializer
-
Field Summary
Fields inherited from class org.apache.uima.resource.metadata.impl.MetaDataObject_impl
serialContext
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected void
Checks for duplicate parameter names and throws an exception if any are found.protected void
checkForInvalidParameterOverrides
(ConfigurationParameter[] aParams, String aGroupName, ResourceManager aResourceManager) Checks parameter overrides and throws a ResourceInitializationException if they are invalid.void
Does full validation of thisResourceCreationSpecifier
.void
doFullValidation
(ResourceManager aResourceManager) Does full validation of thisResourceCreationSpecifier
.Retrieves descriptions of thisResourceCreationSpecifier
's dependencies on external resources.Gets the external resource dependency with the given key.Gets the name of the AE framework implementation within which the Resource executes.Retrieves the name of thisResourceCreationSpecifier
's implementation.Retrieves theResourceMetaData
to assign to the newly constructedResourceCreationSpecifier
.Retrieves the Resource Manager configuration, which declares the resources that satisfy the dependencies defined byResourceCreationSpecifier.getExternalResourceDependencies()
.protected XmlizationInfo
To be implemented by subclasses to return information describing how to represent this object in XML.void
setExternalResourceDependencies
(ExternalResourceDependency... aDependencies) Sets the descriptions of thisResourceCreationSpecifier
's dependencies on external resources.void
setFrameworkImplementation
(String aFrameworkImplementation) Sets the name of the AE framework implementation within which theResourceCreationSpecifier
executes.void
setImplementationName
(String aImplementationName) Sets the name of thisResourceCreationSpecifier
's implementation.void
setMetaData
(ResourceMetaData aMetaData) Sets the MetaData for thisResourceCreationSpecifier_impl
.void
setResourceManagerConfiguration
(ResourceManagerConfiguration aResourceManagerConfiguration) Sets the Resource Manager configuration, which declares the resources that satisfy the dependencies defined byResourceCreationSpecifier.getExternalResourceDependencies()
.final void
validate()
Determines if the AnalysisEngineDescription is valid.void
validate
(ResourceManager aResourceManager) Checks that thisResourceCreationSpecifier
is valid.protected void
validateConfigurationParameters
(ResourceManager aResourceManager) Validates configuration parameters within this Resource, and throws an exception if they are not valid.Methods inherited from class org.apache.uima.resource.metadata.impl.MetaDataObject_impl
buildFromXMLElement, buildFromXMLElement, clone, equals, getAdditionalAttributes, getAttributeClass, getAttributeValue, getInfoset, getMatchingNode, getPropertyDescriptors, getPropertyXmlInfo, getRelativePathBase, getSerialContext, getSourceUrl, getSourceUrlString, getWrapperClass, getXMLAttributes, hashCode, isModifiable, listAttributes, readArrayPropertyValueFromXMLElement, readMapPropertyFromXml, readPropertyValueFromXMLElement, readUnknownPropertyValueFromXMLElement, resolveSettings, setAttributeValue, setInfoset, setSourceUrl, setSourceUrlIfNull, toString, toXML, toXML, toXML, toXML, valueIsNullOrEmptyArray, writeArrayPropertyAsElement, writeMapPropertyToXml, writePropertyAsElement
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
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
-
Constructor Details
-
ResourceCreationSpecifier_impl
public ResourceCreationSpecifier_impl()
-
-
Method Details
-
getFrameworkImplementation
Description copied from interface:ResourceCreationSpecifier
Gets the name of the AE framework implementation within which the Resource executes. The framework name for this implementation is given byConstants.JAVA_FRAMEWORK_NAME
..- Specified by:
getFrameworkImplementation
in interfaceResourceCreationSpecifier
- Returns:
- the framework implementation name
- See Also:
-
setFrameworkImplementation
Description copied from interface:ResourceCreationSpecifier
Sets the name of the AE framework implementation within which theResourceCreationSpecifier
executes. The framework name for this implementation is given byConstants.JAVA_FRAMEWORK_NAME
..- Specified by:
setFrameworkImplementation
in interfaceResourceCreationSpecifier
- Parameters:
aFrameworkImplementation
- the framework implementation name- See Also:
-
getImplementationName
Description copied from interface:ResourceCreationSpecifier
Retrieves the name of thisResourceCreationSpecifier
's implementation. This must be a fully qualified Java class name.- Specified by:
getImplementationName
in interfaceResourceCreationSpecifier
- Returns:
- the implementation name of the CasConsumer
- See Also:
-
setImplementationName
Description copied from interface:ResourceCreationSpecifier
Sets the name of thisResourceCreationSpecifier
's implementation. This must be a fully qualified Java class name.- Specified by:
setImplementationName
in interfaceResourceCreationSpecifier
- Parameters:
aImplementationName
- the implementation name of the CasConsumer- See Also:
-
getMetaData
Description copied from interface:ResourceCreationSpecifier
Retrieves theResourceMetaData
to assign to the newly constructedResourceCreationSpecifier
.- Specified by:
getMetaData
in interfaceResourceCreationSpecifier
- Returns:
- the metadata for the new resource. This will always be modifiable.
- See Also:
-
setMetaData
Sets the MetaData for thisResourceCreationSpecifier_impl
. Users should not do this, so this method is not published through theResourceCreationSpecifier
interface.- Specified by:
setMetaData
in interfaceResourceCreationSpecifier
- Parameters:
aMetaData
- metadata to assign
-
getExternalResourceDependencies
Description copied from interface:ResourceCreationSpecifier
Retrieves descriptions of thisResourceCreationSpecifier
's dependencies on external resources. Each required external resource is assigned a String identifier. This is the identifier that thisResourceCreationSpecifier
can use to locate the Resource (using theUimaContext.getResourceObject(String)
method).- Specified by:
getExternalResourceDependencies
in interfaceResourceCreationSpecifier
- Returns:
- an array of
ExternalResourceDependency
objects that describe this AnalysisEngine's resource dependencies. - See Also:
-
setExternalResourceDependencies
Description copied from interface:ResourceCreationSpecifier
Sets the descriptions of thisResourceCreationSpecifier
's dependencies on external resources.- Specified by:
setExternalResourceDependencies
in interfaceResourceCreationSpecifier
- Parameters:
aDependencies
- an array ofExternalResourceDependency
objects that describe thisResourceCreationSpecifier
's resource dependencies.- See Also:
-
getExternalResourceDependency
Description copied from interface:ResourceCreationSpecifier
Gets the external resource dependency with the given key.- Specified by:
getExternalResourceDependency
in interfaceResourceCreationSpecifier
- Parameters:
aKey
- the key of the external resource dependency to get- Returns:
- the resource dependency with the specified key,
null
if none. - See Also:
-
getResourceManagerConfiguration
Description copied from interface:ResourceCreationSpecifier
Retrieves the Resource Manager configuration, which declares the resources that satisfy the dependencies defined byResourceCreationSpecifier.getExternalResourceDependencies()
.- Specified by:
getResourceManagerConfiguration
in interfaceResourceCreationSpecifier
- Returns:
- the Resource Manager configuration that describes how external resource dependencies are bound to actual resources.
-
setResourceManagerConfiguration
public void setResourceManagerConfiguration(ResourceManagerConfiguration aResourceManagerConfiguration) Description copied from interface:ResourceCreationSpecifier
Sets the Resource Manager configuration, which declares the resources that satisfy the dependencies defined byResourceCreationSpecifier.getExternalResourceDependencies()
.- Specified by:
setResourceManagerConfiguration
in interfaceResourceCreationSpecifier
- Parameters:
aResourceManagerConfiguration
- the Resource Manager configuration that describes how external resource dependencies are bound to actual resources.
-
doFullValidation
Description copied from interface:ResourceCreationSpecifier
Does full validation of thisResourceCreationSpecifier
. 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.- Specified by:
doFullValidation
in interfaceResourceCreationSpecifier
- Throws:
ResourceInitializationException
- if validation failed
-
doFullValidation
public void doFullValidation(ResourceManager aResourceManager) throws ResourceInitializationException Description copied from interface:ResourceCreationSpecifier
Does full validation of thisResourceCreationSpecifier
. 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.- Specified by:
doFullValidation
in interfaceResourceCreationSpecifier
- Parameters:
aResourceManager
- a ResourceManager instance to use to load annotator classes, external resource classes, and resolve imports by name.- Throws:
ResourceInitializationException
- if validation failed
-
validate
Determines if the AnalysisEngineDescription is valid. An exception is thrown if it is not valid. This should be called from this Analysis Engine's initialize method. Note this does not check configuration parameter settings - that must be done by an explicit call to validateConfigurationParameterSettings.- Specified by:
validate
in interfaceResourceCreationSpecifier
- Throws:
ResourceInitializationException
- ifaDesc
is invalidResourceConfigurationException
- if the configuration parameter settings inaDesc
are invalid
-
validate
public void validate(ResourceManager aResourceManager) throws ResourceInitializationException, ResourceConfigurationException Description copied from interface:ResourceCreationSpecifier
Checks that thisResourceCreationSpecifier
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, useResourceCreationSpecifier.doFullValidation()
.- Specified by:
validate
in interfaceResourceCreationSpecifier
- Parameters:
aResourceManager
- a ResourceManager instance to use to resolve imports by name.- Throws:
ResourceInitializationException
- ifaDesc
is invalidResourceConfigurationException
- if the configuration parameter settings inaDesc
are invalid
-
validateConfigurationParameters
protected void validateConfigurationParameters(ResourceManager aResourceManager) throws ResourceInitializationException Validates configuration parameters within this Resource, and throws an exception if they are not valid.This method checks to make sure that there are no duplicate configuration group names or duplicate parameter names within groups. For aggregates, it also checks that parameter overrides are valid, and logs a warning for parameters with no overrides. (For primitives, there should be no overrides.)
- Parameters:
aResourceManager
- used to resolve import by name. This is necessary to validate configuration parameter overrides.- Throws:
ResourceInitializationException
- if the configuration parameters are invalid
-
checkForDuplicateParameterNames
protected void checkForDuplicateParameterNames(ConfigurationParameter[] aParams) throws ResourceInitializationException Checks for duplicate parameter names and throws an exception if any are found.- Parameters:
aParams
- an array of ConfigurationParameters- Throws:
ResourceInitializationException
- if there is a duplicate parameter name in the arrays
-
checkForInvalidParameterOverrides
protected void checkForInvalidParameterOverrides(ConfigurationParameter[] aParams, String aGroupName, ResourceManager aResourceManager) throws ResourceInitializationException Checks parameter overrides and throws a ResourceInitializationException if they are invalid. Note that since overrides are invalid in primitive components, this default implementation throws an exception for ANY parameter override it finds. AnalysisEngineDescription_impl overrides this method to correctly handle parameter overrides in aggregates.- Parameters:
aParams
- an array of ConfigurationParametersaGroupName
- name of groups in which these parameters are contained. Null if no groupaResourceManager
- used to resolve imports by name.- Throws:
ResourceInitializationException
- if there is an invalid parameter override declaration
-
getXmlizationInfo
Description copied from class:MetaDataObject_impl
To be implemented by subclasses to return information describing how to represent this object in XML.- Specified by:
getXmlizationInfo
in classMetaDataObject_impl
- Returns:
- information defining this object's XML representation
-