Package org.apache.tika.plugins
Class PluginComponentLoader
java.lang.Object
org.apache.tika.plugins.PluginComponentLoader
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic <T extends TikaExtension>
Map<String,T> loadInstances(org.pf4j.PluginManager pluginManager, Class<? extends TikaExtensionFactory<T>> factoryClass, com.fasterxml.jackson.databind.JsonNode configNode) Load multiple named instances from config, grouped by type.static <T extends TikaExtension>
Optional<T>loadSingleton(org.pf4j.PluginManager pluginManager, Class<? extends TikaExtensionFactory<T>> factoryClass, com.fasterxml.jackson.databind.JsonNode configNode) Load a singleton component from config.static <T extends TikaExtension>
List<T>loadUnnamedInstances(org.pf4j.PluginManager pluginManager, Class<? extends TikaExtensionFactory<T>> factoryClass, com.fasterxml.jackson.databind.JsonNode configNode) Load multiple unnamed instances from config, keyed by type name.
-
Constructor Details
-
PluginComponentLoader
public PluginComponentLoader()
-
-
Method Details
-
loadSingleton
public static <T extends TikaExtension> Optional<T> loadSingleton(org.pf4j.PluginManager pluginManager, Class<? extends TikaExtensionFactory<T>> factoryClass, com.fasterxml.jackson.databind.JsonNode configNode) throws TikaConfigException, IOException Load a singleton component from config.JSON structure: { "typeName": { config } }
- Returns:
- Optional containing the instance, or empty if configNode is null/empty
- Throws:
TikaConfigExceptionIOException
-
loadInstances
public static <T extends TikaExtension> Map<String,T> loadInstances(org.pf4j.PluginManager pluginManager, Class<? extends TikaExtensionFactory<T>> factoryClass, com.fasterxml.jackson.databind.JsonNode configNode) throws TikaConfigException, IOException Load multiple named instances from config, grouped by type.JSON structure:
{ "typeName": { "instanceId1": { config }, "instanceId2": { config } }, "typeName2": { "instanceId3": { config } } }- Throws:
TikaConfigExceptionIOException
-
loadUnnamedInstances
public static <T extends TikaExtension> List<T> loadUnnamedInstances(org.pf4j.PluginManager pluginManager, Class<? extends TikaExtensionFactory<T>> factoryClass, com.fasterxml.jackson.databind.JsonNode configNode) throws TikaConfigException, IOException Load multiple unnamed instances from config, keyed by type name.JSON structure: { "typeName": { config }, "typeName2": { config2 }, ... }
Use this for composite components like reporters where each type appears once and instances don't need individual names.
- Returns:
- List of instances in config order, empty list if configNode is null/empty
- Throws:
TikaConfigExceptionIOException
-