summaryrefslogtreecommitdiffstats
path: root/engine-d/src/main/java/org/openo
diff options
context:
space:
mode:
Diffstat (limited to 'engine-d/src/main/java/org/openo')
-rw-r--r--engine-d/src/main/java/org/openo/holmes/enginemgt/manager/DroolsEngine.java44
-rw-r--r--engine-d/src/main/java/org/openo/holmes/enginemgt/resources/EngineResources.java47
2 files changed, 44 insertions, 47 deletions
diff --git a/engine-d/src/main/java/org/openo/holmes/enginemgt/manager/DroolsEngine.java b/engine-d/src/main/java/org/openo/holmes/enginemgt/manager/DroolsEngine.java
index 69fe748..ae2ba11 100644
--- a/engine-d/src/main/java/org/openo/holmes/enginemgt/manager/DroolsEngine.java
+++ b/engine-d/src/main/java/org/openo/holmes/enginemgt/manager/DroolsEngine.java
@@ -49,6 +49,7 @@ import org.openo.holmes.common.api.entity.CorrelationRule;
import org.openo.holmes.common.api.stat.Alarm;
import org.openo.holmes.common.config.MQConfig;
import org.openo.holmes.common.constant.AlarmConst;
+import org.openo.holmes.common.exception.CorrelationException;
import org.openo.holmes.common.exception.DbException;
import org.openo.holmes.common.exception.EngineException;
import org.openo.holmes.common.exception.RuleIllegalityException;
@@ -167,7 +168,7 @@ public class DroolsEngine {
}
public synchronized String deployRule(DeployRuleRequest rule, Locale locale)
- throws RuleIllegalityException, EngineException {
+ throws CorrelationException {
StringReader reader = new StringReader(rule.getContent());
Resource res = ResourceFactory.newReaderResource(reader);
@@ -176,20 +177,31 @@ public class DroolsEngine {
kbuilder.add(res, ResourceType.DRL);
if (kbuilder.hasErrors()) {
- throw new RuleIllegalityException(kbuilder.getErrors().toString());
+
+ String errorMsg = I18nProxy.getInstance().getValueByArgs(locale,
+ I18nProxy.ENGINE_CONTENT_ILLEGALITY,
+ new String[]{kbuilder.getErrors().toString()});
+ throw new CorrelationException(errorMsg);
}
String packageName = kbuilder.getKnowledgePackages().iterator().next().getName();
if (kbase.getKnowledgePackages().contains(packageName)) {
- throw new RuleIllegalityException(
- I18nProxy.getInstance().getValue(locale, I18nProxy.ENGINE_CONTAINS_PACKAGE));
+
+ String errorMsg = I18nProxy.getInstance().getValueByArgs(locale,
+ I18nProxy.ENGINE_CONTENT_ILLEGALITY,new String[]{
+ I18nProxy.getInstance().getValue(locale, I18nProxy.ENGINE_CONTAINS_PACKAGE)});
+
+ throw new CorrelationException(errorMsg);
}
try {
kbase.addKnowledgePackages(kbuilder.getKnowledgePackages());
} catch (Exception e) {
- throw new EngineException(e);
+
+ String errorMsg =
+ I18nProxy.getInstance().getValue(locale, I18nProxy.ENGINE_DEPLOY_RULE_FAILED);
+ throw new CorrelationException(errorMsg, e);
}
kbuilder = null;
@@ -199,26 +211,30 @@ public class DroolsEngine {
}
- public synchronized void undeployRule(String packageName)
- throws RuleIllegalityException, EngineException {
+ public synchronized void undeployRule(String packageName, Locale locale)
+ throws CorrelationException {
KnowledgePackage pkg = kbase.getKnowledgePackage(packageName);
if (null == pkg) {
- throw new RuleIllegalityException(packageName);
+ String errorMsg = I18nProxy.getInstance().getValueByArgs(locale,
+ I18nProxy.ENGINE_DELETE_RULE_NULL,
+ new String[]{packageName});
+ throw new CorrelationException(errorMsg);
}
try {
kbase.removeKnowledgePackage(pkg.getName());
} catch (Exception e) {
-
- throw new EngineException(e);
+ String errorMsg = I18nProxy.getInstance().getValueByArgs(locale,
+ I18nProxy.ENGINE_DELETE_RULE_FAILED, new String[]{packageName});
+ throw new CorrelationException(errorMsg, e);
}
}
public void compileRule(String content, Locale locale)
- throws RuleIllegalityException {
+ throws CorrelationException {
StringReader reader = new StringReader(content);
Resource res = ResourceFactory.newReaderResource(reader);
@@ -227,7 +243,11 @@ public class DroolsEngine {
kbuilder.add(res, ResourceType.DRL);
if (kbuilder.hasErrors()) {
- throw new RuleIllegalityException(kbuilder.getErrors().toString());
+ String errorMsg = I18nProxy.getInstance().getValueByArgs(locale,
+ I18nProxy.ENGINE_CONTENT_ILLEGALITY,
+ new String[]{kbuilder.getErrors().toString()});
+ log.error(errorMsg);
+ throw new CorrelationException(errorMsg);
}
kbuilder = null;
}
diff --git a/engine-d/src/main/java/org/openo/holmes/enginemgt/resources/EngineResources.java b/engine-d/src/main/java/org/openo/holmes/enginemgt/resources/EngineResources.java
index 59fb9e3..054ce52 100644
--- a/engine-d/src/main/java/org/openo/holmes/enginemgt/resources/EngineResources.java
+++ b/engine-d/src/main/java/org/openo/holmes/enginemgt/resources/EngineResources.java
@@ -5,7 +5,7 @@
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -32,6 +32,7 @@ import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import lombok.extern.slf4j.Slf4j;
import org.jvnet.hk2.annotations.Service;
+import org.openo.holmes.common.exception.CorrelationException;
import org.openo.holmes.common.exception.EngineException;
import org.openo.holmes.common.exception.RuleIllegalityException;
import org.openo.holmes.common.utils.ExceptionUtil;
@@ -66,19 +67,9 @@ public class EngineResources {
String packageName = droolsEngine.deployRule(deployRuleRequest, locale);
crResponse.setPackageName(packageName);
- } catch (RuleIllegalityException ruleIllegalityException) {
-
- String errorMsg = I18nProxy.getInstance().getValueByArgs(locale,
- I18nProxy.ENGINE_CONTENT_ILLEGALITY,
- new String[]{ruleIllegalityException.getMessage()});
- log.error(errorMsg);
- throw ExceptionUtil.buildExceptionResponse(errorMsg);
- } catch (EngineException e) {
-
- String errorMsg =
- I18nProxy.getInstance().getValue(locale, I18nProxy.ENGINE_DEPLOY_RULE_FAILED);
- log.error(errorMsg + ":" + e.getMessage());
- throw ExceptionUtil.buildExceptionResponse(errorMsg);
+ } catch (CorrelationException correlationException) {
+ log.error(correlationException.getMessage(), correlationException);
+ throw ExceptionUtil.buildExceptionResponse(correlationException.getMessage());
}
return crResponse;
@@ -96,21 +87,11 @@ public class EngineResources {
try {
- droolsEngine.undeployRule(packageName);
-
- } catch (RuleIllegalityException ruleIllegalityException) {
+ droolsEngine.undeployRule(packageName, locale);
- String errorMsg = I18nProxy.getInstance().getValueByArgs(locale,
- I18nProxy.ENGINE_DELETE_RULE_NULL,
- new String[]{ruleIllegalityException.getMessage()});
- log.error(errorMsg);
- throw ExceptionUtil.buildExceptionResponse(errorMsg);
- } catch (EngineException e) {
-
- String errorMsg = I18nProxy.getInstance().getValueByArgs(locale,
- I18nProxy.ENGINE_DELETE_RULE_FAILED, new String[]{packageName});
- log.error(errorMsg + e.getMessage());
- throw ExceptionUtil.buildExceptionResponse(errorMsg);
+ } catch (CorrelationException correlationException) {
+ log.error(correlationException.getMessage(), correlationException);
+ throw ExceptionUtil.buildExceptionResponse(correlationException.getMessage());
}
return true;
}
@@ -127,13 +108,9 @@ public class EngineResources {
try {
droolsEngine.compileRule(compileRuleRequest.getContent(), locale);
- } catch (RuleIllegalityException ruleIllegalityException) {
-
- String errorMsg = I18nProxy.getInstance().getValueByArgs(locale,
- I18nProxy.ENGINE_CONTENT_ILLEGALITY,
- new String[]{ruleIllegalityException.getMessage()});
- log.error(errorMsg);
- throw ExceptionUtil.buildExceptionResponse(errorMsg);
+ } catch (CorrelationException correlationException) {
+ log.error(correlationException.getMessage(), correlationException);
+ throw ExceptionUtil.buildExceptionResponse(correlationException.getMessage());
}
return true;
}