SearchContentFilter (biojava-legacy 1.9.5 API)
- java.lang.Object
-
- org.biojava.bio.search.SearchContentFilter
-
- All Implemented Interfaces:
SearchContentHandler
public class SearchContentFilter extends Object implements SearchContentHandler
Filtering implementation of SearchContentHandler that by default passes all messages on to the next delegate in the chain.
In this handler, all info will be passed onto a delegate handler. You can build up a chain of filters by using one filter as the delegate for another. When you over-ride a method in a filter, you can modify any state you wish. If you want that to propogate on, you should call the method on yourself via super.(), if not, just return.
It is your responsibility to ensure that the events emitted from your filter are sensible. In particular, start/end messages must be paired even after filtering.
Example
// we have a handler from somewhere SearchContentHandler handler = ...; // now we are going to mutate all "score" notifications to Double instances // from strings SearchContentHandler filter = new SearchContentFilter() { public void addHitProperty(Object key, Object value) { if("score".equals(key)) { if(value instanceof String) { value = new Double(value); } } super(key, value); } };- Since:
- 1.3
- Author:
- Matthew Pocock
-
-
Constructor Summary
Constructors Constructor Description SearchContentFilter(SearchContentHandler delegate)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddHitProperty(Object key, Object value)The
addHitPropertymethod adds a key/value pair containing some property of a particular hit.voidaddSearchProperty(Object key, Object value)The
addSearchPropertymethod adds a key/value pair containing some property of the overall search result.voidaddSubHitProperty(Object key, Object value)The
addSubHitPropertymethod adds a key/value pair containing some property of a particular subhit.voidendHeader()The
endHeadermethod indicates the end of a formatted header.voidendHit()The
endHitmethod indicates the end of a formatted hit.voidendSearch()The
endSearchmethod indicates the end of useful search information.voidendSubHit()The
endSubHitmethod indicates the end of a formatted subhit.booleangetMoreSearches()getMoreSearchesreturns the state of theSearchContentHandlerwith respect to further searches from its data source.voidsetDatabaseID(String databaseID)setDatabaseIDidentifies the database searched by a name, ID or URN.voidsetMoreSearches(boolean val)setMoreSearchessets the state of theSearchContentHandler's expectation of receiving more results.voidsetQueryID(String queryID)setQueryIDidentifies the query sequence by a name, ID or URN.voidstartHeader()The
startHeadermethod indicates the start of a formatted header.voidstartHit()The
startHitmethod indicates the start of a formatted hit.voidstartSearch()The
startSearchmethod indicates the start of useful search information.voidstartSubHit()The
startSubHitmethod indicates the start of a formatted subhit.
-
-
-
Constructor Detail
-
SearchContentFilter
public SearchContentFilter(SearchContentHandler delegate)
-
-
Method Detail
-
addHitProperty
public void addHitProperty(Object key, Object value)
The
addHitPropertymethod adds a key/value pair containing some property of a particular hit.- Specified by:
addHitPropertyin interfaceSearchContentHandler- Parameters:
key- anObject.value- anObject.
-
addSearchProperty
public void addSearchProperty(Object key, Object value)
The
addSearchPropertymethod adds a key/value pair containing some property of the overall search result.- Specified by:
addSearchPropertyin interfaceSearchContentHandler- Parameters:
key- anObject.value- anObject.
-
addSubHitProperty
public void addSubHitProperty(Object key, Object value)
The
addSubHitPropertymethod adds a key/value pair containing some property of a particular subhit.- Specified by:
addSubHitPropertyin interfaceSearchContentHandler- Parameters:
key- anObject.value- anObject.
-
startHeader
public void startHeader()
The
startHeadermethod indicates the start of a formatted header. This usually contains information relevant to the search as a whole.- Specified by:
startHeaderin interfaceSearchContentHandler
-
endHeader
public void endHeader()
The
endHeadermethod indicates the end of a formatted header.- Specified by:
endHeaderin interfaceSearchContentHandler
-
startHit
public void startHit()
The
startHitmethod indicates the start of a formatted hit. This could be a single line, or a block of lines.- Specified by:
startHitin interfaceSearchContentHandler
-
endHit
public void endHit()
The
endHitmethod indicates the end of a formatted hit.- Specified by:
endHitin interfaceSearchContentHandler
-
startSearch
public void startSearch()
The
startSearchmethod indicates the start of useful search information.- Specified by:
startSearchin interfaceSearchContentHandler
-
endSearch
public void endSearch()
The
endSearchmethod indicates the end of useful search information.- Specified by:
endSearchin interfaceSearchContentHandler
-
startSubHit
public void startSubHit()
The
startSubHitmethod indicates the start of a formatted subhit. There may be zero or more of these per hit.- Specified by:
startSubHitin interfaceSearchContentHandler
-
endSubHit
public void endSubHit()
The
endSubHitmethod indicates the end of a formatted subhit.- Specified by:
endSubHitin interfaceSearchContentHandler
-
setQueryID
public void setQueryID(String queryID)
setQueryIDidentifies the query sequence by a name, ID or URN.- Specified by:
setQueryIDin interfaceSearchContentHandler- Parameters:
queryID- aStringwhich should be an unique identifer for the sequence.
-
setDatabaseID
public void setDatabaseID(String databaseID)
setDatabaseIDidentifies the database searched by a name, ID or URN.- Specified by:
setDatabaseIDin interfaceSearchContentHandler- Parameters:
databaseID- aStringwhich should be an unique identifier for the database searched.
-
getMoreSearches
public boolean getMoreSearches()
getMoreSearchesreturns the state of theSearchContentHandlerwith respect to further searches from its data source. Used for handling streams of search results.- Specified by:
getMoreSearchesin interfaceSearchContentHandler- Returns:
- a
booleanvalue.
-
setMoreSearches
public void setMoreSearches(boolean val)
setMoreSearchessets the state of theSearchContentHandler's expectation of receiving more results. Used for handling streams of search results.- Specified by:
setMoreSearchesin interfaceSearchContentHandler- Parameters:
val- abooleanvalue.
-
-