Add baseservice-i18 dependency
authoryoubowu <wu.youbo@zte.com.cn>
Wed, 15 Feb 2017 02:33:19 +0000 (10:33 +0800)
committer6092002067 <wu.youbo@zte.com.cn>
Wed, 15 Feb 2017 03:00:03 +0000 (11:00 +0800)
Issue-ID:HOLMES-9

Change-Id: I6ac6239560db4526cb37400528c15cb53308119e
Signed-off-by: youbowu <wu.youbo@zte.com.cn>
holmes-actions/pom.xml
holmes-actions/src/main/java/org/openo/holmes/common/utils/ExceptionUtil.java [new file with mode: 0644]
holmes-actions/src/main/java/org/openo/holmes/common/utils/I18nProxy.java [new file with mode: 0644]
pom.xml

index 7e39212..756a068 100644 (file)
     <packaging>jar</packaging>\r
     <artifactId>holmes-actions</artifactId>\r
     <dependencies>\r
-        <!--<dependency>-->\r
-            <!--<groupId>org.openo.common-services.common-utilities</groupId>-->\r
-            <!--<artifactId>baseservice-i18n</artifactId>-->\r
-        <!--</dependency>-->\r
+        <dependency>\r
+            <groupId>org.openo.common-services.common-utilities</groupId>\r
+            <artifactId>baseservice-i18n</artifactId>\r
+        </dependency>\r
         <dependency>\r
             <groupId>org.antlr</groupId>\r
             <artifactId>stringtemplate</artifactId>\r
