• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2022 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 "background_task_subscriber.h"
17 
18 namespace OHOS {
19 namespace BackgroundTaskMgr {
BackgroundTaskSubscriber()20 BackgroundTaskSubscriber::BackgroundTaskSubscriber()
21 {
22     impl_ = new (std::nothrow) BackgroundTaskSubscriberImpl(*this);
23 };
24 
~BackgroundTaskSubscriber()25 BackgroundTaskSubscriber::~BackgroundTaskSubscriber() {}
26 
OnConnected()27 void BackgroundTaskSubscriber::OnConnected() {}
28 
OnDisconnected()29 void BackgroundTaskSubscriber::OnDisconnected() {}
30 
OnTransientTaskStart(const std::shared_ptr<TransientTaskAppInfo> & info)31 void BackgroundTaskSubscriber::OnTransientTaskStart(const std::shared_ptr<TransientTaskAppInfo>& info) {}
32 
OnTransientTaskEnd(const std::shared_ptr<TransientTaskAppInfo> & info)33 void BackgroundTaskSubscriber::OnTransientTaskEnd(const std::shared_ptr<TransientTaskAppInfo>& info) {}
34 
OnTransientTaskErr(const std::shared_ptr<TransientTaskAppInfo> & info)35 void BackgroundTaskSubscriber::OnTransientTaskErr(const std::shared_ptr<TransientTaskAppInfo>& info) {}
36 
OnAppTransientTaskStart(const std::shared_ptr<TransientTaskAppInfo> & info)37 void BackgroundTaskSubscriber::OnAppTransientTaskStart(const std::shared_ptr<TransientTaskAppInfo>& info) {}
38 
OnAppTransientTaskEnd(const std::shared_ptr<TransientTaskAppInfo> & info)39 void BackgroundTaskSubscriber::OnAppTransientTaskEnd(const std::shared_ptr<TransientTaskAppInfo>& info) {}
40 
OnContinuousTaskStart(const std::shared_ptr<ContinuousTaskCallbackInfo> & continuousTaskCallbackInfo)41 void BackgroundTaskSubscriber::OnContinuousTaskStart(
42     const std::shared_ptr<ContinuousTaskCallbackInfo> &continuousTaskCallbackInfo) {}
43 
OnContinuousTaskUpdate(const std::shared_ptr<ContinuousTaskCallbackInfo> & continuousTaskCallbackInfo)44 void BackgroundTaskSubscriber::OnContinuousTaskUpdate(
45     const std::shared_ptr<ContinuousTaskCallbackInfo> &continuousTaskCallbackInfo) {}
46 
OnContinuousTaskStop(const std::shared_ptr<ContinuousTaskCallbackInfo> & continuousTaskCallbackInfo)47 void BackgroundTaskSubscriber::OnContinuousTaskStop(
48     const std::shared_ptr<ContinuousTaskCallbackInfo> &continuousTaskCallbackInfo) {}
49 
OnAppContinuousTaskStop(int32_t uid)50 void BackgroundTaskSubscriber::OnAppContinuousTaskStop(int32_t uid) {}
51 
OnRemoteDied(const wptr<IRemoteObject> & object)52 void BackgroundTaskSubscriber::OnRemoteDied(const wptr<IRemoteObject> &object) {}
53 
OnProcEfficiencyResourcesApply(const std::shared_ptr<ResourceCallbackInfo> & resourceInfo)54 void BackgroundTaskSubscriber::OnProcEfficiencyResourcesApply(
55     const std::shared_ptr<ResourceCallbackInfo> &resourceInfo) {}
56 
OnProcEfficiencyResourcesReset(const std::shared_ptr<ResourceCallbackInfo> & resourceInfo)57 void BackgroundTaskSubscriber::OnProcEfficiencyResourcesReset(
58     const std::shared_ptr<ResourceCallbackInfo> &resourceInfo) {}
59 
OnAppEfficiencyResourcesApply(const std::shared_ptr<ResourceCallbackInfo> & resourceInfo)60 void BackgroundTaskSubscriber::OnAppEfficiencyResourcesApply(
61     const std::shared_ptr<ResourceCallbackInfo> &resourceInfo) {}
62 
OnAppEfficiencyResourcesReset(const std::shared_ptr<ResourceCallbackInfo> & resourceInfo)63 void BackgroundTaskSubscriber::OnAppEfficiencyResourcesReset(
64     const std::shared_ptr<ResourceCallbackInfo> &resourceInfo) {}
65 
GetImpl() const66 const sptr<BackgroundTaskSubscriber::BackgroundTaskSubscriberImpl> BackgroundTaskSubscriber::GetImpl() const
67 {
68     return impl_;
69 }
70 
BackgroundTaskSubscriberImpl(BackgroundTaskSubscriber & subscriber)71 BackgroundTaskSubscriber::BackgroundTaskSubscriberImpl::BackgroundTaskSubscriberImpl(
72     BackgroundTaskSubscriber &subscriber) : subscriber_(subscriber) {}
73 
OnConnected()74 ErrCode BackgroundTaskSubscriber::BackgroundTaskSubscriberImpl::OnConnected() {return ERR_OK;}
75 
OnDisconnected()76 ErrCode BackgroundTaskSubscriber::BackgroundTaskSubscriberImpl::OnDisconnected() {return ERR_OK;}
77 
OnAppEfficiencyResourcesApply(const ResourceCallbackInfo & resourceInfo)78 ErrCode BackgroundTaskSubscriber::BackgroundTaskSubscriberImpl::OnAppEfficiencyResourcesApply(
79     const ResourceCallbackInfo &resourceInfo) __attribute__((no_sanitize("cfi")))
80 {
81     std::shared_ptr<ResourceCallbackInfo> sharedResourceInfo = std::make_shared<ResourceCallbackInfo>(resourceInfo);
82     subscriber_.OnAppEfficiencyResourcesApply(sharedResourceInfo);
83     return ERR_OK;
84 }
85 
OnAppEfficiencyResourcesReset(const ResourceCallbackInfo & resourceInfo)86 ErrCode BackgroundTaskSubscriber::BackgroundTaskSubscriberImpl::OnAppEfficiencyResourcesReset(
87     const ResourceCallbackInfo &resourceInfo) __attribute__((no_sanitize("cfi")))
88 {
89     std::shared_ptr<ResourceCallbackInfo> sharedResourceInfo = std::make_shared<ResourceCallbackInfo>(resourceInfo);
90     subscriber_.OnAppEfficiencyResourcesReset(sharedResourceInfo);
91     return ERR_OK;
92 }
93 
OnProcEfficiencyResourcesApply(const ResourceCallbackInfo & resourceInfo)94 ErrCode BackgroundTaskSubscriber::BackgroundTaskSubscriberImpl::OnProcEfficiencyResourcesApply(
95     const ResourceCallbackInfo &resourceInfo) __attribute__((no_sanitize("cfi")))
96 {
97     std::shared_ptr<ResourceCallbackInfo> sharedResourceInfo = std::make_shared<ResourceCallbackInfo>(resourceInfo);
98     subscriber_.OnProcEfficiencyResourcesApply(sharedResourceInfo);
99     return ERR_OK;
100 }
101 
OnProcEfficiencyResourcesReset(const ResourceCallbackInfo & resourceInfo)102 ErrCode BackgroundTaskSubscriber::BackgroundTaskSubscriberImpl::OnProcEfficiencyResourcesReset(
103     const ResourceCallbackInfo &resourceInfo) __attribute__((no_sanitize("cfi")))
104 {
105     std::shared_ptr<ResourceCallbackInfo> sharedResourceInfo = std::make_shared<ResourceCallbackInfo>(resourceInfo);
106     subscriber_.OnProcEfficiencyResourcesReset(sharedResourceInfo);
107     return ERR_OK;
108 }
109 
OnTransientTaskStart(const TransientTaskAppInfo & info)110 ErrCode BackgroundTaskSubscriber::BackgroundTaskSubscriberImpl::OnTransientTaskStart(
111     const TransientTaskAppInfo& info)
112 {
113     std::shared_ptr<TransientTaskAppInfo> sharedInfo = std::make_shared<TransientTaskAppInfo>(info);
114     subscriber_.OnTransientTaskStart(sharedInfo);
115     return ERR_OK;
116 }
117 
OnTransientTaskEnd(const TransientTaskAppInfo & info)118 ErrCode BackgroundTaskSubscriber::BackgroundTaskSubscriberImpl::OnTransientTaskEnd(
119     const TransientTaskAppInfo& info)
120 {
121     std::shared_ptr<TransientTaskAppInfo> sharedInfo = std::make_shared<TransientTaskAppInfo>(info);
122     subscriber_.OnTransientTaskEnd(sharedInfo);
123     return ERR_OK;
124 }
125 
OnTransientTaskErr(const TransientTaskAppInfo & info)126 ErrCode BackgroundTaskSubscriber::BackgroundTaskSubscriberImpl::OnTransientTaskErr(
127     const TransientTaskAppInfo& info)
128 {
129     std::shared_ptr<TransientTaskAppInfo> sharedInfo = std::make_shared<TransientTaskAppInfo>(info);
130     subscriber_.OnTransientTaskErr(sharedInfo);
131     return ERR_OK;
132 }
133 
OnAppTransientTaskStart(const TransientTaskAppInfo & info)134 ErrCode BackgroundTaskSubscriber::BackgroundTaskSubscriberImpl::OnAppTransientTaskStart(
135     const TransientTaskAppInfo& info)
136 {
137     std::shared_ptr<TransientTaskAppInfo> sharedInfo = std::make_shared<TransientTaskAppInfo>(info);
138     subscriber_.OnAppTransientTaskStart(sharedInfo);
139     return ERR_OK;
140 }
141 
OnAppTransientTaskEnd(const TransientTaskAppInfo & info)142 ErrCode BackgroundTaskSubscriber::BackgroundTaskSubscriberImpl::OnAppTransientTaskEnd(
143     const TransientTaskAppInfo& info)
144 {
145     std::shared_ptr<TransientTaskAppInfo> sharedInfo = std::make_shared<TransientTaskAppInfo>(info);
146     subscriber_.OnAppTransientTaskEnd(sharedInfo);
147     return ERR_OK;
148 }
149 
OnContinuousTaskStart(const ContinuousTaskCallbackInfo & continuousTaskCallbackInfo)150 ErrCode BackgroundTaskSubscriber::BackgroundTaskSubscriberImpl::OnContinuousTaskStart(
151     const ContinuousTaskCallbackInfo &continuousTaskCallbackInfo) __attribute__((no_sanitize("cfi")))
152 {
153     std::shared_ptr<ContinuousTaskCallbackInfo> sharedInfo =
154         std::make_shared<ContinuousTaskCallbackInfo>(continuousTaskCallbackInfo);
155     subscriber_.OnContinuousTaskStart(sharedInfo);
156     return ERR_OK;
157 }
158 
OnContinuousTaskUpdate(const ContinuousTaskCallbackInfo & continuousTaskCallbackInfo)159 ErrCode BackgroundTaskSubscriber::BackgroundTaskSubscriberImpl::OnContinuousTaskUpdate(
160     const ContinuousTaskCallbackInfo &continuousTaskCallbackInfo) __attribute__((no_sanitize("cfi")))
161 {
162     std::shared_ptr<ContinuousTaskCallbackInfo> sharedInfo =
163         std::make_shared<ContinuousTaskCallbackInfo>(continuousTaskCallbackInfo);
164     subscriber_.OnContinuousTaskUpdate(sharedInfo);
165     return ERR_OK;
166 }
167 
OnContinuousTaskStop(const ContinuousTaskCallbackInfo & continuousTaskCallbackInfo)168 ErrCode BackgroundTaskSubscriber::BackgroundTaskSubscriberImpl::OnContinuousTaskStop(
169     const ContinuousTaskCallbackInfo &continuousTaskCallbackInfo) __attribute__((no_sanitize("cfi")))
170 {
171     std::shared_ptr<ContinuousTaskCallbackInfo> sharedInfo =
172         std::make_shared<ContinuousTaskCallbackInfo>(continuousTaskCallbackInfo);
173     subscriber_.OnContinuousTaskStop(sharedInfo);
174     return ERR_OK;
175 }
176 
OnAppContinuousTaskStop(int32_t uid)177 ErrCode BackgroundTaskSubscriber::BackgroundTaskSubscriberImpl::OnAppContinuousTaskStop(int32_t uid)
178     __attribute__((no_sanitize("cfi")))
179 {
180     subscriber_.OnAppContinuousTaskStop(uid);
181     return ERR_OK;
182 }
183 }  // namespace BackgroundTaskMgr
184 }  // namespace OHOS