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/state_utils.h"
17
18namespace OHOS {
19namespace AAFwk {
20std::string StateUtils::StateToStrMap(const AbilityState &state)
21{
22    switch (state) {
23        case INITIAL: return "INITIAL";
24        case INACTIVE: return "INACTIVE";
25        case ACTIVE: return "ACTIVE";
26        case INACTIVATING: return "INACTIVATING";
27        case ACTIVATING: return "ACTIVATING";
28        case TERMINATING: return "TERMINATING";
29        case FOREGROUND: return "FOREGROUND";
30        case BACKGROUND: return "BACKGROUND";
31        case FOREGROUNDING: return "FOREGROUNDING";
32        case BACKGROUNDING: return "BACKGROUNDING";
33        case FOREGROUND_FAILED: return "FOREGROUND_FAILED";
34        case FOREGROUND_INVALID_MODE: return "FOREGROUND_INVALID_MODE";
35        case FOREGROUND_WINDOW_FREEZED: return "FOREGROUND_WINDOW_FREEZED";
36        case FOREGROUND_DO_NOTHING: return "FOREGROUND_DO_NOTHING";
37        case BACKGROUND_FAILED: return "BACKGROUND_FAILED";
38        default: return "INVALIDSTATE";
39    }
40}
41
42std::string StateUtils::AppStateToStrMap(const AppState &state)
43{
44    switch (state) {
45        case AppState::BEGIN: return "BEGIN";
46        case AppState::READY: return "READY";
47        case AppState::FOREGROUND: return "FOREGROUND";
48        case AppState::BACKGROUND: return "BACKGROUND";
49        case AppState::SUSPENDED: return "SUSPENDED";
50        case AppState::TERMINATED: return "TERMINATED";
51        case AppState::END: return "END";
52        case AppState::FOCUS: return "FOCUS";
53        default: return "INVALIDSTATE";
54    }
55}
56
57int StateUtils::ConvertStateMap(const AbilityLifeCycleState &state)
58{
59    switch (state) {
60        case ABILITY_STATE_INITIAL: return INITIAL;
61        case ABILITY_STATE_INACTIVE: return INACTIVE;
62        case ABILITY_STATE_ACTIVE: return ACTIVE;
63        case ABILITY_STATE_FOREGROUND_NEW: return FOREGROUND;
64        case ABILITY_STATE_BACKGROUND_NEW: return BACKGROUND;
65        case ABILITY_STATE_FOREGROUND_FAILED: return FOREGROUND_FAILED;
66        case ABILITY_STATE_INVALID_WINDOW_MODE: return FOREGROUND_INVALID_MODE;
67        case ABILITY_STATE_WINDOW_FREEZED: return FOREGROUND_WINDOW_FREEZED;
68        case ABILITY_STATE_DO_NOTHING: return FOREGROUND_DO_NOTHING;
69        case ABILITY_STATE_BACKGROUND_FAILED: return BACKGROUND_FAILED;
70        default: return DEFAULT_INVAL_VALUE;
71    }
72}
73}  // namespace AAFwk
74}  // namespace OHOS
75
76