1 /* 2 * Copyright (c) 2022 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License") override; 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 #ifndef ARK_OHOS_ADAPTER_HELPER_WRAPPER_H 17 #define ARK_OHOS_ADAPTER_HELPER_WRAPPER_H 18 #pragma once 19 20 #include "ohos_adapter/include/ark_ohos_adapter_helper.h" 21 #include "ohos_adapter_helper.h" 22 23 namespace OHOS::ArkWeb { 24 25 class ArkOhosAdapterHelperWrapper : public NWeb::OhosAdapterHelper { 26 public: 27 explicit ArkOhosAdapterHelperWrapper(ArkWebRefPtr<ArkOhosAdapterHelper>); 28 29 std::unique_ptr<NWeb::AafwkAppMgrClientAdapter> CreateAafwkAdapter() override; 30 31 std::unique_ptr<NWeb::PowerMgrClientAdapter> CreatePowerMgrClientAdapter() override; 32 33 std::unique_ptr<NWeb::DisplayManagerAdapter> CreateDisplayMgrAdapter() override; 34 35 std::unique_ptr<NWeb::BatteryMgrClientAdapter> CreateBatteryClientAdapter() override; 36 37 std::unique_ptr<NWeb::NetConnectAdapter> CreateNetConnectAdapter() override; 38 39 NWeb::OhosWebDataBaseAdapter& GetOhosWebDataBaseAdapterInstance() override; 40 41 NWeb::PasteBoardClientAdapter& GetPasteBoard() override; 42 43 std::unique_ptr<NWeb::AudioRendererAdapter> CreateAudioRendererAdapter() override; 44 45 std::unique_ptr<NWeb::AudioCapturerAdapter> CreateAudioCapturerAdapter() override; 46 47 NWeb::AudioSystemManagerAdapter& GetAudioSystemManager() override; 48 49 NWeb::OhosWebPermissionDataBaseAdapter& GetWebPermissionDataBaseInstance() override; 50 51 std::unique_ptr<NWeb::MMIAdapter> CreateMMIAdapter() override; 52 53 std::unique_ptr<NWeb::SocPerfClientAdapter> CreateSocPerfClientAdapter() override; 54 55 std::unique_ptr<NWeb::OhosResourceAdapter> GetResourceAdapter(const std::string& hapPath) override; 56 57 NWeb::SystemPropertiesAdapter& GetSystemPropertiesInstance() override; 58 59 NWeb::VSyncAdapter& GetVSyncAdapter() override; 60 61 std::unique_ptr<NWeb::OhosInitWebAdapter> GetInitWebAdapter() override; 62 63 NWeb::KeystoreAdapter& GetKeystoreAdapterInstance() override; 64 65 NWeb::EnterpriseDeviceManagementAdapter& GetEnterpriseDeviceManagementInstance() override; 66 67 NWeb::DatashareAdapter& GetDatashareInstance() override; 68 69 std::unique_ptr<NWeb::IMFAdapter> CreateIMFAdapter() override; 70 71 std::unique_ptr<NWeb::CertManagerAdapter> GetRootCertDataAdapter() override; 72 73 NWeb::AccessTokenAdapter& GetAccessTokenAdapterInstance() override; 74 75 std::unique_ptr<NWeb::EventHandlerAdapter> GetEventHandlerAdapter() override; 76 77 NWeb::PrintManagerAdapter& GetPrintManagerInstance() override; 78 79 std::unique_ptr<NWeb::IConsumerSurfaceAdapter> CreateConsumerSurfaceAdapter() override; 80 81 std::unique_ptr<NWeb::PlayerAdapter> CreatePlayerAdapter() override; 82 83 NWeb::WindowAdapter& GetWindowAdapterInstance() override; 84 85 NWeb::HiSysEventAdapter& GetHiSysEventAdapterInstance() override; 86 87 NWeb::HiTraceAdapter& GetHiTraceAdapterInstance() override; 88 89 NWeb::NetProxyAdapter& GetNetProxyInstance() override; 90 91 NWeb::CameraManagerAdapter& GetCameraManagerAdapter() override; 92 93 std::unique_ptr<NWeb::ScreenCaptureAdapter> CreateScreenCaptureAdapter() override; 94 95 std::unique_ptr<NWeb::DateTimeFormatAdapter> CreateDateTimeFormatAdapter() override; 96 97 std::unique_ptr<NWeb::MediaCodecDecoderAdapter> CreateMediaCodecDecoderAdapter() override; 98 99 std::unique_ptr<NWeb::NativeImageAdapter> CreateNativeImageAdapter() override; 100 101 std::unique_ptr<NWeb::MediaCodecAdapter> CreateMediaCodecEncoderAdapter() override; 102 103 NWeb::MediaCodecListAdapter& GetMediaCodecListAdapter() override; 104 105 std::unique_ptr<NWeb::FlowbufferAdapter> CreateFlowbufferAdapter() override; 106 107 std::unique_ptr<NWeb::MediaAVSessionAdapter> CreateMediaAVSessionAdapter() override; 108 109 std::unique_ptr<NWeb::OhosImageDecoderAdapter> CreateOhosImageDecoderAdapter() override; 110 111 std::unique_ptr<NWeb::SensorAdapter> CreateSensorAdapter() override; 112 113 void SetArkWebCoreHapPathOverride(const std::string& hapPath) override; 114 115 NWeb::OhosNativeBufferAdapter& GetOhosNativeBufferAdapter() override; 116 117 private: 118 ArkWebRefPtr<ArkOhosAdapterHelper> ctocpp_; 119 }; 120 121 } // namespace OHOS::ArkWeb 122 123 #endif // OHOS_ADAPTER_HELPER_H 124