• 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 "ohos_adapter_helper.h"
17 
18 #include "aafwk_app_mgr_client_adapter_impl.h"
19 #include "access_token_adapter_impl.h"
20 #include "audio_renderer_adapter_impl.h"
21 #include "audio_capturer_adapter_impl.h"
22 #include "audio_system_manager_adapter_impl.h"
23 #if defined(NWEB_BATTERY_MANAGER_ENABLE)
24 #include "battery_mgr_client_adapter_impl.h"
25 #endif
26 #include "camera_manager_adapter_impl.h"
27 #include "cert_mgr_adapter_impl.h"
28 #include "datashare_adapter_impl.h"
29 #include "date_time_format_adapter_impl.h"
30 #include "display_manager_adapter_impl.h"
31 #include "enterprise_device_management_adapter_impl.h"
32 #include "event_handler_adapter_impl.h"
33 #include "hisysevent_adapter_impl.h"
34 #include "hitrace_adapter_impl.h"
35 #include "imf_adapter_impl.h"
36 #include "keystore_adapter_impl.h"
37 #if defined(NWEB_MEDIA_AVCODEC_ENABLE)
38 #include "media_codec_decoder_adapter_impl.h"
39 #endif
40 #include "mmi_adapter_impl.h"
41 #include "native_image_adapter_impl.h"
42 #if defined(NWEB_TEL_ENABLE)
43 #include "net_connect_adapter_impl.h"
44 #endif
45 #include "net_proxy_adapter_impl.h"
46 #include "ohos_init_web_adapter_impl.h"
47 #include "ohos_resource_adapter_impl.h"
48 #include "ohos_web_data_base_adapter_impl.h"
49 #include "ohos_web_permission_data_base_adapter_impl.h"
50 #include "pasteboard_client_adapter_impl.h"
51 #if defined(NWEB_MEDIA_PLAYER_ENABLE)
52 #include "player_framework_adapter_impl.h"
53 #endif
54 #if defined(NWEB_POWER_MANAGER_ENABLE)
55 #include "power_mgr_client_adapter_impl.h"
56 #endif
57 #include "print_manager_adapter_impl.h"
58 #if defined(NWEB_CAMERA_ENABLE)
59 #include "screen_capture_adapter_impl.h"
60 #endif
61 #include "soc_perf_client_adapter_impl.h"
62 #include "surface_adapter_impl.h"
63 #include "system_properties_adapter_impl.h"
64 #include "vsync_adapter_impl.h"
65 #include "window_adapter_impl.h"
66 
67 namespace OHOS::NWeb {
68 // static
GetInstance()69 OhosAdapterHelper& OhosAdapterHelper::GetInstance()
70 {
71     static OhosAdapterHelper ohosAdapter;
72     return ohosAdapter;
73 }
74 
CreateAafwkAdapter()75 std::unique_ptr<AafwkAppMgrClientAdapter> OhosAdapterHelper::CreateAafwkAdapter()
76 {
77     return std::make_unique<AafwkAppMgrClientAdapterImpl>();
78 }
79 
CreatePowerMgrClientAdapter()80 std::unique_ptr<PowerMgrClientAdapter> OhosAdapterHelper::CreatePowerMgrClientAdapter()
81 {
82 #if defined(NWEB_POWER_MANAGER_ENABLE)
83     return std::make_unique<PowerMgrClientAdapterImpl>();
84 #else
85     return nullptr;
86 #endif
87 }
88 
CreateDisplayMgrAdapter()89 std::unique_ptr<DisplayManagerAdapter> OhosAdapterHelper::CreateDisplayMgrAdapter()
90 {
91     return std::make_unique<DisplayManagerAdapterImpl>();
92 }
93 
CreateBatteryClientAdapter()94 std::unique_ptr<BatteryMgrClientAdapter> OhosAdapterHelper::CreateBatteryClientAdapter()
95 {
96 #if defined(NWEB_BATTERY_MANAGER_ENABLE)
97     return std::make_unique<BatteryMgrClientAdapterImpl>();
98 #else
99     return nullptr;
100 #endif
101 }
102 
GetOhosWebDataBaseAdapterInstance()103 OhosWebDataBaseAdapter& OhosAdapterHelper::GetOhosWebDataBaseAdapterInstance()
104 {
105     return OhosWebDataBaseAdapterImpl::GetInstance();
106 }
107 
CreateNetConnectAdapter()108 std::unique_ptr<NetConnectAdapter> OhosAdapterHelper::CreateNetConnectAdapter()
109 {
110 #if defined(NWEB_TEL_ENABLE)
111     return std::make_unique<NetConnectAdapterImpl>();
112 #else
113     return nullptr;
114 #endif
115 }
116 
GetPasteBoard() const117 PasteBoardClientAdapter& OhosAdapterHelper::GetPasteBoard() const
118 {
119     return PasteBoardClientAdapterImpl::GetInstance();
120 }
121 
CreateAudioRendererAdapter()122 std::unique_ptr<AudioRendererAdapter> OhosAdapterHelper::CreateAudioRendererAdapter()
123 {
124 #if defined(NWEB_AUDIO_ENABLE)
125     return std::make_unique<AudioRendererAdapterImpl>();
126 #else
127     return nullptr;
128 #endif
129 }
130 
CreateAudioCapturerAdapter()131 std::unique_ptr<AudioCapturerAdapter> OhosAdapterHelper::CreateAudioCapturerAdapter()
132 {
133 #if defined(NWEB_AUDIO_ENABLE)
134     return std::make_unique<AudioCapturerAdapterImpl>();
135 #else
136     return nullptr;
137 #endif
138 }
139 
GetAudioSystemManager() const140 AudioSystemManagerAdapter& OhosAdapterHelper::GetAudioSystemManager() const
141 {
142     return AudioSystemManagerAdapterImpl::GetInstance();
143 }
144 
GetWebPermissionDataBaseInstance()145 OhosWebPermissionDataBaseAdapter& OhosAdapterHelper::GetWebPermissionDataBaseInstance()
146 {
147     return OhosWebPermissionDataBaseAdapterImpl::GetInstance();
148 }
149 
CreateMMIAdapter()150 std::unique_ptr<MMIAdapter> OhosAdapterHelper::CreateMMIAdapter()
151 {
152     return std::make_unique<MMIAdapterImpl>();
153 }
154 
CreateSocPerfClientAdapter()155 std::unique_ptr<SocPerfClientAdapter> OhosAdapterHelper::CreateSocPerfClientAdapter()
156 {
157     return std::make_unique<SocPerfClientAdapterImpl>();
158 }
159 
GetResourceAdapter(const std::string & hapPath) const160 std::unique_ptr<OhosResourceAdapter> OhosAdapterHelper::GetResourceAdapter(const std::string& hapPath) const
161 {
162     return std::make_unique<OhosResourceAdapterImpl>(hapPath);
163 }
164 
GetSystemPropertiesInstance() const165 SystemPropertiesAdapter& OhosAdapterHelper::GetSystemPropertiesInstance() const
166 {
167     return SystemPropertiesAdapterImpl::GetInstance();
168 }
169 
GetVSyncAdapter() const170 VSyncAdapter& OhosAdapterHelper::GetVSyncAdapter() const
171 {
172     return VSyncAdapterImpl::GetInstance();
173 }
174 
GetInitWebAdapter() const175 std::unique_ptr<OhosInitWebAdapter> OhosAdapterHelper::GetInitWebAdapter() const
176 {
177     return std::make_unique<OhosInitWebAdapterImpl>();
178 }
179 
GetKeystoreAdapterInstance() const180 KeystoreAdapter& OhosAdapterHelper::GetKeystoreAdapterInstance() const
181 {
182     return KeystoreAdapterImpl::GetInstance();
183 }
184 
GetEnterpriseDeviceManagementInstance() const185 EnterpriseDeviceManagementAdapter& OhosAdapterHelper::GetEnterpriseDeviceManagementInstance() const
186 {
187     return EnterpriseDeviceManagementAdapterImpl::GetInstance();
188 }
189 
GetDatashareInstance() const190 DatashareAdapter& OhosAdapterHelper::GetDatashareInstance() const
191 {
192     return DatashareAdapterImpl::GetInstance();
193 }
194 
CreateIMFAdapter() const195 std::unique_ptr<IMFAdapter> OhosAdapterHelper::CreateIMFAdapter() const
196 {
197     return std::make_unique<IMFAdapterImpl>();
198 }
199 
GetRootCertDataAdapter() const200 std::unique_ptr<CertManagerAdapter> OhosAdapterHelper::GetRootCertDataAdapter() const
201 {
202     return std::make_unique<CertManagerAdapterImpl>();
203 }
204 
GetAccessTokenAdapterInstance() const205 AccessTokenAdapter& OhosAdapterHelper::GetAccessTokenAdapterInstance() const
206 {
207     return AccessTokenAdapterImpl::GetInstance();
208 }
209 
GetEventHandlerAdapter() const210 std::unique_ptr<EventHandlerAdapter> OhosAdapterHelper::GetEventHandlerAdapter() const
211 {
212     return std::make_unique<EventHandlerAdapterImpl>();
213 }
214 
GetPrintManagerInstance() const215 PrintManagerAdapter& OhosAdapterHelper::GetPrintManagerInstance() const
216 {
217     return PrintManagerAdapterImpl::GetInstance();
218 }
219 
CreateConsumerSurfaceAdapter() const220 std::unique_ptr<IConsumerSurfaceAdapter> OhosAdapterHelper::CreateConsumerSurfaceAdapter() const
221 {
222     return std::make_unique<ConsumerSurfaceAdapterImpl>();
223 }
224 
CreatePlayerAdapter() const225 std::unique_ptr<PlayerAdapter> OhosAdapterHelper::CreatePlayerAdapter() const
226 {
227 #if defined(NWEB_MEDIA_PLAYER_ENABLE)
228     return std::make_unique<PlayerAdapterImpl>();
229 #else
230     return nullptr;
231 #endif
232 }
233 
GetWindowAdapterInstance() const234 WindowAdapter& OhosAdapterHelper::GetWindowAdapterInstance() const
235 {
236     return WindowAdapterImpl::GetInstance();
237 }
238 
GetHiSysEventAdapterInstance() const239 HiSysEventAdapter& OhosAdapterHelper::GetHiSysEventAdapterInstance() const
240 {
241     return HiSysEventAdapterImpl::GetInstance();
242 }
243 
GetHiTraceAdapterInstance() const244 HiTraceAdapter& OhosAdapterHelper::GetHiTraceAdapterInstance() const
245 {
246     return HiTraceAdapterImpl::GetInstance();
247 }
248 
GetNetProxyInstance() const249 NetProxyAdapter& OhosAdapterHelper::GetNetProxyInstance() const
250 {
251     return NetProxyAdapterImpl::GetInstance();
252 }
253 
GetCameraManagerAdapter() const254 CameraManagerAdapter& OhosAdapterHelper::GetCameraManagerAdapter() const
255 {
256     return CameraManagerAdapterImpl::GetInstance();
257 }
258 
CreateScreenCaptureAdapter() const259 std::unique_ptr<ScreenCaptureAdapter> OhosAdapterHelper::CreateScreenCaptureAdapter() const
260 {
261 #if defined(NWEB_CAMERA_ENABLE)
262     return std::make_unique<ScreenCaptureAdapterImpl>();
263 #else
264     return nullptr;
265 #endif
266 }
267 
CreateDateTimeFormatAdapter() const268 std::unique_ptr<DateTimeFormatAdapter> OhosAdapterHelper::CreateDateTimeFormatAdapter() const
269 {
270     return std::make_unique<DateTimeFormatAdapterImpl>();
271 }
272 
CreateMediaCodecDecoderAdapter() const273 std::unique_ptr<MediaCodecDecoderAdapter> OhosAdapterHelper::CreateMediaCodecDecoderAdapter() const
274 {
275 #if defined(NWEB_MEDIA_AVCODEC_ENABLE)
276     return std::make_unique<MediaCodecDecoderAdapterImpl>();
277 #else
278     return nullptr;
279 #endif
280 }
281 
CreateNativeImageAdapter() const282 std::unique_ptr<NativeImageAdapter> OhosAdapterHelper::CreateNativeImageAdapter() const
283 {
284     return std::make_unique<NativeImageAdapterImpl>();
285 }
286 } // namespace OHOS::NWeb
287