Author: ssmiweve
Date: 2008-04-23 14:52:13 +0200 (Wed, 23 Apr 2008)
New Revision: 6542
Modified:
branches/2.17/query-api/src/main/java/no/sesat/search/query/token/TokenPredicate.java
branches/2.17/search-command-control-spi/src/main/java/no/sesat/search/mode/command/AbstractSearchCommand.java
Log:
SEARCH-4665 - NPE at TokenEvaluationEngineImpl.evaluateImpl
Modified:
branches/2.17/query-api/src/main/java/no/sesat/search/query/token/TokenPredicate.java
===================================================================
---
branches/2.17/query-api/src/main/java/no/sesat/search/query/token/TokenPredicate.java
2008-04-23 09:59:27 UTC (rev 6541)
+++
branches/2.17/query-api/src/main/java/no/sesat/search/query/token/TokenPredicate.java
2008-04-23 12:52:13 UTC (rev 6542)
@@ -610,9 +610,13 @@
*
* @param name the name of the TokenPredicate to find.
* @return the anonymous TokenPredicate.
+ * @throws IllegalArgumentException when no such anonymous token by
the name exists.
*/
- public static TokenPredicate getAnonymousTokenPredicate(final String
name){
+ public static TokenPredicate getAnonymousTokenPredicate(final String
name) throws IllegalArgumentException{
+ if(!ANONYMOUS_TOKENS.containsKey(name)){
+ throw new IllegalArgumentException("No anonymous token found
with name " + name);
+ }
return ANONYMOUS_TOKENS.get(name);
}
Modified:
branches/2.17/search-command-control-spi/src/main/java/no/sesat/search/mode/command/AbstractSearchCommand.java
===================================================================
---
branches/2.17/search-command-control-spi/src/main/java/no/sesat/search/mode/command/AbstractSearchCommand.java
2008-04-23 09:59:27 UTC (rev 6541)
+++
branches/2.17/search-command-control-spi/src/main/java/no/sesat/search/mode/command/AbstractSearchCommand.java
2008-04-23 12:52:13 UTC (rev 6542)
@@ -818,8 +818,10 @@
// if the field is the token then mask the field and
include the term.
// XXX why are we checking the known and possible
predicates?
boolean result =
clause.getKnownPredicates().contains(tp);
- result |= clause.getPossiblePredicates().contains(tp);
- result &= engine.evaluateTerm(tp, clause.getField());
+
+ result |= clause.getPossiblePredicates().contains(tp)
+ && engine.evaluateTerm(tp, clause.getField());
+
if (result) {
field = fieldFilter;
break;
_______________________________________________
Kernel-commits mailing list
[email protected]
http://sesat.no/mailman/listinfo/kernel-commits