openharmony_ci e1b6dc5a0b !125 【配置策略】PAC开启
Merge pull request !125 from 谢凯明/master
2024-09-10 09:05:28 +00:00
2021-04-07 14:46:49 +08:00
2023-11-25 17:08:39 +08:00
2024-09-10 06:18:45 +00:00
2024-08-02 04:39:12 +00:00
2024-08-06 17:21:52 +08:00
2024-06-21 15:42:21 +08:00
2024-08-01 19:09:15 +08:00
2022-03-07 15:57:18 +08:00
2024-05-29 15:09:06 +08:00
2022-11-15 15:14:43 +08:00

Configuration Policy Component

Introduction

The configuration policy component, namely, customization_config_policy, provides APIs for each service module to obtain the configuration directories at different levels or the configuration file paths.

System Architecture

Figure 1 Architecture of the configuration policy component

The architecture is described as follows:

  • interfaces provides the path of the file with the highest priority and all-level paths of the specified file.
  • frameworks initializes the configuration directory and queries the file path.

Directory Structure

The code directory structure of the configuration policy component is as follows:

/base/customization/
├── config_policy           # Code repository for the configuration policy component
│   ├── frameworks          # Core code of the configuration policy component
│   │   ├── config_policy   # Configuration policy module
│   │   │   └── src         # Implementation code
│   ├── interfaces          # APIs of the configuration policy component
│   │   ├── inner_api       # APIs for internal subsystems
│   │   └── kits            # JavaScript APIs of the configurationpolicy component
│   └── test                # Test code

Usage

Call the APIs of the configuration policy component to obtain the configuration directories at different levels or the configuration file paths.

#include "config_policy_utils.h"

CfgDir *cfgDir = GetCfgDirList(); // Obtain the configuration directory list.
FreeCfgDirList(cfgDir); // Release the memory after the list is obtained.

const char *cfgPath = "etc/xml/cfg.xml"; // Set the relative path and name of the configuration file.
CfgFiles *cfgFiles = GetCfgFiles(cfgPath); // Obtain the configuration file paths of all configuration levels.
FreeCfgFiles(cfgFiles); // Release the memory after the information is obtained.

const char *userPath = "etc/xml/user.xml"; // Set the relative path and name of the configuration file.
char buf[MAX_PATH_LEN] = {0};
char *filePath = GetOneCfgFile(userPath, buf, MAX_PATH_LEN); // Obtain the path of the configuration file with the highest priority.

Constraints

Programming language: C/C++

Repositories Involved

customization_config_policy

S
Description
暂无描述
Readme 1.3 MiB
Languages
C++ 74.5%
C 25.5%