Revision: 2299 http://archive-access.svn.sourceforge.net/archive-access/?rev=2299&view=rev Author: bradtofel Date: 2008-06-24 13:49:05 -0700 (Tue, 24 Jun 2008) Log Message: ----------- FEATURE: added annotater property, which can be set with an ObjectFilter<SearchResult> to annotate SearchResults as they come out of the ResourceIndex. Modified Paths: -------------- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/resourceindex/LocalResourceIndex.java Modified: trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/resourceindex/LocalResourceIndex.java =================================================================== --- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/resourceindex/LocalResourceIndex.java 2008-06-20 02:15:20 UTC (rev 2298) +++ trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/resourceindex/LocalResourceIndex.java 2008-06-24 20:49:05 UTC (rev 2299) @@ -81,6 +81,8 @@ private UrlCanonicalizer canonicalizer = null; private boolean dedupeRecords = false; + + private ObjectFilter<SearchResult> annotater = null; public LocalResourceIndex() { canonicalizer = new AggressiveUrlCanonicalizer(); @@ -285,7 +287,9 @@ forwardFilters.addFilter(new WindowEndFilter(resultsPerPage)); // int resultsPerDirection = (int) Math.floor(resultsPerPage / 2); // reverseFilters.addFilter(new WindowEndFilter(resultsPerDirection)); - + if(annotater != null) { + forwardFilters.addFilter(annotater); + } startKey = keyUrl; try { @@ -349,6 +353,9 @@ // add the start and end windowing filters: filters.addFilter(new WindowStartFilter(startResult)); filters.addFilter(new WindowEndFilter(resultsPerPage)); + if(annotater != null) { + filters.addFilter(annotater); + } try { filterRecords(source.getPrefixIterator(startKey), filters, results, true); @@ -384,6 +391,9 @@ // add the start and end windowing filters: filters.addFilter(new WindowStartFilter(startResult)); filters.addFilter(new WindowEndFilter(resultsPerPage)); + if(annotater != null) { + filters.addFilter(annotater); + } try { filterRecords(source.getPrefixIterator(startKey), filters, results, true); @@ -468,4 +478,12 @@ public void shutdown() throws IOException { source.shutdown(); } + + public ObjectFilter<SearchResult> getAnnotater() { + return annotater; + } + + public void setAnnotater(ObjectFilter<SearchResult> annotater) { + this.annotater = annotater; + } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |