• 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_impl.h"
17 
18 #include "aafwk_app_mgr_client_adapter_impl.h"
19 #include "access_token_adapter_impl.h"
20 #include "audio_capturer_adapter_impl.h"
21 #include "audio_renderer_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 "flowbuffer_adapter_impl.h"
34 #include "hisysevent_adapter_impl.h"
35 #include "hitrace_adapter_impl.h"
36 #include "imf_adapter_impl.h"
37 #include "keystore_adapter_impl.h"
38 #if defined(NWEB_MEDIA_AVSESSION_ENABLE)
39 #include "media_avsession_adapter_impl.h"
40 #endif
41 #if defined(NWEB_MEDIA_AVCODEC_ENABLE)
42 #include "media_codec_decoder_adapter_impl.h"
43 #include "media_codec_encoder_adapter_impl.h"
44 #include "media_codec_list_adapter_impl.h"
45 #endif
46 #include "migration_manager_adapter_impl.h"
47 #include "mmi_adapter_impl.h"
48 #include "native_image_adapter_impl.h"
49 #if defined(NWEB_TEL_ENABLE)
50 #include "net_connect_adapter_impl.h"
51 #endif
52 #include "net_proxy_adapter_impl.h"
53 #include "ohos_drawing_text_adapter_impl.h"
54 #include "ohos_image_decoder_adapter_impl.h"
55 #include "ohos_init_web_adapter_impl.h"
56 #include "ohos_native_buffer_adapter_impl.h"
57 #include "ohos_resource_adapter_impl.h"
58 #include "ohos_web_data_base_adapter_impl.h"
59 #include "ohos_web_permission_data_base_adapter_impl.h"
60 #include "pasteboard_client_adapter_impl.h"
61 #if defined(NWEB_MEDIA_PLAYER_ENABLE)
62 #include "player_framework_adapter_impl.h"
63 #endif
64 #if defined(NWEB_POWER_MANAGER_ENABLE)
65 #include "power_mgr_client_adapter_impl.h"
66 #endif
67 #include "print_manager_adapter_impl.h"
68 #if defined(NWEB_CAMERA_ENABLE)
69 #include "screen_capture_adapter_impl.h"
70 #endif
71 #include "soc_perf_client_adapter_impl.h"
72 #include "screenlock_manager_adapter_impl.h"
73 #include "surface_adapter_impl.h"
74 #include "system_properties_adapter_impl.h"
75 #include "vsync_adapter_impl.h"
76 #include "window_adapter_impl.h"
77 #if defined(NWEB_SENSORS_SENSOR_ENABLE)
78 #include "sensor_adapter_impl.h"
79 #endif
80 #if defined(NWEB_AUDIO_DRM_ENABLE)
81 #include "audio_codec_decoder_adapter_impl.h"
82 #include "drm_adapter_impl.h"
83 #endif
84 
85 namespace OHOS::NWeb {
86 // static
GetInstance()87 OhosAdapterHelper& OhosAdapterHelper::GetInstance()
88 {
89     static OhosAdapterHelperImpl ohosAdapter;
90     return ohosAdapter;
91 }
92 
CreateAafwkAdapter()93 std::unique_ptr<AafwkAppMgrClientAdapter> OhosAdapterHelperImpl::CreateAafwkAdapter()
94 {
95     return std::make_unique<AafwkAppMgrClientAdapterImpl>();
96 }
97 
CreatePowerMgrClientAdapter()98 std::unique_ptr<PowerMgrClientAdapter> OhosAdapterHelperImpl::CreatePowerMgrClientAdapter()
99 {
100 #if defined(NWEB_POWER_MANAGER_ENABLE)
101     return std::make_unique<PowerMgrClientAdapterImpl>();
102 #else
103     return nullptr;
104 #endif
105 }
106 
CreateDisplayMgrAdapter()107 std::unique_ptr<DisplayManagerAdapter> OhosAdapterHelperImpl::CreateDisplayMgrAdapter()
108 {
109     return std::make_unique<DisplayManagerAdapterImpl>();
110 }
111 
CreateBatteryClientAdapter()112 std::unique_ptr<BatteryMgrClientAdapter> OhosAdapterHelperImpl::CreateBatteryClientAdapter()
113 {
114 #if defined(NWEB_BATTERY_MANAGER_ENABLE)
115     return std::make_unique<BatteryMgrClientAdapterImpl>();
116 #else
117     return nullptr;
118 #endif
119 }
120 
GetOhosWebDataBaseAdapterInstance()121 OhosWebDataBaseAdapter& OhosAdapterHelperImpl::GetOhosWebDataBaseAdapterInstance()
122 {
123     return OhosWebDataBaseAdapterImpl::GetInstance();
124 }
125 
CreateNetConnectAdapter()126 std::unique_ptr<NetConnectAdapter> OhosAdapterHelperImpl::CreateNetConnectAdapter()
127 {
128 #if defined(NWEB_TEL_ENABLE)
129     return std::make_unique<NetConnectAdapterImpl>();
130 #else
131     return nullptr;
132 #endif
133 }
134 
GetPasteBoard()135 PasteBoardClientAdapter& OhosAdapterHelperImpl::GetPasteBoard()
136 {
137     return PasteBoardClientAdapterImpl::GetInstance();
138 }
139 
CreateAudioRendererAdapter()140 std::unique_ptr<AudioRendererAdapter> OhosAdapterHelperImpl::CreateAudioRendererAdapter()
141 {
142 #if defined(NWEB_AUDIO_ENABLE)
143     return std::make_unique<AudioRendererAdapterImpl>();
144 #else
145     return nullptr;
146 #endif
147 }
148 
CreateAudioCapturerAdapter()149 std::unique_ptr<AudioCapturerAdapter> OhosAdapterHelperImpl::CreateAudioCapturerAdapter()
150 {
151 #if defined(NWEB_AUDIO_ENABLE)
152     return std::make_unique<AudioCapturerAdapterImpl>();
153 #else
154     return nullptr;
155 #endif
156 }
157 
GetAudioSystemManager()158 AudioSystemManagerAdapter& OhosAdapterHelperImpl::GetAudioSystemManager()
159 {
160     return AudioSystemManagerAdapterImpl::GetInstance();
161 }
162 
GetWebPermissionDataBaseInstance()163 OhosWebPermissionDataBaseAdapter& OhosAdapterHelperImpl::GetWebPermissionDataBaseInstance()
164 {
165     return OhosWebPermissionDataBaseAdapterImpl::GetInstance();
166 }
167 
CreateMMIAdapter()168 std::unique_ptr<MMIAdapter> OhosAdapterHelperImpl::CreateMMIAdapter()
169 {
170     return std::make_unique<MMIAdapterImpl>();
171 }
172 
CreateSocPerfClientAdapter()173 std::unique_ptr<SocPerfClientAdapter> OhosAdapterHelperImpl::CreateSocPerfClientAdapter()
174 {
175     return std::make_unique<SocPerfClientAdapterImpl>();
176 }
177 
GetResourceAdapter(const std::string & hapPath)178 std::unique_ptr<OhosResourceAdapter> OhosAdapterHelperImpl::GetResourceAdapter(const std::string& hapPath)
179 {
180     return std::make_unique<OhosResourceAdapterImpl>(hapPath);
181 }
182 
GetSystemPropertiesInstance()183 SystemPropertiesAdapter& OhosAdapterHelperImpl::GetSystemPropertiesInstance()
184 {
185     return SystemPropertiesAdapterImpl::GetInstance();
186 }
187 
GetVSyncAdapter()188 VSyncAdapter& OhosAdapterHelperImpl::GetVSyncAdapter()
189 {
190     return VSyncAdapterImpl::GetInstance();
191 }
192 
GetInitWebAdapter()193 std::unique_ptr<OhosInitWebAdapter> OhosAdapterHelperImpl::GetInitWebAdapter()
194 {
195     return std::make_unique<OhosInitWebAdapterImpl>();
196 }
197 
GetKeystoreAdapterInstance()198 KeystoreAdapter& OhosAdapterHelperImpl::GetKeystoreAdapterInstance()
199 {
200     return KeystoreAdapterImpl::GetInstance();
201 }
202 
GetEnterpriseDeviceManagementInstance()203 EnterpriseDeviceManagementAdapter& OhosAdapterHelperImpl::GetEnterpriseDeviceManagementInstance()
204 {
205     return EnterpriseDeviceManagementAdapterImpl::GetInstance();
206 }
207 
GetDatashareInstance()208 DatashareAdapter& OhosAdapterHelperImpl::GetDatashareInstance()
209 {
210     return DatashareAdapterImpl::GetInstance();
211 }
212 
CreateIMFAdapter()213 std::unique_ptr<IMFAdapter> OhosAdapterHelperImpl::CreateIMFAdapter()
214 {
215     return std::make_unique<IMFAdapterImpl>();
216 }
217 
GetRootCertDataAdapter()218 std::unique_ptr<CertManagerAdapter> OhosAdapterHelperImpl::GetRootCertDataAdapter()
219 {
220     return std::make_unique<CertManagerAdapterImpl>();
221 }
222 
GetCertManagerAdapter()223 std::unique_ptr<CertManagerAdapter> OhosAdapterHelperImpl::GetCertManagerAdapter()
224 {
225     return std::make_unique<CertManagerAdapterImpl>();
226 }
227 
GetAccessTokenAdapterInstance()228 AccessTokenAdapter& OhosAdapterHelperImpl::GetAccessTokenAdapterInstance()
229 {
230     return AccessTokenAdapterImpl::GetInstance();
231 }
232 
GetEventHandlerAdapter()233 std::unique_ptr<EventHandlerAdapter> OhosAdapterHelperImpl::GetEventHandlerAdapter()
234 {
235     return std::make_unique<EventHandlerAdapterImpl>();
236 }
237 
GetPrintManagerInstance()238 PrintManagerAdapter& OhosAdapterHelperImpl::GetPrintManagerInstance()
239 {
240     return PrintManagerAdapterImpl::GetInstance();
241 }
242 
CreateConsumerSurfaceAdapter()243 std::unique_ptr<IConsumerSurfaceAdapter> OhosAdapterHelperImpl::CreateConsumerSurfaceAdapter()
244 {
245     return std::make_unique<ConsumerSurfaceAdapterImpl>();
246 }
247 
CreatePlayerAdapter()248 std::unique_ptr<PlayerAdapter> OhosAdapterHelperImpl::CreatePlayerAdapter()
249 {
250 #if defined(NWEB_MEDIA_PLAYER_ENABLE)
251     return std::make_unique<PlayerAdapterImpl>();
252 #else
253     return nullptr;
254 #endif
255 }
256 
GetWindowAdapterInstance()257 WindowAdapter& OhosAdapterHelperImpl::GetWindowAdapterInstance()
258 {
259     return WindowAdapterImpl::GetInstance();
260 }
261 
GetHiSysEventAdapterInstance()262 HiSysEventAdapter& OhosAdapterHelperImpl::GetHiSysEventAdapterInstance()
263 {
264     return HiSysEventAdapterImpl::GetInstance();
265 }
266 
GetHiTraceAdapterInstance()267 HiTraceAdapter& OhosAdapterHelperImpl::GetHiTraceAdapterInstance()
268 {
269     return HiTraceAdapterImpl::GetInstance();
270 }
271 
GetNetProxyInstance()272 NetProxyAdapter& OhosAdapterHelperImpl::GetNetProxyInstance()
273 {
274     return NetProxyAdapterImpl::GetInstance();
275 }
276 
GetCameraManagerAdapter()277 CameraManagerAdapter& OhosAdapterHelperImpl::GetCameraManagerAdapter()
278 {
279     return CameraManagerAdapterImpl::GetInstance();
280 }
281 
CreateScreenCaptureAdapter()282 std::unique_ptr<ScreenCaptureAdapter> OhosAdapterHelperImpl::CreateScreenCaptureAdapter()
283 {
284 #if defined(NWEB_CAMERA_ENABLE)
285     return std::make_unique<ScreenCaptureAdapterImpl>();
286 #else
287     return nullptr;
288 #endif
289 }
290 
CreateDateTimeFormatAdapter()291 std::unique_ptr<DateTimeFormatAdapter> OhosAdapterHelperImpl::CreateDateTimeFormatAdapter()
292 {
293     return std::make_unique<DateTimeFormatAdapterImpl>();
294 }
295 
CreateMediaCodecDecoderAdapter()296 std::unique_ptr<MediaCodecDecoderAdapter> OhosAdapterHelperImpl::CreateMediaCodecDecoderAdapter()
297 {
298 #if defined(NWEB_MEDIA_AVCODEC_ENABLE)
299     return std::make_unique<MediaCodecDecoderAdapterImpl>();
300 #else
301     return nullptr;
302 #endif
303 }
304 
CreateNativeImageAdapter()305 std::unique_ptr<NativeImageAdapter> OhosAdapterHelperImpl::CreateNativeImageAdapter()
306 {
307     return std::make_unique<NativeImageAdapterImpl>();
308 }
309 
CreateMediaCodecEncoderAdapter()310 std::unique_ptr<MediaCodecAdapter> OhosAdapterHelperImpl::CreateMediaCodecEncoderAdapter()
311 {
312 #if defined(NWEB_MEDIA_AVCODEC_ENABLE)
313     return std::make_unique<MediaCodecEncoderAdapterImpl>();
314 #else
315     return nullptr;
316 #endif
317 }
318 
GetMediaCodecListAdapter()319 MediaCodecListAdapter& OhosAdapterHelperImpl::GetMediaCodecListAdapter()
320 {
321     return MediaCodecListAdapterImpl::GetInstance();
322 }
323 
CreateFlowbufferAdapter()324 std::unique_ptr<FlowbufferAdapter> OhosAdapterHelperImpl::CreateFlowbufferAdapter()
325 {
326     return std::make_unique<FlowbufferAdapterImpl>();
327 }
328 
CreateMediaAVSessionAdapter()329 std::unique_ptr<MediaAVSessionAdapter> OhosAdapterHelperImpl::CreateMediaAVSessionAdapter()
330 {
331 #if defined(NWEB_MEDIA_AVSESSION_ENABLE)
332     return std::make_unique<MediaAVSessionAdapterImpl>();
333 #else
334     return nullptr;
335 #endif
336 }
337 
CreateOhosImageDecoderAdapter()338 std::unique_ptr<OhosImageDecoderAdapter> OhosAdapterHelperImpl::CreateOhosImageDecoderAdapter()
339 {
340     return std::make_unique<OhosImageDecoderAdapterImpl>();
341 }
342 
CreateSensorAdapter()343 std::unique_ptr<SensorAdapter> OhosAdapterHelperImpl::CreateSensorAdapter()
344 {
345 #if defined(NWEB_SENSORS_SENSOR_ENABLE)
346     return std::make_unique<SensorAdapterImpl>();
347 #else
348     return nullptr;
349 #endif
350 }
351 
SetArkWebCoreHapPathOverride(const std::string & hapPath)352 void OhosAdapterHelperImpl::SetArkWebCoreHapPathOverride(const std::string& hapPath)
353 {
354     OhosResourceAdapterImpl::SetArkWebCoreHapPathOverride(hapPath);
355 }
356 
GetOhosNativeBufferAdapter()357 OhosNativeBufferAdapter& OhosAdapterHelperImpl::GetOhosNativeBufferAdapter()
358 {
359     return OhosNativeBufferAdapterImpl::GetInstance();
360 }
361 
CreateAudioCodecDecoderAdapter()362 std::unique_ptr<AudioCodecDecoderAdapter> OhosAdapterHelperImpl::CreateAudioCodecDecoderAdapter()
363 {
364 #if defined(NWEB_AUDIO_DRM_ENABLE)
365     return std::make_unique<AudioCodecDecoderAdapterImpl>();
366 #else
367     return nullptr;
368 #endif
369 }
370 
CreateDrmAdapter()371 std::unique_ptr<DrmAdapter> OhosAdapterHelperImpl::CreateDrmAdapter()
372 {
373 #if defined(NWEB_AUDIO_DRM_ENABLE)
374     return std::make_unique<DrmAdapterImpl>();
375 #else
376     return nullptr;
377 #endif
378 }
379 
GetOhosDrawingTextFontAdapter()380 OhosDrawingTextFontAdapter& OhosAdapterHelperImpl::GetOhosDrawingTextFontAdapter()
381 {
382     return OhosDrawingTextFontAdapterImpl::GetInstance();
383 }
384 
GetOhosDrawingTextTypographyAdapter()385 OhosDrawingTextTypographyAdapter& OhosAdapterHelperImpl::GetOhosDrawingTextTypographyAdapter()
386 {
387     return OhosDrawingTextTypographyAdapterImpl::GetInstance();
388 }
389 
CreateMigrationMgrAdapter()390 std::unique_ptr<MigrationManagerAdapter> OhosAdapterHelperImpl::CreateMigrationMgrAdapter()
391 {
392     return std::make_unique<MigrationManagerAdapterImpl>();
393 }
394 
CreateScreenlockManagerAdapter()395 std::unique_ptr<ScreenlockManagerAdapter> OhosAdapterHelperImpl::CreateScreenlockManagerAdapter()
396 {
397     return std::make_unique<ScreenlockManagerAdapterImpl>();
398 }
399 } // namespace OHOS::NWeb
400