summaryrefslogtreecommitdiffstats
path: root/rulemgt/src/main/java/org/openo/holmes/rulemgt/db/CorrelationRuleQueryDao.java
diff options
context:
space:
mode:
authorGuangrongFu <fu.guangrong@zte.com.cn>2017-02-23 17:04:23 +0800
committerGuangrongFu <fu.guangrong@zte.com.cn>2017-02-23 17:05:03 +0800
commit2a7cf2d3d4a5a3551346cf52a19c27ef21ae4946 (patch)
tree6d9b6de6c3a8495ff90a793f1455076cf8336302 /rulemgt/src/main/java/org/openo/holmes/rulemgt/db/CorrelationRuleQueryDao.java
parent3bb5daf49ecab4da05a137e60b772c2ab91698a0 (diff)
Add a New Test Class
Change-Id: I4d9eb81d197499581f672c9f65de682314eef577 Issue-ID: HOLMES-47 Signed-off-by: GuangrongFu <fu.guangrong@zte.com.cn>
Diffstat (limited to 'rulemgt/src/main/java/org/openo/holmes/rulemgt/db/CorrelationRuleQueryDao.java')
-rw-r--r--rulemgt/src/main/java/org/openo/holmes/rulemgt/db/CorrelationRuleQueryDao.java28
1 files changed, 23 insertions, 5 deletions
diff --git a/rulemgt/src/main/java/org/openo/holmes/rulemgt/db/CorrelationRuleQueryDao.java b/rulemgt/src/main/java/org/openo/holmes/rulemgt/db/CorrelationRuleQueryDao.java
index 62f8bad..b3e6b38 100644
--- a/rulemgt/src/main/java/org/openo/holmes/rulemgt/db/CorrelationRuleQueryDao.java
+++ b/rulemgt/src/main/java/org/openo/holmes/rulemgt/db/CorrelationRuleQueryDao.java
@@ -15,7 +15,6 @@
*/
package org.openo.holmes.rulemgt.db;
-import java.beans.PropertyDescriptor;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.util.ArrayList;
@@ -93,10 +92,16 @@ public class CorrelationRuleQueryDao {
String whereSql = " WHERE ";
for (Field field : fields) {
- PropertyDescriptor pd = new PropertyDescriptor(field.getName(),
- clazz);
- Method getMethod = pd.getReadMethod();
- Object o = getMethod.invoke(ruleQueryCondition);
+ String methodName = getMethodName(field);
+
+ // If these lines are removed, Jacoco will cause an exception when calculation the coverage of UT
+ // Remove it if someday Jacoco solve this problem
+ if (methodName.contains("jacoco")){
+ continue;
+ }
+
+ Method method = clazz.getMethod(methodName);
+ Object o = method.invoke(ruleQueryCondition);
if (o != null) {
String tempName = field.getName();
if ("enabled".equals(tempName) && (int) o != RuleMgtConstant.STATUS_RULE_ALL) {
@@ -118,4 +123,17 @@ public class CorrelationRuleQueryDao {
throw new CorrelationException(I18nProxy.RULE_MANAGEMENT_CREATE_QUERY_SQL_FAILED, e);
}
}
+
+ private String getMethodName(Field field){
+ String ret = field.getName().substring(0, 1).toUpperCase() + field.getName().substring(1);;
+ Class clazz = field.getDeclaringClass();
+
+ if (clazz.equals(Boolean.class)){
+ ret = "is" + ret;
+ }else{
+ ret = "get" + ret;
+ }
+
+ return ret;
+ }
}