1/**
2 * Copyright (c) 2022 Shenzhen Kaihong Digital Industry Development Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 *     http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16import hilog from '@ohos.hilog';
17
18class Logger {
19  private domain: number;
20  private prefix: string;
21  private format: string = '%{public}s, %{public}s';
22
23  /**
24   * constructor.
25   *
26   * @param Prefix Identifies the log tag.
27   * @param domain Domain Indicates the service domain, which is a hexadecimal integer ranging from 0x0 to 0xFFFFF.
28   */
29  constructor(prefix: string = 'MyApp', domain: number = 0xFF00) {
30    this.prefix = prefix;
31    this.domain = domain;
32  }
33
34  debug(...args: string[]) {
35    hilog.debug(this.domain, this.prefix, this.format, args)
36  }
37
38  info(...args: string[]) {
39    hilog.info(this.domain, this.prefix, this.format, args)
40  }
41
42  warn(...args: string[]) {
43    hilog.warn(this.domain, this.prefix, this.format, args)
44  }
45
46  error(...args: string[]) {
47    hilog.error(this.domain, this.prefix, this.format, args)
48  }
49}
50
51export default new Logger('TargetManagement', 0xFF00);