1eace7efcSopenharmony_ci/*
2eace7efcSopenharmony_ci* Copyright (c) 2024 Huawei Device Co., Ltd.
3eace7efcSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
4eace7efcSopenharmony_ci * you may not use this file except in compliance with the License.
5eace7efcSopenharmony_ci * You may obtain a copy of the License at
6eace7efcSopenharmony_ci *
7eace7efcSopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
8eace7efcSopenharmony_ci *
9eace7efcSopenharmony_ci * Unless required by applicable law or agreed to in writing, software
10eace7efcSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
11eace7efcSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12eace7efcSopenharmony_ci * See the License for the specific language governing permissions and
13eace7efcSopenharmony_ci * limitations under the License.
14eace7efcSopenharmony_ci */
15eace7efcSopenharmony_ci
16eace7efcSopenharmony_ci#include "utils/state_utils.h"
17eace7efcSopenharmony_ci
18eace7efcSopenharmony_cinamespace OHOS {
19eace7efcSopenharmony_cinamespace AAFwk {
20eace7efcSopenharmony_cistd::string StateUtils::StateToStrMap(const AbilityState &state)
21eace7efcSopenharmony_ci{
22eace7efcSopenharmony_ci    switch (state) {
23eace7efcSopenharmony_ci        case INITIAL: return "INITIAL";
24eace7efcSopenharmony_ci        case INACTIVE: return "INACTIVE";
25eace7efcSopenharmony_ci        case ACTIVE: return "ACTIVE";
26eace7efcSopenharmony_ci        case INACTIVATING: return "INACTIVATING";
27eace7efcSopenharmony_ci        case ACTIVATING: return "ACTIVATING";
28eace7efcSopenharmony_ci        case TERMINATING: return "TERMINATING";
29eace7efcSopenharmony_ci        case FOREGROUND: return "FOREGROUND";
30eace7efcSopenharmony_ci        case BACKGROUND: return "BACKGROUND";
31eace7efcSopenharmony_ci        case FOREGROUNDING: return "FOREGROUNDING";
32eace7efcSopenharmony_ci        case BACKGROUNDING: return "BACKGROUNDING";
33eace7efcSopenharmony_ci        case FOREGROUND_FAILED: return "FOREGROUND_FAILED";
34eace7efcSopenharmony_ci        case FOREGROUND_INVALID_MODE: return "FOREGROUND_INVALID_MODE";
35eace7efcSopenharmony_ci        case FOREGROUND_WINDOW_FREEZED: return "FOREGROUND_WINDOW_FREEZED";
36eace7efcSopenharmony_ci        case FOREGROUND_DO_NOTHING: return "FOREGROUND_DO_NOTHING";
37eace7efcSopenharmony_ci        case BACKGROUND_FAILED: return "BACKGROUND_FAILED";
38eace7efcSopenharmony_ci        default: return "INVALIDSTATE";
39eace7efcSopenharmony_ci    }
40eace7efcSopenharmony_ci}
41eace7efcSopenharmony_ci
42eace7efcSopenharmony_cistd::string StateUtils::AppStateToStrMap(const AppState &state)
43eace7efcSopenharmony_ci{
44eace7efcSopenharmony_ci    switch (state) {
45eace7efcSopenharmony_ci        case AppState::BEGIN: return "BEGIN";
46eace7efcSopenharmony_ci        case AppState::READY: return "READY";
47eace7efcSopenharmony_ci        case AppState::FOREGROUND: return "FOREGROUND";
48eace7efcSopenharmony_ci        case AppState::BACKGROUND: return "BACKGROUND";
49eace7efcSopenharmony_ci        case AppState::SUSPENDED: return "SUSPENDED";
50eace7efcSopenharmony_ci        case AppState::TERMINATED: return "TERMINATED";
51eace7efcSopenharmony_ci        case AppState::END: return "END";
52eace7efcSopenharmony_ci        case AppState::FOCUS: return "FOCUS";
53eace7efcSopenharmony_ci        default: return "INVALIDSTATE";
54eace7efcSopenharmony_ci    }
55eace7efcSopenharmony_ci}
56eace7efcSopenharmony_ci
57eace7efcSopenharmony_ciint StateUtils::ConvertStateMap(const AbilityLifeCycleState &state)
58eace7efcSopenharmony_ci{
59eace7efcSopenharmony_ci    switch (state) {
60eace7efcSopenharmony_ci        case ABILITY_STATE_INITIAL: return INITIAL;
61eace7efcSopenharmony_ci        case ABILITY_STATE_INACTIVE: return INACTIVE;
62eace7efcSopenharmony_ci        case ABILITY_STATE_ACTIVE: return ACTIVE;
63eace7efcSopenharmony_ci        case ABILITY_STATE_FOREGROUND_NEW: return FOREGROUND;
64eace7efcSopenharmony_ci        case ABILITY_STATE_BACKGROUND_NEW: return BACKGROUND;
65eace7efcSopenharmony_ci        case ABILITY_STATE_FOREGROUND_FAILED: return FOREGROUND_FAILED;
66eace7efcSopenharmony_ci        case ABILITY_STATE_INVALID_WINDOW_MODE: return FOREGROUND_INVALID_MODE;
67eace7efcSopenharmony_ci        case ABILITY_STATE_WINDOW_FREEZED: return FOREGROUND_WINDOW_FREEZED;
68eace7efcSopenharmony_ci        case ABILITY_STATE_DO_NOTHING: return FOREGROUND_DO_NOTHING;
69eace7efcSopenharmony_ci        case ABILITY_STATE_BACKGROUND_FAILED: return BACKGROUND_FAILED;
70eace7efcSopenharmony_ci        default: return DEFAULT_INVAL_VALUE;
71eace7efcSopenharmony_ci    }
72eace7efcSopenharmony_ci}
73eace7efcSopenharmony_ci}  // namespace AAFwk
74eace7efcSopenharmony_ci}  // namespace OHOS
75eace7efcSopenharmony_ci
76