Package org.apache.uima.impl
Class CompositeResourceFactory_impl
- java.lang.Object
-
- org.apache.uima.impl.CompositeResourceFactory_impl
-
- All Implemented Interfaces:
CompositeResourceFactory
,ResourceFactory
public class CompositeResourceFactory_impl extends java.lang.Object implements CompositeResourceFactory
A registry containing (ResourceSpecifier Class,ResourceFactory
) pairs. Also implements theResourceFactory
interface, and produces resources by delegating to the most recently registeredResourceFactory
instance that can handle the class of the given specifier object.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
CompositeResourceFactory_impl.Registration
Inner class that holds information on a registered factory.
-
Field Summary
Fields Modifier and Type Field Description private java.util.List<CompositeResourceFactory_impl.Registration>
mRegisteredFactories
List of Registration objects.
-
Constructor Summary
Constructors Constructor Description CompositeResourceFactory_impl()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Resource
produceResource(java.lang.Class<? extends Resource> aResourceClass, ResourceSpecifier aSpecifier, java.util.Map<java.lang.String,java.lang.Object> aAdditionalParams)
Produces an appropriateResource
instance from aResourceSpecifier
.void
registerFactory(java.lang.Class aResourceSpecifierInterface, ResourceFactory aFactory)
Registers a ResourceFactory with this composite factory.
-
-
-
Field Detail
-
mRegisteredFactories
private java.util.List<CompositeResourceFactory_impl.Registration> mRegisteredFactories
List of Registration objects.
-
-
Method Detail
-
produceResource
public Resource produceResource(java.lang.Class<? extends Resource> aResourceClass, ResourceSpecifier aSpecifier, java.util.Map<java.lang.String,java.lang.Object> aAdditionalParams) throws ResourceInitializationException
Description copied from interface:ResourceFactory
Produces an appropriateResource
instance from aResourceSpecifier
. This version ofproduceResource
takes a Map containing additional parameters to be passed to theResource.initialize(ResourceSpecifier,Map)
method.- Specified by:
produceResource
in interfaceResourceFactory
- Parameters:
aResourceClass
- the class of resource to be produced (NOTE: this is intended to be a standard UIMA interface name such as "TextAnalysisEngine" or "ASB")aSpecifier
- an object that specifies how to acquire an instance of aResource
.aAdditionalParams
- a Map containing additional parameters to pass to theResource.initialize(ResourceSpecifier,Map)
method. May benull
if there are no parameters.- Returns:
- a
Resource
instance. Returnsnull
if this factory does not know how to create a Resource from theResourceSpecifier
provided. - Throws:
ResourceInitializationException
- if a failure occurred during production of the resource- See Also:
ResourceFactory.produceResource(java.lang.Class, org.apache.uima.resource.ResourceSpecifier, java.util.Map)
-
registerFactory
public void registerFactory(java.lang.Class aResourceSpecifierInterface, ResourceFactory aFactory)
Description copied from interface:CompositeResourceFactory
Registers a ResourceFactory with this composite factory.- Specified by:
registerFactory
in interfaceCompositeResourceFactory
- Parameters:
aResourceSpecifierInterface
- the subinterface ofResourceSpecifier
that the factory can handleaFactory
- the factory used to create resources from resource specifiers of the given type- See Also:
CompositeResourceFactory.registerFactory(Class,ResourceFactory)
-
-