Package org.apache.tika.parser
Class ParserDecorator
java.lang.Object
org.apache.tika.parser.ParserDecorator
- All Implemented Interfaces:
Serializable
,Parser
- Direct Known Subclasses:
CTAKESParser
,DigestingParser
,ParserPostProcessor
,RecursiveParserWrapper
,StatefulParser
Decorator base class for the
Parser
interface.
This class simply delegates all parsing calls to an underlying decorated parser instance. Subclasses can provide extra decoration by overriding the parse method.
To decorate several different parsers at the same time, wrap them in
a CompositeParser
instance first.
- See Also:
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptiongetSupportedTypes
(ParseContext context) Delegates the method call to the decorated parser.Gets the parser wrapped by this ParserDecoratorvoid
parse
(InputStream stream, ContentHandler handler, Metadata metadata, ParseContext context) Delegates the method call to the decorated parser.static final Parser
withFallbacks
(Collection<? extends Parser> parsers, Set<MediaType> types) Deprecated.static final Parser
withoutTypes
(Parser parser, Set<MediaType> excludeTypes) Decorates the given parser so that it never claims to support parsing of the given media types, but will work for all others.static final Parser
Decorates the given parser so that it always claims to support parsing of the given media types.
-
Constructor Details
-
ParserDecorator
Creates a decorator for the given parser.- Parameters:
parser
- the parser instance to be decorated
-
-
Method Details
-
withTypes
Decorates the given parser so that it always claims to support parsing of the given media types.- Parameters:
parser
- the parser to be decoratedtypes
- supported media types- Returns:
- the decorated parser
-
withoutTypes
Decorates the given parser so that it never claims to support parsing of the given media types, but will work for all others.- Parameters:
parser
- the parser to be decoratedexcludeTypes
- excluded/ignored media types- Returns:
- the decorated parser
-
withFallbacks
@Deprecated public static final Parser withFallbacks(Collection<? extends Parser> parsers, Set<MediaType> types) Deprecated.This has been replaced byFallbackParser
Decorates the given parsers into a virtual parser, where they'll be tried in preference order until one works without error. -
getSupportedTypes
Delegates the method call to the decorated parser. Subclasses should override this method (and usesuper.getSupportedTypes()
to invoke the decorated parser) to implement extra decoration.- Specified by:
getSupportedTypes
in interfaceParser
- Parameters:
context
- parse context- Returns:
- immutable set of media types
-
parse
public void parse(InputStream stream, ContentHandler handler, Metadata metadata, ParseContext context) throws IOException, SAXException, TikaException Delegates the method call to the decorated parser. Subclasses should override this method (and usesuper.parse()
to invoke the decorated parser) to implement extra decoration.- Specified by:
parse
in interfaceParser
- Parameters:
stream
- the document stream (input)handler
- handler for the XHTML SAX events (output)metadata
- document metadata (input and output)context
- parse context- Throws:
IOException
- if the document stream could not be readSAXException
- if the SAX events could not be processedTikaException
- if the document could not be parsed
-
getDecorationName
- Returns:
- A name/description of the decoration, or null if none available
-
getWrappedParser
Gets the parser wrapped by this ParserDecorator- Returns:
- the parser wrapped by this ParserDecorator
-
FallbackParser