Package org.apache.nutch.plugin
package org.apache.nutch.plugin
The Nutch
Plugin System.
The Nutch Plugin System provides a way to extend nutch functionality. A large part of the functionality of Nutch are provided by plugins: All of the parsing, indexing and searching that nutch does is actually accomplished by various plugins.
In writing a plugin, you're actually providing one or more extensions
of the existing extension-points (hooks). The core Nutch extension-points
are themselves defined in a plugin, the nutch-extensionpoints plugin.
Each extension-point defines an interface that must be implemented by the
extension. The core extension-points and extensions available in Nutch are
listed in the Pluggable interface.
-
ClassDescription
CircularDependencyExceptionwill be thrown if a circular dependency is detected.AnExtensionis a kind of listener descriptor that will be installed on a concreteExtensionPointthat acts as kind of Publisher.TheExtensionPointprovide meta information of a extension point.MissingDependencyExceptionwill be thrown if a plugin dependency cannot be found.Defines the capability of a class to be plugged into Nutch.A nutch-plugin is an container for a set of custom logic that provide extensions to the nutch core functionality or another plugin that provides an API for extending.ThePluginClassLoaderis a child-first classloader that only contains classes of the runtime libraries setuped in the plugin manifest file and exported libraries of plugins that are required plugins.ThePluginDescriptorprovide access to all meta information of a nutch-plugin, as well to the internationalizable resources and the plugin own classloader.ThePluginManifestParserprovides a mechanism for parsing Nutch plugin manifest files (plugin.xml) contained in aStringof plugin directories.The plugin repository is a registry of all plugins.PluginRuntimeExceptionwill be thrown until a exception in the plugin managemnt occurs.This URLStreamHandlerFactory knows about all the plugins in use and thus can create the correct URLStreamHandler even if it comes from a plugin classpath.