diff --git a/holmes-actions/src/main/java/org/openo/holmes/common/utils/ExceptionUtil.java b/holmes-actions/src/main/java/org/openo/holmes/common/utils/ExceptionUtil.java
new file mode 100644 (file)
index 0000000..cc58446
--- /dev/null
@@ -0,0 +1,43 @@
+/**\r
+ * Copyright 2017 ZTE Corporation.\r
+ *\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ *\r
+ *     http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ */\r
+package org.openo.holmes.common.utils;\r
+\r
+import java.util.Locale;\r
+import javax.ws.rs.WebApplicationException;\r
+import javax.ws.rs.core.MediaType;\r
+import javax.ws.rs.core.Response;\r
+\r
+public class ExceptionUtil {\r
+\r
+    private static final int EXCEPTION_CODE = 499;\r
+\r
+    private ExceptionUtil() {\r
+\r
+    }\r
+\r
+    public static String getExceptionMsg(Locale locale, Exception e) {\r
+        return I18nProxy.getInstance().getValue(locale, e.getMessage());\r
+    }\r
+\r
+    public static String getExceptionMsgByArgs(Locale locale, Exception e, String[] obj) {\r
+        return I18nProxy.getInstance().getValueByArgs(locale, e.getMessage(), obj);\r
+    }\r
+\r
+    public static WebApplicationException buildExceptionResponse(String message) {\r
+        Response response = Response.status(EXCEPTION_CODE).entity(message).type(MediaType.TEXT_PLAIN).build();\r
+        return new WebApplicationException(response);\r
+    }\r
+}\r
diff --git a/holmes-actions/src/main/java/org/openo/holmes/common/utils/I18nProxy.java b/holmes-actions/src/main/java/org/openo/holmes/common/utils/I18nProxy.java
new file mode 100644 (file)
index 0000000..2eda5da
--- /dev/null
@@ -0,0 +1,105 @@
+/**\r
+ * Copyright 2017 ZTE Corporation.\r
+ *\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ *\r
+ *     http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ */\r
+package org.openo.holmes.common.utils;\r
+\r
+import com.fasterxml.jackson.core.JsonProcessingException;\r
+import java.util.Arrays;\r
+import java.util.Locale;\r
+import java.util.Map;\r
+import java.util.Optional;\r
+import lombok.extern.slf4j.Slf4j;\r
+import org.openo.baseservice.i18n.I18n;\r
+\r
+@Slf4j\r
+public class I18nProxy {\r
+\r
+    /*-----------------------Engine------------------------------- */\r
+    public static final String ENGINE_CONTENT_ILLEGALITY = "ENGINE_CONTENT_ILLEGALITY";\r
+    public static final String ENGINE_DEPLOY_RULE_FAILED = "ENGINE_DEPLOY_RULE_FAILED";\r
+    public static final String ENGINE_DELETE_RULE_NULL = "ENGINE_DELETE_RULE_NULL";\r
+    public static final String ENGINE_DELETE_RULE_FAILED = "ENGINE_DELETE_RULE_FAILED";\r
+    public static final String ENGINE_INSERT_RULE_CACHE_FAILED = "ENGINE_INSERT_RULE_CACHE_FAILED";\r
+    public static final String ENGINE_DELETE_RULE_FAILED_FROM_CACHE = "ENGINE_DELETE_RULE_FAILED_FROM_CACHE";\r
+    public static final String ENGINE_CONTAINS_PACKAGE = "ENGINE_CONTAINS_PACKAGE";\r
+    public static final String ENGINE_QUERY_CACHE_FAILED = "ENGINE_QUERY_CACHE_FAILED";\r
+    /*-----------------------Rule Management------------------------------- */\r
+    public static final String RULE_MANAGEMENT_CALL_DELETE_RULE_REST_FAILED = "RULE_MANAGEMENT_CALL_DELETE_RULE_REST_FAILED";\r
+    public static final String RULE_MANAGEMENT_CALL_DEPLOY_RULE_REST_FAILED = "RULE_MANAGEMENT_CALL_DEPLOY_RULE_REST_FAILED";\r
+    public static final String RULE_MANAGEMENT__CALL_CHECK_RULE_REST_FAILED = "RULE_MANAGEMENT__CALL_CHECK_RULE_REST_FAILED";\r
+    public static final String RULE_MANAGEMENT_CREATE_QUERY_SQL_FAILED = "RULE_MANAGEMENT_CREATE_QUERY_SQL_FAILED";\r
+    public static final String RULE_MANAGEMENT_QUERY_RULE_FAILED = "RULE_MANAGEMENT_QUERY_RULE_FAILED";\r
+    public static final String RULE_MANAGEMENT_CREATE_RULE_FAILED = "RULE_MANAGEMENT_CREATE_RULE_FAILED";\r
+    public static final String RULE_MANAGEMENT_DELETE_RULE_FAILED = "RULE_MANAGEMENT_DELETE_RULE_FAILED";\r
+    public static final String RULE_MANAGEMENT_UPDATE_RULE_FAILED = "RULE_MANAGEMENT_UPDATE_RULE_FAILED";\r
+    public static final String RULE_MANAGEMENT_REQUEST_OBJECT_IS_EMPTY = "RULE_MANAGEMENT_REQUEST_OBJECT_IS_EMPTY";\r
+    public static final String RULE_MANAGEMENT_RULE_NAME_IS_EMPTY = "RULE_MANAGEMENT_RULE_NAME_IS_EMPTY";\r
+    public static final String RULE_MANAGEMENT_RULE_NOT_EXIST_DATABASE = "RULE_MANAGEMENT_RULE_NOT_EXIST_DATABASE";\r
+    public static final String RULE_MANAGEMENT_UNKNOWN_EXCEPTION = "RULE_MANAGEMENT_UNKNOWN_EXCEPTION";\r
+    public static final String RULE_MANAGEMENT_REPEAT_RULE_NAME = "RULE_MANAGEMENT_REPEAT_RULE_NAME";\r
+    public static final String RULE_MANAGEMENT_DATA_FORMAT_ERROR = "RULE_MANAGEMENT_DATA_FORMAT_ERROR";\r
+    public static final String RULE_MANAGEMENT_PARAMETER_ENABLED_ERROR = "RULE_MANAGEMENT_PARAMETER_ENABLED_ERROR";\r
+\r
+    private Optional<I18n> optional = null;\r
+\r
+    private I18nProxy() {\r
+        optional = I18n.getInstance("correlation");\r
+    }\r
+\r
+    private static class I18nProxyHolder {\r
+\r
+        private static final I18nProxy INSTANCE = new I18nProxy();\r
+\r
+        private I18nProxyHolder() {\r
+\r
+        }\r
+    }\r
+\r
+    public static I18nProxy getInstance() {\r
+        return I18nProxyHolder.INSTANCE;\r
+    }\r
+\r
+    public String getValue(Locale locale, String key) {\r
+        return optional.get().getLabelValue(key, locale);\r
+    }\r
+\r
+    public String getValueByArgs(Locale locale, String key, String[] arguments) {\r
+        return optional.get().getLabelValue(key, locale, arguments);\r
+    }\r
+\r
+    public Map<String, String> getValue(String key) {\r
+        return optional.get().getLabelValues(key);\r
+    }\r
+\r
+    public String jsonI18n(String key) {\r
+\r
+        return optional.get().getCanonicalLabelValues(key);\r
+    }\r
+\r
+    public String i18nWithArgs(String key, String[] args) {\r
+        String value = "";\r
+        try {\r
+            value = JacksonUtil.beanToJson(optional.get().getLabelValues(key, args));\r
+        } catch (JsonProcessingException e) {\r
+            log.info("get i18n error, key is :" + key, e);\r
+        } catch (IllegalArgumentException e) {\r
+            log.info("get i18n error IllegalArgumentException, key is :" + key + ",args is :  " + Arrays.toString(args),\r
+                    e);\r
+        }\r
+\r
+        return value;\r
+    }\r
+\r
+}\r
diff --git a/pom.xml b/pom.xml
index 2fd60c1..bd4427f 100644 (file)
--- a/pom.xml
+++ b/pom.xml
                 <artifactId>dropwizard-ioc-container</artifactId>\r
                 <version>${project.version}</version>\r
             </dependency>\r
-            <!--<dependency>-->\r
-                <!--<groupId>org.openo.common-services.common-utilities</groupId>-->\r
-                <!--<artifactId>baseservice-i18n</artifactId>-->\r
-                <!--<version>${project.version}</version>-->\r
-            <!--</dependency>-->\r
+            <dependency>\r
+                <groupId>org.openo.common-services.common-utilities</groupId>\r
+                <artifactId>baseservice-i18n</artifactId>\r
+                <version>${project.version}</version>\r
+            </dependency>\r
             <dependency>\r
                 <groupId>org.quartz-scheduler</groupId>\r
                 <artifactId>quartz</artifactId>\r