- All Implemented Interfaces:
- ResourceIndex
public class LocalResourceIndex
extends Object
implements ResourceIndex
ResourceIndex implementation which assumes a "local" SearchResultSource.
Extracting SearchResults from the source involves several layered steps:
1) extraction of results based on a prefix into the index
2) passing each result through a series of adapters
these adapters can create new fields based on existing fields, or can
annotate fields as they are scanned in order
3) filtering results based on request filters, which may come from
* WaybackRequest-specific parameters.
Ex. exact host match only, exact scheme match only, ...
* AccessPoint-specific configuration
Ex. only return records with (ARC/WARC) filename prefixed with XXX
Ex. block any dates not older than 6 months
4) filtering based on AccessControl configurations
Ex. block any urls with prefixes in file X
5) windowing filters, which provide pagination of the results, allowing
requests to specify "show results between 10 and 20"
6) post filter adapters, which may annotate final results with other
information
Ex. for each result, consult DB to see if user-contributed messages
apply to the results
After all results have been processed, we annotate the final SearchResultS
object with summary information about the results included. As we set up the
chain of filters, we instrument the chain with counters that observe the
number of results that went into, and came out of the Exclusion filters.
If there were results presented to the Exclusion filter, but none were
emitted from it, an AccessControlException is thrown.
- Version:
- $Date$, $Revision$
- Author:
- brad