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 ExecGetProxyMode(napi_env env, void *data); 44 45 static void ExecSetProxyMode(napi_env env, void *data); 46 47 static void GetNetCapabilitiesCallback(napi_env env, napi_status status, void *data); 48 49 static void GetProxyModeCallback(napi_env env, napi_status status, void *data); 50 51 static void SetProxyModeCallback(napi_env env, napi_status status, void *data); 52 53 static void ExecGetConnectionProperties(napi_env env, void *data); 54 55 static void GetConnectionPropertiesCallback(napi_env env, napi_status status, void *data); 56 57 static void ExecGetAddressesByName(napi_env env, void *data); 58 59 static void GetAddressesByNameCallback(napi_env env, napi_status status, void *data); 60 61 static void ExecGetAllNets(napi_env env, void *data); 62 63 static void GetAllNetsCallback(napi_env env, napi_status status, void *data); 64 65 static void ExecEnableAirplaneMode(napi_env env, void *data); 66 67 static void EnableAirplaneModeCallback(napi_env env, napi_status status, void *data); 68 69 static void ExecDisableAirplaneMode(napi_env env, void *data); 70 71 static void DisableAirplaneModeCallback(napi_env env, napi_status status, void *data); 72 73 static void ExecReportNetConnected(napi_env env, void *data); 74 75 static void ReportNetConnectedCallback(napi_env env, napi_status status, void *data); 76 77 static void ExecReportNetDisconnected(napi_env env, void *data); 78 79 static void ReportNetDisconnectedCallback(napi_env env, napi_status status, void *data); 80 81 static void ExecGetDefaultHttpProxy(napi_env env, void *data); 82 83 static void GetDefaultHttpProxyCallback(napi_env env, napi_status status, void *data); 84 85 static void ExecGetGlobalHttpProxy(napi_env env, void *data); 86 87 static void GetGlobalHttpProxyCallback(napi_env env, napi_status status, void *data); 88 89 static void ExecSetGlobalHttpProxy(napi_env env, void *data); 90 91 static void SetGlobalHttpProxyCallback(napi_env env, napi_status status, void *data); 92 93 static void ExecGetAppNet(napi_env env, void *data); 94 95 static void GetAppNetCallback(napi_env env, napi_status status, void *data); 96 97 static void ExecSetAppNet(napi_env env, void *data); 98 99 static void SetAppNetCallback(napi_env env, napi_status status, void *data); 100 101 static void ExecSetInterfaceUp(napi_env env, void *data); 102 103 static void SetInterfaceUpCallback(napi_env env, napi_status status, void *data); 104 105 static void ExecSetInterfaceIpAddr(napi_env env, void *data); 106 107 static void SetInterfaceIpAddrCallback(napi_env env, napi_status status, void *data); 108 109 static void ExecAddNetworkRoute(napi_env env, void *data); 110 111 static void AddNetworkRouteCallback(napi_env env, napi_status status, void *data); 112 113 static void ExecGetNetInterfaceConfiguration(napi_env env, void *data); 114 115 static void GetNetInterfaceConfigurationCallback(napi_env env, napi_status status, void *data); 116 117 static void ExecRegisterNetSupplier(napi_env env, void *data); 118 119 static void RegisterNetSupplierCallback(napi_env env, napi_status status, void *data); 120 121 static void ExecUnregisterNetSupplier(napi_env env, void *data); 122 123 static void UnregisterNetSupplierCallback(napi_env env, napi_status status, void *data); 124 125 static void ExecSetCustomDNSRule(napi_env env, void *data); 126 127 static void SetCustomDNSRuleCallback(napi_env env, napi_status status, void *data); 128 129 static void ExecDeleteCustomDNSRule(napi_env env, void *data); 130 131 static void DeleteCustomDNSRuleCallback(napi_env env, napi_status status, void *data); 132 133 static void ExecDeleteCustomDNSRules(napi_env env, void *data); 134 135 static void DeleteCustomDNSRulesCallback(napi_env env, napi_status status, void *data); 136 137 static void ExecFactoryResetNetwork(napi_env env, void *data); 138 139 static void FactoryResetNetworkCallback(napi_env env, napi_status status, void *data); 140 141 static void ExecGetNetExtAttribute(napi_env env, void *data); 142 143 static void GetNetExtAttributeCallback(napi_env env, napi_status status, void *data); 144 145 static void ExecSetNetExtAttribute(napi_env env, void *data); 146 147 static void SetNetExtAttributeCallback(napi_env env, napi_status status, void *data); 148 149 class NetHandleAsyncWork final { 150 public: 151 NetHandleAsyncWork() = delete; 152 153 ~NetHandleAsyncWork() = delete; 154 155 static void ExecGetAddressByName(napi_env env, void *data); 156 157 static void GetAddressByNameCallback(napi_env env, napi_status status, void *data); 158 159 static void ExecGetAddressesByName(napi_env env, void *data); 160 161 static void GetAddressesByNameCallback(napi_env env, napi_status status, void *data); 162 163 static void ExecBindSocket(napi_env env, void *data); 164 165 static void BindSocketCallback(napi_env env, napi_status status, void *data); 166 }; 167 168 class NetConnectionAsyncWork final { 169 public: 170 NetConnectionAsyncWork() = delete; 171 172 ~NetConnectionAsyncWork() = delete; 173 174 static void ExecRegister(napi_env env, void *data); 175 176 static void RegisterCallback(napi_env env, napi_status status, void *data); 177 178 static void ExecUnregister(napi_env env, void *data); 179 180 static void UnregisterCallback(napi_env env, napi_status status, void *data); 181 }; 182 183 class NetInterfaceAsyncWork final { 184 public: 185 NetInterfaceAsyncWork() = delete; 186 187 ~NetInterfaceAsyncWork() = delete; 188 189 static void ExecIfaceRegister(napi_env env, void *data); 190 191 static void IfaceRegisterCallback(napi_env env, napi_status status, void *data); 192 193 static void ExecIfaceUnregister(napi_env env, void *data); 194 195 static void IfaceUnregisterCallback(napi_env env, napi_status status, void *data); 196 }; 197 }; 198 } // namespace OHOS::NetManagerStandard 199 200 #endif /* COMMUNICATIONNETMANAGERBASE_CONNECTION_ASYNC_WORK_H */ 201