Package org.apache.tika.config.loader
Class DetectorLoader
java.lang.Object
org.apache.tika.config.loader.AbstractSpiComponentLoader<Detector>
org.apache.tika.config.loader.DetectorLoader
- All Implemented Interfaces:
ComponentLoader<Detector>
Loader for detectors with support for SPI fallback via "default-detector" marker.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected DetectorcreateDefaultComposite(Set<Class<? extends Detector>> exclusions, LoaderContext context) Create the SPI-backed default composite with exclusions.protected DetectorhandleSpecialName(String name, com.fasterxml.jackson.databind.JsonNode configNode, LoaderContext context) Handle special component names that require custom loading.protected DetectorloadComponent(String name, com.fasterxml.jackson.databind.JsonNode configNode, LoaderContext context) Load a single component from config.protected DetectorwrapInComposite(List<Detector> detectors, LoaderContext context) Wrap a list of components in a composite.Methods inherited from class org.apache.tika.config.loader.AbstractSpiComponentLoader
decorateDefaultComposite, getComponentClass, getDefaultMarkerName, getSectionName, load, postProcess, postProcessList, unwrapClass
-
Constructor Details
-
DetectorLoader
public DetectorLoader()
-
-
Method Details
-
loadComponent
protected Detector loadComponent(String name, com.fasterxml.jackson.databind.JsonNode configNode, LoaderContext context) throws TikaConfigException Description copied from class:AbstractSpiComponentLoaderLoad a single component from config. Subclasses can apply decorations (e.g., mime filtering for parsers).- Specified by:
loadComponentin classAbstractSpiComponentLoader<Detector>- Parameters:
name- the component name (friendly name or FQCN)configNode- the JSON configuration for this componentcontext- the loader context- Returns:
- the loaded component
- Throws:
TikaConfigException- if loading fails
-
createDefaultComposite
protected Detector createDefaultComposite(Set<Class<? extends Detector>> exclusions, LoaderContext context) Description copied from class:AbstractSpiComponentLoaderCreate the SPI-backed default composite with exclusions. E.g., new DefaultParser(..., exclusions) or new DefaultDetector(..., exclusions)- Specified by:
createDefaultCompositein classAbstractSpiComponentLoader<Detector>- Parameters:
exclusions- classes to exclude from SPI loadingcontext- the loader context- Returns:
- the default composite
-
wrapInComposite
Description copied from class:AbstractSpiComponentLoaderWrap a list of components in a composite. E.g., new CompositeParser(registry, list) or new CompositeDetector(registry, list)- Specified by:
wrapInCompositein classAbstractSpiComponentLoader<Detector>- Parameters:
detectors- the list of componentscontext- the loader context- Returns:
- the composite component
-
handleSpecialName
protected Detector handleSpecialName(String name, com.fasterxml.jackson.databind.JsonNode configNode, LoaderContext context) throws TikaConfigException Description copied from class:AbstractSpiComponentLoaderHandle special component names that require custom loading. E.g., "mime-types" for detectors returns TikaLoader.getMimeTypes(). Return null for normal handling.- Overrides:
handleSpecialNamein classAbstractSpiComponentLoader<Detector>- Parameters:
name- the component nameconfigNode- the JSON configurationcontext- the loader context- Returns:
- the special component, or null for normal handling
- Throws:
TikaConfigException- if loading fails
-