## org.biojava.bio.search
Interface SearchContentHandler

All Known Subinterfaces:
  SearchBuilder

All Known Implementing Classes:
  BlastLikeHomologyBuilder, BlastLikeSearchBuilder, FastaSearchSAXParser, SearchContentAdapter, SearchContentFilter, SimilarityPairBuilder

public interface SearchContentHandler

`SearchContentHandler` is a notification interface for objects which listen to search stream parsers. This is applicable to all types of search results which are represented by flat files created by external programs e.g. Fasta, (T)BlastN/PX, EMBOSS programs. This is not limited to sequence similarity searches, but includes any format consisting of a header followed by hits, each of which may, or may not, have subhits.

Since:
  1.1
Author:
  Keith James

Method Summary
`void` `addHitProperty(java.lang.Object key, java.lang.Object value)` The `addHitProperty` method adds a key/value pair containing some property of a particular hit.
`void` `addSearchProperty(java.lang.Object key, java.lang.Object value)` The `addSearchProperty` method adds a key/value pair containing some property of the overall search result.
`void` `addSubHitProperty(java.lang.Object key, java.lang.Object value)` The `addSubHitProperty` method adds a key/value pair containing some property of a particular subhit.
`void` `endHeader()` The `endHeader` method indicates the end of a formatted header.
`void` `endHit()` The `endHit` method indicates the end of a formatted hit.
`void` `endSearch()` The `endSearch` method indicates the end of useful search information.
`void` `endSubHit()` The `endSubHit` method indicates the end of a formatted subhit.
`boolean` `getMoreSearches()` `getMoreSearches` returns the state of the `SearchContentHandler` with respect to further searches from its data source.
`void` `setDatabaseID(java.lang.String databaseID)` `setDatabaseID` identifies the database searched by a name, ID or URN.
`void` `setMoreSearches(boolean value)` `setMoreSearches` sets the state of the `SearchContentHandler`'s expectation of receiving more results.
`void` `setQueryID(java.lang.String queryID)` `setQueryID` identifies the query sequence by a name, ID or URN.
`void` `startHeader()` The `startHeader` method indicates the start of a formatted header.
`void` `startHit()` The `startHit` method indicates the start of a formatted hit.
`void` `startSearch()` The `startSearch` method indicates the start of useful search information.
`void` `startSubHit()` The `startSubHit` method indicates the start of a formatted subhit.

Method Detail

### getMoreSearches

    public boolean getMoreSearches()

  `getMoreSearches` returns the state of the `SearchContentHandler` with respect to further searches from its data source. Used for handling streams of search results.

  Returns:
    a `boolean` value.

### setMoreSearches

    public void setMoreSearches(boolean value)

  `setMoreSearches` sets the state of the `SearchContentHandler`'s expectation of receiving more results. Used for handling streams of search results.

  Parameters:
    `value` - a `boolean` value.

### startSearch

    public void startSearch()

  The `startSearch` method indicates the start of useful search information.

### endSearch

    public void endSearch()

  The `endSearch` method indicates the end of useful search information.

### startHeader

    public void startHeader()

  The `startHeader` method indicates the start of a formatted header. This usually contains information relevant to the search as a whole.

### endHeader

    public void endHeader()

  The `endHeader` method indicates the end of a formatted header.

### startHit

    public void startHit()

  The `startHit` method indicates the start of a formatted hit. This could be a single line, or a block of lines.

### endHit

    public void endHit()

  The `endHit` method indicates the end of a formatted hit.

### startSubHit

    public void startSubHit()

  The `startSubHit` method indicates the start of a formatted subhit. There may be zero or more of these per hit.

### endSubHit

    public void endSubHit()

  The `endSubHit` method indicates the end of a formatted subhit.

### addSearchProperty

    public void addSearchProperty(java.lang.Object key,
                                  java.lang.Object value)

  The `addSearchProperty` method adds a key/value pair containing some property of the overall search result.

  Parameters:
    `key` - an `Object`.
    `value` - an `Object`.

### addHitProperty

    public void addHitProperty(java.lang.Object key,
                               java.lang.Object value)

  The `addHitProperty` method adds a key/value pair containing some property of a particular hit.

  Parameters:
    `key` - an `Object`.
    `value` - an `Object`.

### addSubHitProperty

    public void addSubHitProperty(java.lang.Object key,
                                  java.lang.Object value)

  The `addSubHitProperty` method adds a key/value pair containing some property of a particular subhit.

  Parameters:
    `key` - an `Object`.
    `value` - an `Object`.

### setQueryID

    public void setQueryID(java.lang.String queryID)

  `setQueryID` identifies the query sequence by a name, ID or URN.

  Parameters:
    `queryID` - a `String` which should be an unique identifer for the sequence.

### setDatabaseID

    public void setDatabaseID(java.lang.String databaseID)

  `setDatabaseID` identifies the database searched by a name, ID or URN.

  Parameters:
    `databaseID` - a `String` which should be an unique identifier for the database searched.