2 * Copyright 2017 ZTE Corporation.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
16 package org.openo.baseservice.i18n;
19 import com.fasterxml.jackson.databind.ObjectMapper;
20 import java.util.Optional;
21 import javax.inject.Inject;
22 import org.jvnet.hk2.annotations.Service;
23 import org.openo.baseservice.i18n.ErrorCodeI18n.ErrorItem;
26 public final class DefaultI18nService implements I18nService {
29 * Get the corresponding examples of international documents (all languages), <br>
31 * for the above example topology (for example, the Chinese definition: topo-i18n-zh-CN.json, English definition
32 * Topo -i18n-en-US.json), into the reference into the "TOPO" can be <br>
34 * (i.e. except "-i18n-*.json" after the exact match).
36 * @param i18nFilePrefix International file prefix (-i18n-*.json front part)
37 * @return Optional<I18n>
39 public Optional<I18n> getI18n(String i18nFilePrefix) {
40 return I18nContainer.getInstance().getI18n(i18nFilePrefix);
44 * Gets the corresponding error item based on the error code (including the error description information for all
48 * @return Optional<ErrorItem>
50 public Optional<ErrorItem> getErrorItem(int errorCode) {
51 return ErrorCodeI18n.getInstance().getErrorItem(errorCode);
55 public void setObjectMapper(ObjectMapper objectMapper) {
56 I18nJsonUtil.getInstance(objectMapper);