org.apache.lucene.index
Class PayloadProcessorProvider

java.lang.Object
  extended by org.apache.lucene.index.PayloadProcessorProvider

public abstract class PayloadProcessorProvider
extends Object

Provides a PayloadProcessorProvider.DirPayloadProcessor to be used for a Directory. This allows using different PayloadProcessorProvider.DirPayloadProcessors for different directories, for e.g. to perform different processing of payloads of different directories.

NOTE: to avoid processing payloads of certain directories, you can return null in getDirProcessor(org.apache.lucene.store.Directory).

NOTE: it is possible that the same PayloadProcessorProvider.DirPayloadProcessor will be requested for the same Directory concurrently. Therefore, to avoid concurrency issues you should return different instances for different threads. Usually, if your PayloadProcessorProvider.DirPayloadProcessor does not maintain state this is not a problem. The merge code ensures that the PayloadProcessorProvider.DirPayloadProcessor instance you return will be accessed by one thread to obtain the PayloadProcessorProvider.DirPayloadProcessors for different terms.

WARNING: This API is experimental and might change in incompatible ways in the next release.

Nested Class Summary
static class PayloadProcessorProvider.DirPayloadProcessor
          Returns a PayloadProcessorProvider.DirPayloadProcessor for a given Term which allows processing the payloads of different terms differently.
static class PayloadProcessorProvider.PayloadProcessor
          Processes the given payload.
 
Constructor Summary
PayloadProcessorProvider()
           
 
Method Summary
abstract  PayloadProcessorProvider.DirPayloadProcessor getDirProcessor(Directory dir)
          Returns a PayloadProcessorProvider.DirPayloadProcessor for the given Directory, through which PayloadProcessorProvider.DirPayloadProcessors can be obtained for each Term, or null if none should be used.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PayloadProcessorProvider

public PayloadProcessorProvider()
Method Detail

getDirProcessor

public abstract PayloadProcessorProvider.DirPayloadProcessor getDirProcessor(Directory dir)
                                                                      throws IOException
Returns a PayloadProcessorProvider.DirPayloadProcessor for the given Directory, through which PayloadProcessorProvider.DirPayloadProcessors can be obtained for each Term, or null if none should be used.

Throws:
IOException


Copyright © 2000-2011 Apache Software Foundation. All Rights Reserved.