org.apache.tika.parser
Class ParserDecorator

java.lang.Object
  extended by org.apache.tika.parser.AbstractParser
      extended by org.apache.tika.parser.ParserDecorator
All Implemented Interfaces:
Serializable, Parser
Direct Known Subclasses:
ParserPostProcessor

public class ParserDecorator
extends AbstractParser

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.

See Also:
Serialized Form

Constructor Summary
ParserDecorator(Parser parser)
          Creates a decorator for the given parser.
 
Method Summary
 Set<MediaType> getSupportedTypes(ParseContext context)
          Delegates the method call to the decorated parser.
 Parser getWrappedParser()
          Gets the parser wrapped by this ParserDecorator
 void parse(InputStream stream, ContentHandler handler, Metadata metadata, ParseContext context)
          Delegates the method call to the decorated parser.
static Parser withTypes(Parser parser, Set<MediaType> types)
          Decorates the given parser so that it always claims to support parsing of the given media types.
 
Methods inherited from class org.apache.tika.parser.AbstractParser
parse
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ParserDecorator

public ParserDecorator(Parser parser)
Creates a decorator for the given parser.

Parameters:
parser - the parser instance to be decorated
Method Detail

withTypes

public static final Parser withTypes(Parser parser,
                                     Set<MediaType> types)
Decorates the given parser so that it always claims to support parsing of the given media types.

Parameters:
parser - the parser to be decorated
types - supported media types
Returns:
the decorated parser

getSupportedTypes

public Set<MediaType> getSupportedTypes(ParseContext context)
Delegates the method call to the decorated parser. Subclasses should override this method (and use super.getSupportedTypes() to invoke the decorated parser) to implement extra decoration.

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 use super.parse() to invoke the decorated parser) to implement extra decoration.

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 read
SAXException - if the SAX events could not be processed
TikaException - if the document could not be parsed

getWrappedParser

public Parser getWrappedParser()
Gets the parser wrapped by this ParserDecorator

Returns:


Copyright © 2007-2012 The Apache Software Foundation. All Rights Reserved.