Class HierarchyTransformer
- All Implemented Interfaces:
Configurable<HierarchyTransformerConfig>,ConfigurableDocHandler<HierarchyTransformerConfig>,DocHandler
Given a separator, split a field string into multiple segments representing each node of a hierarchical branch. This is useful when faceting, to find out how many documents fall under each node of a hierarchy. For example, take this hierarchical string:
/vegetable/potato/sweet
We specify a slash (/) separator and it will produce the following entries in the specified document metadata field:
/vegetable /vegetable/potato /vegetable/potato/sweet
If no target field is specified (toField) the
source field (fromField) will be used to store the resulting
values. The same applies to the source and target hierarchy separators
(fromSeparator and toSeparator).
You can "keepEmptySegments", as well as specify whether the "fromSeparator" is a regular expression. When using regular expression without a "toSeparator", the text matching the expression is kept as is and thus can be different for each segment.
Storing values in an existing field
If a target field with the same name already exists for a document,
values will be added to the end of the existing value list.
It is possible to change this default behavior by supplying a
PropertySetter.
Can be used both as a pre-parse or post-parse handler.
- See Also:
-
Field Summary
Fields inherited from interface com.norconex.commons.lang.config.Configurable
PROPERTYFields inherited from interface com.norconex.importer.handler.DocHandler
NAME -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanbooleanbooleanhandle(DocHandlerContext docCtx) Perform any operations on a document.inthashCode()toString()Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface com.norconex.importer.handler.DocHandler
close, init
-
Constructor Details
-
HierarchyTransformer
public HierarchyTransformer()
-
-
Method Details
-
handle
Description copied from interface:DocHandlerPerform any operations on a document.- Specified by:
handlein interfaceDocHandler- Parameters:
docCtx- the document handling context- Returns:
falseto stop processing and reject a document ortrueto proceed to the next configured handler.- Throws:
IOException- An I/O exception of some sort has occurred
-
getConfiguration
- Specified by:
getConfigurationin interfaceConfigurable<HierarchyTransformerConfig>
-
equals
-
canEqual
-
hashCode
public int hashCode() -
toString
-