git://source.jalview.org
/
jalview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
JAL-3541 removed clover report generation debug flag (utf-8 encoding enforcement...
[jalview.git]
/
src
/
jalview
/
datamodel
/
SearchResults.java
diff --git
a/src/jalview/datamodel/SearchResults.java
b/src/jalview/datamodel/SearchResults.java
index
8d98fc4
..
31736e5
100755
(executable)
--- a/
src/jalview/datamodel/SearchResults.java
+++ b/
src/jalview/datamodel/SearchResults.java
@@
-34,7
+34,7
@@
import java.util.List;
public class SearchResults implements SearchResultsI
{
public class SearchResults implements SearchResultsI
{
- private List<SearchResultMatchI> matches = new ArrayList<SearchResultMatchI>();
+ private List<SearchResultMatchI> matches = new ArrayList<>();
/**
* One match consists of a sequence reference, start and end positions.
/**
* One match consists of a sequence reference, start and end positions.
@@
-42,17
+42,17
@@
public class SearchResults implements SearchResultsI
*/
public class Match implements SearchResultMatchI
{
*/
public class Match implements SearchResultMatchI
{
- SequenceI sequence;
+ final SequenceI sequence;
/**
* Start position of match in sequence (base 1)
*/
/**
* Start position of match in sequence (base 1)
*/
- int start;
+ final int start;
/**
* End position (inclusive) (base 1)
*/
/**
* End position (inclusive) (base 1)
*/
- int end;
+ final int end;
/**
* create a Match on a range of sequence. Match always holds region in
/**
* create a Match on a range of sequence. Match always holds region in
@@
-91,27
+91,18
@@
public class SearchResults implements SearchResultsI
}
}
}
}
- /* (non-Javadoc)
- * @see jalview.datamodel.SearchResultMatchI#getSequence()
- */
@Override
public SequenceI getSequence()
{
return sequence;
}
@Override
public SequenceI getSequence()
{
return sequence;
}
- /* (non-Javadoc)
- * @see jalview.datamodel.SearchResultMatchI#getStart()
- */
@Override
public int getStart()
{
return start;
}
@Override
public int getStart()
{
return start;
}
- /* (non-Javadoc)
- * @see jalview.datamodel.SearchResultMatchI#getEnd()
- */
@Override
public int getEnd()
{
@Override
public int getEnd()
{
@@
-133,11
+124,6
@@
public class SearchResults implements SearchResultsI
return sb.toString();
}
return sb.toString();
}
- public void setSequence(SequenceI seq)
- {
- this.sequence = seq;
- }
-
/**
* Hashcode is the hashcode of the matched sequence plus a hash of start and
* end positions. Match objects that pass the test for equals are guaranteed
/**
* Hashcode is the hashcode of the matched sequence plus a hash of start and
* end positions. Match objects that pass the test for equals are guaranteed
@@
-164,25
+150,28
@@
public class SearchResults implements SearchResultsI
return false;
}
SearchResultMatchI m = (SearchResultMatchI) obj;
return false;
}
SearchResultMatchI m = (SearchResultMatchI) obj;
- return (sequence == m.getSequence() && start == m.getStart() && end == m
- .getEnd());
+ return (sequence == m.getSequence() && start == m.getStart()
+ && end == m.getEnd());
+ }
+
+ @Override
+ public boolean contains(SequenceI seq, int from, int to)
+ {
+ return (sequence == seq && start <= from && end >= to);
}
}
}
}
- /* (non-Javadoc)
- * @see jalview.datamodel.SearchResultsI#addResult(jalview.datamodel.SequenceI, int, int)
- */
@Override
public SearchResultMatchI addResult(SequenceI seq, int start, int end)
{
Match m = new Match(seq, start, end);
@Override
public SearchResultMatchI addResult(SequenceI seq, int start, int end)
{
Match m = new Match(seq, start, end);
- matches.add(m);
+ if (!matches.contains(m))
+ {
+ matches.add(m);
+ }
return m;
}
return m;
}
- /* (non-Javadoc)
- * @see jalview.datamodel.SearchResultsI#involvesSequence(jalview.datamodel.SequenceI)
- */
@Override
public boolean involvesSequence(SequenceI sequence)
{
@Override
public boolean involvesSequence(SequenceI sequence)
{
@@
-198,9
+187,6
@@
public class SearchResults implements SearchResultsI
return false;
}
return false;
}
- /* (non-Javadoc)
- * @see jalview.datamodel.SearchResultsI#getResults(jalview.datamodel.SequenceI, int, int)
- */
@Override
public int[] getResults(SequenceI sequence, int start, int end)
{
@Override
public int[] getResults(SequenceI sequence, int start, int end)
{
@@
-259,7
+245,7
@@
public class SearchResults implements SearchResultsI
else
{
// debug
else
{
// debug
- // System.err.println("Outwith bounds!" + matchStart+">"+end +" or "
+ // System.err.println("Outwith bounds!" + matchStart+">"+end +" or "
// + matchEnd+"<"+start);
}
}
// + matchEnd+"<"+start);
}
}
@@
-272,9
+258,12
@@
public class SearchResults implements SearchResultsI
{
int count = 0;
BitSet mask = new BitSet();
{
int count = 0;
BitSet mask = new BitSet();
+ int startRes = sqcol.getStartRes();
+ int endRes = sqcol.getEndRes();
+
for (SequenceI s : sqcol.getSequences())
{
for (SequenceI s : sqcol.getSequences())
{
- int[] cols = getResults(s, sqcol.getStartRes(), sqcol.getEndRes());
+ int[] cols = getResults(s, startRes, endRes);
if (cols != null)
{
for (int pair = 0; pair < cols.length; pair += 2)
if (cols != null)
{
for (int pair = 0; pair < cols.length; pair += 2)
@@
-292,27
+281,18
@@
public class SearchResults implements SearchResultsI
return count;
}
return count;
}
- /* (non-Javadoc)
- * @see jalview.datamodel.SearchResultsI#getSize()
- */
@Override
public int getSize()
{
return matches.size();
}
@Override
public int getSize()
{
return matches.size();
}
- /* (non-Javadoc)
- * @see jalview.datamodel.SearchResultsI#isEmpty()
- */
@Override
public boolean isEmpty()
{
return matches.isEmpty();
}
@Override
public boolean isEmpty()
{
return matches.isEmpty();
}
- /* (non-Javadoc)
- * @see jalview.datamodel.SearchResultsI#getResults()
- */
@Override
public List<SearchResultMatchI> getResults()
{
@Override
public List<SearchResultMatchI> getResults()
{
@@
-358,4
+338,10
@@
public class SearchResults implements SearchResultsI
SearchResultsI sr = (SearchResultsI) obj;
return matches.equals(sr.getResults());
}
SearchResultsI sr = (SearchResultsI) obj;
return matches.equals(sr.getResults());
}
+
+ @Override
+ public void addSearchResults(SearchResultsI toAdd)
+ {
+ matches.addAll(toAdd.getResults());
+ }
}
}