2 * Copyright 2017 ZTE Corporation.
\r
4 * Licensed under the Apache License, Version 2.0 (the "License");
\r
5 * you may not use this file except in compliance with the License.
\r
6 * You may obtain a copy of the License at
\r
8 * http://www.apache.org/licenses/LICENSE-2.0
\r
10 * Unless required by applicable law or agreed to in writing, software
\r
11 * distributed under the License is distributed on an "AS IS" BASIS,
\r
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
\r
13 * See the License for the specific language governing permissions and
\r
14 * limitations under the License.
\r
16 package org.openo.holmes.common.utils;
\r
18 import com.fasterxml.jackson.core.JsonProcessingException;
\r
19 import java.util.Arrays;
\r
20 import java.util.Locale;
\r
21 import java.util.Map;
\r
22 import java.util.Optional;
\r
23 import lombok.extern.slf4j.Slf4j;
\r
24 import org.openo.baseservice.i18n.I18n;
\r
27 public class I18nProxy {
\r
29 /*-----------------------Engine------------------------------- */
\r
30 public static final String ENGINE_CONTENT_ILLEGALITY = "ENGINE_CONTENT_ILLEGALITY";
\r
31 public static final String ENGINE_DEPLOY_RULE_FAILED = "ENGINE_DEPLOY_RULE_FAILED";
\r
32 public static final String ENGINE_DELETE_RULE_NULL = "ENGINE_DELETE_RULE_NULL";
\r
33 public static final String ENGINE_DELETE_RULE_FAILED = "ENGINE_DELETE_RULE_FAILED";
\r
34 public static final String ENGINE_INSERT_RULE_CACHE_FAILED = "ENGINE_INSERT_RULE_CACHE_FAILED";
\r
35 public static final String ENGINE_DELETE_RULE_FAILED_FROM_CACHE = "ENGINE_DELETE_RULE_FAILED_FROM_CACHE";
\r
36 public static final String ENGINE_CONTAINS_PACKAGE = "ENGINE_CONTAINS_PACKAGE";
\r
37 public static final String ENGINE_QUERY_CACHE_FAILED = "ENGINE_QUERY_CACHE_FAILED";
\r
38 /*-----------------------Rule Management------------------------------- */
\r
39 public static final String RULE_MANAGEMENT_CALL_DELETE_RULE_REST_FAILED = "RULE_MANAGEMENT_CALL_DELETE_RULE_REST_FAILED";
\r
40 public static final String RULE_MANAGEMENT_CALL_DEPLOY_RULE_REST_FAILED = "RULE_MANAGEMENT_CALL_DEPLOY_RULE_REST_FAILED";
\r
41 public static final String RULE_MANAGEMENT__CALL_CHECK_RULE_REST_FAILED = "RULE_MANAGEMENT__CALL_CHECK_RULE_REST_FAILED";
\r
42 public static final String RULE_MANAGEMENT_CREATE_QUERY_SQL_FAILED = "RULE_MANAGEMENT_CREATE_QUERY_SQL_FAILED";
\r
43 public static final String RULE_MANAGEMENT_QUERY_RULE_FAILED = "RULE_MANAGEMENT_QUERY_RULE_FAILED";
\r
44 public static final String RULE_MANAGEMENT_CREATE_RULE_FAILED = "RULE_MANAGEMENT_CREATE_RULE_FAILED";
\r
45 public static final String RULE_MANAGEMENT_DELETE_RULE_FAILED = "RULE_MANAGEMENT_DELETE_RULE_FAILED";
\r
46 public static final String RULE_MANAGEMENT_UPDATE_RULE_FAILED = "RULE_MANAGEMENT_UPDATE_RULE_FAILED";
\r
47 public static final String RULE_MANAGEMENT_REQUEST_OBJECT_IS_EMPTY = "RULE_MANAGEMENT_REQUEST_OBJECT_IS_EMPTY";
\r
48 public static final String RULE_MANAGEMENT_RULE_NAME_IS_EMPTY = "RULE_MANAGEMENT_RULE_NAME_IS_EMPTY";
\r
49 public static final String RULE_MANAGEMENT_RULE_NOT_EXIST_DATABASE = "RULE_MANAGEMENT_RULE_NOT_EXIST_DATABASE";
\r
50 public static final String RULE_MANAGEMENT_UNKNOWN_EXCEPTION = "RULE_MANAGEMENT_UNKNOWN_EXCEPTION";
\r
51 public static final String RULE_MANAGEMENT_REPEAT_RULE_NAME = "RULE_MANAGEMENT_REPEAT_RULE_NAME";
\r
52 public static final String RULE_MANAGEMENT_DATA_FORMAT_ERROR = "RULE_MANAGEMENT_DATA_FORMAT_ERROR";
\r
53 public static final String RULE_MANAGEMENT_PARAMETER_ENABLED_ERROR = "RULE_MANAGEMENT_PARAMETER_ENABLED_ERROR";
\r
54 public static final String RULE_MANAGEMENT_DB_ERROR = "RULE_MANAGEMENT_DB_ERROR";
\r
56 private Optional<I18n> optional = null;
\r
58 private I18nProxy() {
\r
59 optional = I18n.getInstance("correlation");
\r
62 private static class I18nProxyHolder {
\r
64 private static final I18nProxy INSTANCE = new I18nProxy();
\r
66 private I18nProxyHolder() {
\r
71 public static I18nProxy getInstance() {
\r
72 return I18nProxyHolder.INSTANCE;
\r
75 public String getValue(Locale locale, String key) {
\r
76 return optional.get().getLabelValue(key, locale);
\r
79 public String getValueByArgs(Locale locale, String key, String[] arguments) {
\r
80 return optional.get().getLabelValue(key, locale, arguments);
\r
83 public Map<String, String> getValue(String key) {
\r
84 return optional.get().getLabelValues(key);
\r
87 public String jsonI18n(String key) {
\r
89 return optional.get().getCanonicalLabelValues(key);
\r
92 public String i18nWithArgs(String key, String[] args) {
\r
95 value = JacksonUtil.beanToJson(optional.get().getLabelValues(key, args));
\r
96 } catch (JsonProcessingException e) {
\r
97 log.info("get i18n error, key is :" + key, e);
\r
98 } catch (IllegalArgumentException e) {
\r
99 log.info("get i18n error IllegalArgumentException, key is :" + key + ",args is : " + Arrays.toString(args),
\r