1 /*
2 * Copyright (c) 2024 Huawei Device 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
16 #include "utils/dump_utils.h"
17
18 namespace OHOS {
19 namespace AAFwk {
DumpMapOne(std::string argString)20 std::pair<bool, DumpUtils::DumpKey> DumpUtils::DumpMapOne(std::string argString)
21 {
22 std::pair<bool, DumpUtils::DumpKey> result(false, KEY_DUMP_ALL);
23
24 if (argString.compare("-a") == 0 || argString.compare("--all") == 0) {
25 result.first = true;
26 result.second = KEY_DUMP_ALL;
27 } else if (argString.compare("-l") == 0 || argString.compare("--stack-list") == 0) {
28 result.first = true;
29 result.second = KEY_DUMP_STACK_LIST;
30 } else if (argString.compare("-s") == 0 || argString.compare("--stack") == 0) {
31 result.first = true;
32 result.second = KEY_DUMP_STACK;
33 } else if (argString.compare("-m") == 0 || argString.compare("--mission") == 0) {
34 result.first = true;
35 result.second = KEY_DUMP_MISSION;
36 } else if (argString.compare("-t") == 0 || argString.compare("--top") == 0) {
37 result.first = true;
38 result.second = KEY_DUMP_TOP_ABILITY;
39 } else if (argString.compare("-w") == 0 || argString.compare("--waiting-queue") == 0) {
40 result.first = true;
41 result.second = KEY_DUMP_WAIT_QUEUE;
42 } else if (argString.compare("-e") == 0 || argString.compare("--serv") == 0) {
43 result.first = true;
44 result.second = KEY_DUMP_SERVICE;
45 } else if (argString.compare("-d") == 0 || argString.compare("--data") == 0) {
46 result.first = true;
47 result.second = KEY_DUMP_DATA;
48 } else if (argString.compare("-f") == 0 || argString.compare("-focus") == 0) {
49 result.first = true;
50 result.second = KEY_DUMP_FOCUS_ABILITY;
51 }
52 return result;
53 }
54
DumpMapTwo(std::string argString)55 std::pair<bool, DumpUtils::DumpKey> DumpUtils::DumpMapTwo(std::string argString)
56 {
57 std::pair<bool, DumpUtils::DumpKey> result(false, KEY_DUMP_ALL);
58
59 if (argString.compare("-z") == 0 || argString.compare("--win-mode") == 0) {
60 result.first = true;
61 result.second = KEY_DUMP_WINDOW_MODE;
62 } else if (argString.compare("-L") == 0 || argString.compare("--mission-list") == 0) {
63 result.first = true;
64 result.second = KEY_DUMP_MISSION_LIST;
65 } else if (argString.compare("-S") == 0 || argString.compare("--mission-infos") == 0) {
66 result.first = true;
67 result.second = KEY_DUMP_MISSION_INFOS;
68 }
69 return result;
70 }
71
DumpMap(std::string argString)72 std::pair<bool, DumpUtils::DumpKey> DumpUtils::DumpMap(std::string argString)
73 {
74 std::pair<bool, DumpUtils::DumpKey> result(false, KEY_DUMP_ALL);
75
76 auto dumpMapOne = DumpMapOne(argString);
77 if (dumpMapOne.first) {
78 return dumpMapOne;
79 }
80 auto dumpMapTwo = DumpMapTwo(argString);
81 if (dumpMapTwo.first) {
82 return dumpMapTwo;
83 }
84 return result;
85 }
86
DumpsysMap(std::string argString)87 std::pair<bool, DumpUtils::DumpsysKey> DumpUtils::DumpsysMap(std::string argString)
88 {
89 std::pair<bool, DumpUtils::DumpsysKey> result(false, KEY_DUMP_SYS_ALL);
90
91 if (argString.compare("-a") == 0 || argString.compare("--all") == 0) {
92 result.first = true;
93 result.second = KEY_DUMP_SYS_ALL;
94 } else if (argString.compare("-l") == 0 || argString.compare("--mission-list") == 0) {
95 result.first = true;
96 result.second = KEY_DUMP_SYS_MISSION_LIST;
97 } else if (argString.compare("-i") == 0 || argString.compare("--ability") == 0) {
98 result.first = true;
99 result.second = KEY_DUMP_SYS_ABILITY;
100 } else if (argString.compare("-e") == 0 || argString.compare("--extension") == 0) {
101 result.first = true;
102 result.second = KEY_DUMP_SYS_SERVICE;
103 } else if (argString.compare("-p") == 0 || argString.compare("--pending") == 0) {
104 result.first = true;
105 result.second = KEY_DUMP_SYS_PENDING;
106 } else if (argString.compare("-r") == 0 || argString.compare("--process") == 0) {
107 result.first = true;
108 result.second = KEY_DUMP_SYS_PROCESS;
109 } else if (argString.compare("-d") == 0 || argString.compare("--data") == 0) {
110 result.first = true;
111 result.second = KEY_DUMP_SYS_DATA;
112 }
113 return result;
114 }
115 } // namespace AAFwk
116 } // namespace OHOS
117