1 /* 2 * Copyright (c) 2022-2023 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 #ifndef COMMUNICATIONNETMANAGERBASE_CONNECTION_ASYNC_WORK_H 17 #define COMMUNICATIONNETMANAGERBASE_CONNECTION_ASYNC_WORK_H 18 19 #include <napi/native_api.h> 20 #include <napi/native_node_api.h> 21 22 namespace OHOS::NetManagerStandard { 23 class ConnectionAsyncWork final { 24 public: 25 ConnectionAsyncWork() = delete; 26 27 ~ConnectionAsyncWork() = delete; 28 29 static void ExecGetDefaultNet(napi_env env, void *data); 30 31 static void GetDefaultNetCallback(napi_env env, napi_status status, void *data); 32 33 static void ExecHasDefaultNet(napi_env env, void *data); 34 35 static void HasDefaultNetCallback(napi_env env, napi_status status, void *data); 36 37 static void ExecIsDefaultNetMetered(napi_env env, void *data); 38 39 static void IsDefaultNetMeteredCallback(napi_env env, napi_status status, void *data); 40 41 static void ExecGetNetCapabilities(napi_env env, void *data); 42 43 static void GetNetCapabilitiesCallback(napi_env env, napi_status status, void *data); 44 45 static void ExecGetConnectionProperties(napi_env env, void *data); 46 47 static void GetConnectionPropertiesCallback(napi_env env, napi_status status, void *data); 48 49 static void ExecGetAddressesByName(napi_env env, void *data); 50 51 static void GetAddressesByNameCallback(napi_env env, napi_status status, void *data); 52 53 static void ExecGetAllNets(napi_env env, void *data); 54 55 static void GetAllNetsCallback(napi_env env, napi_status status, void *data); 56 57 static void ExecEnableAirplaneMode(napi_env env, void *data); 58 59 static void EnableAirplaneModeCallback(napi_env env, napi_status status, void *data); 60 61 static void ExecDisableAirplaneMode(napi_env env, void *data); 62 63 static void DisableAirplaneModeCallback(napi_env env, napi_status status, void *data); 64 65 static void ExecReportNetConnected(napi_env env, void *data); 66 67 static void ReportNetConnectedCallback(napi_env env, napi_status status, void *data); 68 69 static void ExecReportNetDisconnected(napi_env env, void *data); 70 71 static void ReportNetDisconnectedCallback(napi_env env, napi_status status, void *data); 72 73 static void ExecGetDefaultHttpProxy(napi_env env, void *data); 74 75 static void GetDefaultHttpProxyCallback(napi_env env, napi_status status, void *data); 76 77 static void ExecGetGlobalHttpProxy(napi_env env, void *data); 78 79 static void GetGlobalHttpProxyCallback(napi_env env, napi_status status, void *data); 80 81 static void ExecSetGlobalHttpProxy(napi_env env, void *data); 82 83 static void SetGlobalHttpProxyCallback(napi_env env, napi_status status, void *data); 84 85 static void ExecGetAppNet(napi_env env, void *data); 86 87 static void GetAppNetCallback(napi_env env, napi_status status, void *data); 88 89 static void ExecSetAppNet(napi_env env, void *data); 90 91 static void SetAppNetCallback(napi_env env, napi_status status, void *data); 92 93 static void ExecSetCustomDNSRule(napi_env env, void *data); 94 95 static void SetCustomDNSRuleCallback(napi_env env, napi_status status, void *data); 96 97 static void ExecDeleteCustomDNSRule(napi_env env, void *data); 98 99 static void DeleteCustomDNSRuleCallback(napi_env env, napi_status status, void *data); 100 101 static void ExecDeleteCustomDNSRules(napi_env env, void *data); 102 103 static void DeleteCustomDNSRulesCallback(napi_env env, napi_status status, void *data); 104 105 static void ExecFactoryResetNetwork(napi_env env, void *data); 106 107 static void FactoryResetNetworkCallback(napi_env env, napi_status status, void *data); 108 109 class NetHandleAsyncWork final { 110 public: 111 NetHandleAsyncWork() = delete; 112 113 ~NetHandleAsyncWork() = delete; 114 115 static void ExecGetAddressByName(napi_env env, void *data); 116 117 static void GetAddressByNameCallback(napi_env env, napi_status status, void *data); 118 119 static void ExecGetAddressesByName(napi_env env, void *data); 120 121 static void GetAddressesByNameCallback(napi_env env, napi_status status, void *data); 122 123 static void ExecBindSocket(napi_env env, void *data); 124 125 static void BindSocketCallback(napi_env env, napi_status status, void *data); 126 }; 127 128 class NetConnectionAsyncWork final { 129 public: 130 NetConnectionAsyncWork() = delete; 131 132 ~NetConnectionAsyncWork() = delete; 133 134 static void ExecRegister(napi_env env, void *data); 135 136 static void RegisterCallback(napi_env env, napi_status status, void *data); 137 138 static void ExecUnregister(napi_env env, void *data); 139 140 static void UnregisterCallback(napi_env env, napi_status status, void *data); 141 }; 142 }; 143 } // namespace OHOS::NetManagerStandard 144 145 #endif /* COMMUNICATIONNETMANAGERBASE_CONNECTION_ASYNC_WORK_H */ 146