[jboss-svn-commits] JBL Code SVN: r19780 - labs/jbossrules/branches/4.0.x/drools-core/src/main/java/org/drools/base/evaluators.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Apr 30 14:48:43 EDT 2008
Author: tirelli
Date: 2008-04-30 14:48:43 -0400 (Wed, 30 Apr 2008)
New Revision: 19780
Modified:
labs/jbossrules/branches/4.0.x/drools-core/src/main/java/org/drools/base/evaluators/ObjectFactory.java
Log:
JBRULES-1517: better handling of exceptions in object equals comparisons
Modified: labs/jbossrules/branches/4.0.x/drools-core/src/main/java/org/drools/base/evaluators/ObjectFactory.java
===================================================================
--- labs/jbossrules/branches/4.0.x/drools-core/src/main/java/org/drools/base/evaluators/ObjectFactory.java 2008-04-30 18:47:38 UTC (rev 19779)
+++ labs/jbossrules/branches/4.0.x/drools-core/src/main/java/org/drools/base/evaluators/ObjectFactory.java 2008-04-30 18:48:43 UTC (rev 19780)
@@ -557,9 +557,15 @@
if( arg1 instanceof Number ) {
val1 = ((Number) arg1).doubleValue();
} else if( arg1 instanceof String ) {
- val1 = Double.parseDouble( ( String ) arg1 );
+ try {
+ val1 = Double.parseDouble( ( String ) arg1 );
+ } catch( Exception ex ) {
+ // parsing failed, so not a number
+ return false;
+ }
} else {
- throw new ClassCastException( "Not possible to compare "+arg1.getClass()+" to "+arg0.getClass() );
+ // if it is not a number, it is not equals
+ return false;
}
return val0 == val1; // in the future we may need to handle rounding errors
}
More information about the jboss-svn-commits
mailing list