1 /*
2 * Copyright (c) 2021 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 "ability_running_record.h"
17
18 namespace OHOS {
19 namespace AppExecFwk {
20 namespace {
21 constexpr const char* BUNDLE_NAME_SCENEBOARD = "com.ohos.sceneboard";
22 constexpr const char* SCENEBOARD_ABILITY_NAME = "com.ohos.sceneboard.MainAbility";
23 }
AbilityRunningRecord(std::shared_ptr<AbilityInfo> info,sptr<IRemoteObject> token,int32_t abilityRecordId)24 AbilityRunningRecord::AbilityRunningRecord(std::shared_ptr<AbilityInfo> info,
25 sptr<IRemoteObject> token, int32_t abilityRecordId)
26 : info_(info), token_(token), abilityRecordId_(abilityRecordId)
27 {}
28
~AbilityRunningRecord()29 AbilityRunningRecord::~AbilityRunningRecord()
30 {}
31
GetName() const32 const std::string &AbilityRunningRecord::GetName() const
33 {
34 return info_->name;
35 }
36
GetBundleName() const37 const std::string &AbilityRunningRecord::GetBundleName() const
38 {
39 return info_->bundleName;
40 }
41
GetModuleName() const42 const std::string &AbilityRunningRecord::GetModuleName() const
43 {
44 return info_->moduleName;
45 }
46
GetAbilityInfo() const47 const std::shared_ptr<AbilityInfo> &AbilityRunningRecord::GetAbilityInfo() const
48 {
49 return info_;
50 }
51
GetWant() const52 const std::shared_ptr<AAFwk::Want> &AbilityRunningRecord::GetWant() const
53 {
54 return want_;
55 }
56
SetWant(const std::shared_ptr<AAFwk::Want> & want)57 void AbilityRunningRecord::SetWant(const std::shared_ptr<AAFwk::Want> &want)
58 {
59 want_ = want;
60 }
61
GetToken() const62 const sptr<IRemoteObject> &AbilityRunningRecord::GetToken() const
63 {
64 return token_;
65 }
66
SetState(const AbilityState state)67 void AbilityRunningRecord::SetState(const AbilityState state)
68 {
69 state_ = state;
70 }
71
GetState() const72 AbilityState AbilityRunningRecord::GetState() const
73 {
74 return state_;
75 }
76
IsSameState(const AbilityState state) const77 bool AbilityRunningRecord::IsSameState(const AbilityState state) const
78 {
79 return state_ == state;
80 }
81
GetLastLaunchTime() const82 int32_t AbilityRunningRecord::GetLastLaunchTime() const
83 {
84 return lastLaunchTime_;
85 }
86
GetPreToken() const87 const sptr<IRemoteObject> AbilityRunningRecord::GetPreToken() const
88 {
89 return preToken_;
90 }
91
SetPreToken(const sptr<IRemoteObject> & preToken)92 void AbilityRunningRecord::SetPreToken(const sptr<IRemoteObject> &preToken)
93 {
94 preToken_ = preToken;
95 }
96
SetVisibility(const int32_t visibility)97 void AbilityRunningRecord::SetVisibility(const int32_t visibility)
98 {
99 visibility_ = visibility;
100 }
101
GetVisibility() const102 int32_t AbilityRunningRecord::GetVisibility() const
103 {
104 return visibility_;
105 }
106
SetPerceptibility(const int32_t perceptibility)107 void AbilityRunningRecord::SetPerceptibility(const int32_t perceptibility)
108 {
109 perceptibility_ = perceptibility;
110 }
111
GetPerceptibility() const112 int32_t AbilityRunningRecord::GetPerceptibility() const
113 {
114 return perceptibility_;
115 }
116
SetConnectionState(const int32_t connectionState)117 void AbilityRunningRecord::SetConnectionState(const int32_t connectionState)
118 {
119 connectionState_ = connectionState;
120 }
121
GetConnectionState() const122 int32_t AbilityRunningRecord::GetConnectionState() const
123 {
124 return connectionState_;
125 }
126
SetEventId(const int64_t eventId)127 void AbilityRunningRecord::SetEventId(const int64_t eventId)
128 {
129 eventId_ = eventId;
130 }
131
GetEventId() const132 int64_t AbilityRunningRecord::GetEventId() const
133 {
134 return eventId_;
135 }
136
SetTerminating()137 void AbilityRunningRecord::SetTerminating()
138 {
139 isTerminating_ = true;
140 }
141
IsTerminating() const142 bool AbilityRunningRecord::IsTerminating() const
143 {
144 return isTerminating_;
145 }
146
SetOwnerUserId(int32_t ownerUserId)147 void AbilityRunningRecord::SetOwnerUserId(int32_t ownerUserId)
148 {
149 ownerUserId_ = ownerUserId;
150 }
151
GetOwnerUserId() const152 int32_t AbilityRunningRecord::GetOwnerUserId() const
153 {
154 return ownerUserId_;
155 }
156
SetIsSingleUser(bool flag)157 void AbilityRunningRecord::SetIsSingleUser(bool flag)
158 {
159 isSingleUser_ = flag;
160 }
161
IsSingleUser() const162 bool AbilityRunningRecord::IsSingleUser() const
163 {
164 return isSingleUser_;
165 }
166
UpdateFocusState(bool isFocus)167 void AbilityRunningRecord::UpdateFocusState(bool isFocus)
168 {
169 isFocused_ = isFocus;
170 }
171
GetFocusFlag() const172 bool AbilityRunningRecord::GetFocusFlag() const
173 {
174 return isFocused_;
175 }
176
SetUIExtensionAbilityId(const int32_t uiExtensionAbilityId)177 void AbilityRunningRecord::SetUIExtensionAbilityId(const int32_t uiExtensionAbilityId)
178 {
179 uiExtensionAbilityId_ = uiExtensionAbilityId;
180 }
181
GetUIExtensionAbilityId() const182 int32_t AbilityRunningRecord::GetUIExtensionAbilityId() const
183 {
184 return uiExtensionAbilityId_;
185 }
186
SetUserRequestCleaningStatus()187 void AbilityRunningRecord::SetUserRequestCleaningStatus()
188 {
189 isUserRequestCleaning_ = true;
190 }
191
IsUserRequestCleaning() const192 bool AbilityRunningRecord::IsUserRequestCleaning() const
193 {
194 return isUserRequestCleaning_;
195 }
196
IsSceneBoard() const197 bool AbilityRunningRecord::IsSceneBoard() const
198 {
199 if (info_ == nullptr) {
200 return false;
201 }
202 return info_->name == SCENEBOARD_ABILITY_NAME && info_->bundleName == BUNDLE_NAME_SCENEBOARD;
203 }
204 } // namespace AppExecFwk
205 } // namespace OHOS
206