Package org.biojava.bio.program.ssbind
Class BlastLikeSearchBuilder
- java.lang.Object
-
- org.biojava.bio.program.ssbind.BlastLikeSearchBuilder
-
- All Implemented Interfaces:
SearchBuilder
,SearchContentHandler
public class BlastLikeSearchBuilder extends Object implements SearchBuilder
BlastLikeSearchBuilder
will createSeqSimilaritySearchResult
s from SAX events via aSeqSimilarityAdapter
. The SAX events should describe elements conforming to the BioJava BlastLikeDataSetCollection DTD. Suitable sources areBlastLikeSAXParser
orFastaSearchSAXParser
. The result objects are placed in theList
supplied to the constructor.The start/end/strand of
SeqSimilaritySearchHit
s are calculated from their constituentSeqSimilaritySearchSubHit
s as follows:- The query start is the lowest query start coordinate of its sub-hits, regardless of strand
- The query end is the highest query end coordinate of its sub-hits, regardless of strand
- The hit start is the lowest hit start coordinate of its sub-hits, regardless of strand
- The hit end is the highest hit end coordinate of its sub-hits, regardless of strand
- The query strand is null for protein sequences. Otherwise it is
equal to the query strand of its sub-hits if they are all on the
same strand, or
StrandedFeature.UNKNOWN
if the sub-hits have mixed query strands - The hit strand is null for protein sequences. Otherwise it is
equal to the hit strand of its sub-hits if they are all on the same
strand, or
StrandedFeature.UNKNOWN
if the sub-hits have mixed hit strands
This class has special meanings for particular keys: if you want to adapt this class for another parser, you will need to be aware of this. These originate from and are fully described in the BlastLikeDataSetCollection DTD.
Key Meaning program either this value or the subjectSequenceType value must be set. This can take values acceptable to AlphabetResolver. These are BLASTN, BLASTP, BLASTX, TBLASTN, TBLASTX, DNA and PROTEIN. databaseId Identifier of database searched (in SequenceDBInstallation). subjectSequenceType type of sequence that hit is. Can be DNA or PROTEIN. subjectId id of sequence that is hit subjectDescription description of sequence that is hit queryStrand Strandedness of query in alignment. Takes values of "plus" and "minus" subjectStrand Strandedness of query in alignment. Takes values of "plus" and "minus" queryFrame self-evident subjectFrame self-evident querySequenceStart self-evident querySequenceEnd self-evident subjectSequenceStart self-evident subjectSequenceEnd self-evident score self-evident expectValue self-evident pValue self-evident - Since:
- 1.2
- Author:
- Keith James, Greg Cox
-
-
Constructor Summary
Constructors Constructor Description BlastLikeSearchBuilder(List target)
Creates a newBlastLikeSearchBuilder
which will instantiate results into theList
target.BlastLikeSearchBuilder(List target, SequenceDB querySeqHolder, SequenceDBInstallation subjectDBs)
Creates a newBlastLikeSearchBuilder
which will instantiate results into theList
target.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addHitProperty(Object key, Object value)
TheaddHitProperty
method adds a key/value pair containing some property of a particular hit.void
addSearchProperty(Object key, Object value)
TheaddSearchProperty
method adds a key/value pair containing some property of the overall search result.void
addSubHitProperty(Object key, Object value)
TheaddSubHitProperty
method adds a key/value pair containing some property of a particular subhit.void
endHeader()
TheendHeader
method indicates the end of a formatted header.void
endHit()
TheendHit
method indicates the end of a formatted hit.void
endSearch()
TheendSearch
method indicates the end of useful search information.void
endSubHit()
TheendSubHit
method indicates the end of a formatted subhit.boolean
getMoreSearches()
getMoreSearches
returns the state of theSearchContentHandler
with respect to further searches from its data source.SeqSimilaritySearchResult
makeSearchResult()
ThemakeSearchResult
method returns aSeqSimilaritySearchResult
instance created from accumulated data.void
setDatabaseID(String databaseID)
setDatabaseID
identifies the database searched by a name, ID or URN.void
setMoreSearches(boolean value)
setMoreSearches
sets the state of theSearchContentHandler
's expectation of receiving more results.void
setQueryID(String queryID)
setQueryID
identifies the query sequence by a name, ID or URN.void
setQuerySeqHolder(SequenceDB querySeqHolder)
setQuerySeqHolder
sets the query sequence holder to a specific database.void
setSubjectDBInstallation(SequenceDBInstallation subjectDBs)
setSubjectDBInstallation
sets the subject database holder to a specific installation.void
startHeader()
ThestartHeader
method indicates the start of a formatted header.void
startHit()
ThestartHit
method indicates the start of a formatted hit.void
startSearch()
ThestartSearch
method indicates the start of useful search information.void
startSubHit()
ThestartSubHit
method indicates the start of a formatted subhit.
-
-
-
Constructor Detail
-
BlastLikeSearchBuilder
public BlastLikeSearchBuilder(List target)
Creates a newBlastLikeSearchBuilder
which will instantiate results into theList
target.- Parameters:
target
- aList
.
-
BlastLikeSearchBuilder
public BlastLikeSearchBuilder(List target, SequenceDB querySeqHolder, SequenceDBInstallation subjectDBs)
Creates a newBlastLikeSearchBuilder
which will instantiate results into theList
target.- Parameters:
target
- aList
.querySeqHolder
- aSequenceDB
of query sequences.subjectDBs
- aSequenceDBInstallation
of databases searched.
-
-
Method Detail
-
makeSearchResult
public SeqSimilaritySearchResult makeSearchResult() throws BioException
Description copied from interface:SearchBuilder
ThemakeSearchResult
method returns aSeqSimilaritySearchResult
instance created from accumulated data.- Specified by:
makeSearchResult
in interfaceSearchBuilder
- Returns:
- a
SeqSimilaritySearchResult
. - Throws:
BioException
- if an error occurs.
-
setQuerySeqHolder
public void setQuerySeqHolder(SequenceDB querySeqHolder)
setQuerySeqHolder
sets the query sequence holder to a specific database.- Parameters:
querySeqHolder
- aSequenceDB
containing the query sequence(s).
-
setSubjectDBInstallation
public void setSubjectDBInstallation(SequenceDBInstallation subjectDBs)
setSubjectDBInstallation
sets the subject database holder to a specific installation.- Parameters:
subjectDBs
- aSequenceDBInstallation
containing the subject database(s)
-
setQueryID
public void setQueryID(String queryID)
Description copied from interface:SearchContentHandler
setQueryID
identifies the query sequence by a name, ID or URN.- Specified by:
setQueryID
in interfaceSearchContentHandler
- Parameters:
queryID
- aString
which should be an unique identifer for the sequence.
-
setDatabaseID
public void setDatabaseID(String databaseID)
Description copied from interface:SearchContentHandler
setDatabaseID
identifies the database searched by a name, ID or URN.- Specified by:
setDatabaseID
in interfaceSearchContentHandler
- Parameters:
databaseID
- aString
which should be an unique identifier for the database searched.
-
getMoreSearches
public boolean getMoreSearches()
Description copied from interface:SearchContentHandler
getMoreSearches
returns the state of theSearchContentHandler
with respect to further searches from its data source. Used for handling streams of search results.- Specified by:
getMoreSearches
in interfaceSearchContentHandler
- Returns:
- a
boolean
value.
-
setMoreSearches
public void setMoreSearches(boolean value)
Description copied from interface:SearchContentHandler
setMoreSearches
sets the state of theSearchContentHandler
's expectation of receiving more results. Used for handling streams of search results.- Specified by:
setMoreSearches
in interfaceSearchContentHandler
- Parameters:
value
- aboolean
value.
-
startSearch
public void startSearch()
Description copied from interface:SearchContentHandler
ThestartSearch
method indicates the start of useful search information.- Specified by:
startSearch
in interfaceSearchContentHandler
-
endSearch
public void endSearch()
Description copied from interface:SearchContentHandler
TheendSearch
method indicates the end of useful search information.- Specified by:
endSearch
in interfaceSearchContentHandler
-
startHeader
public void startHeader()
Description copied from interface:SearchContentHandler
ThestartHeader
method indicates the start of a formatted header. This usually contains information relevant to the search as a whole.- Specified by:
startHeader
in interfaceSearchContentHandler
-
endHeader
public void endHeader()
Description copied from interface:SearchContentHandler
TheendHeader
method indicates the end of a formatted header.- Specified by:
endHeader
in interfaceSearchContentHandler
-
startHit
public void startHit()
Description copied from interface:SearchContentHandler
ThestartHit
method indicates the start of a formatted hit. This could be a single line, or a block of lines.- Specified by:
startHit
in interfaceSearchContentHandler
-
endHit
public void endHit()
Description copied from interface:SearchContentHandler
TheendHit
method indicates the end of a formatted hit.- Specified by:
endHit
in interfaceSearchContentHandler
-
startSubHit
public void startSubHit()
Description copied from interface:SearchContentHandler
ThestartSubHit
method indicates the start of a formatted subhit. There may be zero or more of these per hit.- Specified by:
startSubHit
in interfaceSearchContentHandler
-
endSubHit
public void endSubHit()
Description copied from interface:SearchContentHandler
TheendSubHit
method indicates the end of a formatted subhit.- Specified by:
endSubHit
in interfaceSearchContentHandler
-
addSearchProperty
public void addSearchProperty(Object key, Object value)
Description copied from interface:SearchContentHandler
TheaddSearchProperty
method adds a key/value pair containing some property of the overall search result.- Specified by:
addSearchProperty
in interfaceSearchContentHandler
- Parameters:
key
- anObject
.value
- anObject
.
-
addHitProperty
public void addHitProperty(Object key, Object value)
Description copied from interface:SearchContentHandler
TheaddHitProperty
method adds a key/value pair containing some property of a particular hit.- Specified by:
addHitProperty
in interfaceSearchContentHandler
- Parameters:
key
- anObject
.value
- anObject
.
-
addSubHitProperty
public void addSubHitProperty(Object key, Object value)
Description copied from interface:SearchContentHandler
TheaddSubHitProperty
method adds a key/value pair containing some property of a particular subhit.- Specified by:
addSubHitProperty
in interfaceSearchContentHandler
- Parameters:
key
- anObject
.value
- anObject
.
-
-