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 18namespace OHOS { 19namespace AAFwk { 20std::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 55std::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 72std::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 87std::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