1 /*
2 * Copyright (C) 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 #include "napi_bluetooth_constant.h"
17
18 #include "bluetooth_log.h"
19 #include "napi_bluetooth_utils.h"
20
21 namespace {
22 const std::string PROFILE_UUID_BASE_UUID = "00000000-0000-1000-8000-00805F9B34FB";
23 const std::string PROFILE_UUID_HFP_AG = "0000111F-0000-1000-8000-00805F9B34FB";
24 const std::string PROFILE_UUID_HFP_HF = "0000111E-0000-1000-8000-00805F9B34FB";
25 const std::string PROFILE_UUID_HSP_AG = "00001112-0000-1000-8000-00805F9B34FB";
26 const std::string PROFILE_UUID_HSP_HS = "00001108-0000-1000-8000-00805F9B34FB";
27 const std::string PROFILE_UUID_A2DP_SRC = "0000110A-0000-1000-8000-00805F9B34FB";
28 const std::string PROFILE_UUID_A2DP_SINK = "0000110B-0000-1000-8000-00805F9B34FB";
29 const std::string PROFILE_UUID_AVRCP_CT = "0000110E-0000-1000-8000-00805F9B34FB";
30 const std::string PROFILE_UUID_AVRCP_TG = "0000110C-0000-1000-8000-00805F9B34FB";
31 const std::string PROFILE_UUID_HID = "00001124-0000-1000-8000-00805F9B34FB";
32 const std::string PROFILE_UUID_HOGP = "00001812-0000-1000-8000-00805F9B34FB";
33 const std::string PROFILE_UUID_PBAP_PSE = "0000112f-0000-1000-8000-00805F9B34FB";
34 } // namespace
35
36 namespace OHOS {
37 namespace Bluetooth {
DefineJSConstant(napi_env env,napi_value exports)38 napi_value NapiConstant::DefineJSConstant(napi_env env, napi_value exports)
39 {
40 HILOGD("enter");
41 ConstantPropertyValueInit(env, exports);
42 napi_property_descriptor desc[] = {};
43 napi_define_properties(env, exports, sizeof(desc) / sizeof(desc[0]), desc);
44 return exports;
45 }
46
ConstantPropertyValueInit(napi_env env,napi_value exports)47 napi_value NapiConstant::ConstantPropertyValueInit(napi_env env, napi_value exports)
48 {
49 HILOGD("enter");
50 napi_value profileIdObj = ProfileIdInit(env);
51 napi_value profileUuidsObj = ProfileUuidsInit(env);
52 napi_value profileStateObj = ProfileStateInit(env);
53 napi_value majorClassObj = MajorClassOfDeviceInit(env);
54 napi_value majorMinorClassObj = MajorMinorClassOfDeviceInit(env);
55 napi_value accessAuthorizationObj = AccessAuthorizationInit(env);
56 napi_property_descriptor exportFuncs[] = {
57 DECLARE_NAPI_PROPERTY("ProfileId", profileIdObj),
58 DECLARE_NAPI_PROPERTY("ProfileUuids", profileUuidsObj),
59 DECLARE_NAPI_PROPERTY("ProfileConnectionState", profileStateObj),
60 DECLARE_NAPI_PROPERTY("MajorClass", majorClassObj),
61 DECLARE_NAPI_PROPERTY("MajorMinorClass", majorMinorClassObj),
62 DECLARE_NAPI_PROPERTY("AccessAuthorization", accessAuthorizationObj),
63 };
64 napi_define_properties(env, exports, sizeof(exportFuncs) / sizeof(*exportFuncs), exportFuncs);
65 return exports;
66 }
67
ProfileIdInit(napi_env env)68 napi_value NapiConstant::ProfileIdInit(napi_env env)
69 {
70 HILOGD("enter");
71 napi_value profileId = nullptr;
72 napi_create_object(env, &profileId);
73 SetNamedPropertyByInteger(env, profileId, ProfileId::PROFILE_A2DP_SINK, "PROFILE_A2DP_SINK");
74 SetNamedPropertyByInteger(env, profileId, ProfileId::PROFILE_A2DP_SOURCE, "PROFILE_A2DP_SOURCE");
75 SetNamedPropertyByInteger(env, profileId, ProfileId::PROFILE_AVRCP_CT, "PROFILE_AVRCP_CT");
76 SetNamedPropertyByInteger(env, profileId, ProfileId::PROFILE_AVRCP_TG, "PROFILE_AVRCP_TG");
77 #ifdef BLUETOOTH_API_SINCE_10
78 SetNamedPropertyByInteger(
79 env, profileId, ProfileId::PROFILE_HANDS_FREE_AUDIO_GATEWAY, "PROFILE_HANDSFREE_AUDIO_GATEWAY");
80 #else
81 SetNamedPropertyByInteger(
82 env, profileId, ProfileId::PROFILE_HANDS_FREE_AUDIO_GATEWAY, "PROFILE_HANDS_FREE_AUDIO_GATEWAY");
83 #endif
84 SetNamedPropertyByInteger(env, profileId, ProfileId::PROFILE_HANDS_FREE_UNIT, "PROFILE_HANDS_FREE_UNIT");
85 SetNamedPropertyByInteger(env, profileId, ProfileId::PROFILE_HID_HOST, "PROFILE_HID_HOST");
86 SetNamedPropertyByInteger(env, profileId, ProfileId::PROFILE_PAN_NETWORK, "PROFILE_PAN_NETWORK");
87 SetNamedPropertyByInteger(env, profileId, ProfileId::PROFILE_PBAP_CLIENT, "PROFILE_PBAP_PCE");
88 SetNamedPropertyByInteger(env, profileId, ProfileId::PROFILE_PBAP_SERVER, "PROFILE_PBAP_PSE");
89 SetNamedPropertyByInteger(env, profileId, ProfileId::PROFILE_OPP, "PROFILE_OPP");
90 return profileId;
91 }
92
ProfileUuidsInit(napi_env env)93 napi_value NapiConstant::ProfileUuidsInit(napi_env env)
94 {
95 HILOGD("enter");
96 napi_value profileUuidsObj = nullptr;
97 napi_create_object(env, &profileUuidsObj);
98 SetNamedPropertyByString(env, profileUuidsObj, PROFILE_UUID_HFP_AG, "PROFILE_UUID_HFP_AG");
99 SetNamedPropertyByString(env, profileUuidsObj, PROFILE_UUID_HFP_HF, "PROFILE_UUID_HFP_HF");
100 SetNamedPropertyByString(env, profileUuidsObj, PROFILE_UUID_HSP_AG, "PROFILE_UUID_HSP_AG");
101 SetNamedPropertyByString(env, profileUuidsObj, PROFILE_UUID_HSP_HS, "PROFILE_UUID_HSP_HS");
102 SetNamedPropertyByString(env, profileUuidsObj, PROFILE_UUID_A2DP_SRC, "PROFILE_UUID_A2DP_SRC");
103 SetNamedPropertyByString(env, profileUuidsObj, PROFILE_UUID_A2DP_SINK, "PROFILE_UUID_A2DP_SINK");
104 SetNamedPropertyByString(env, profileUuidsObj, PROFILE_UUID_AVRCP_CT, "PROFILE_UUID_AVRCP_CT");
105 SetNamedPropertyByString(env, profileUuidsObj, PROFILE_UUID_AVRCP_TG, "PROFILE_UUID_AVRCP_TG");
106 SetNamedPropertyByString(env, profileUuidsObj, PROFILE_UUID_HID, "PROFILE_UUID_HID");
107 SetNamedPropertyByString(env, profileUuidsObj, PROFILE_UUID_HOGP, "PROFILE_UUID_HOGP");
108 SetNamedPropertyByString(env, profileUuidsObj, PROFILE_UUID_PBAP_PSE, "PROFILE_UUID_PBAP_PSE");
109 return profileUuidsObj;
110 }
111
ProfileStateInit(napi_env env)112 napi_value NapiConstant::ProfileStateInit(napi_env env)
113 {
114 HILOGD("enter");
115 napi_value profileState = nullptr;
116 napi_create_object(env, &profileState);
117 SetNamedPropertyByInteger(env, profileState, ProfileConnectionState::STATE_DISCONNECTED, "STATE_DISCONNECTED");
118 SetNamedPropertyByInteger(env, profileState, ProfileConnectionState::STATE_CONNECTING, "STATE_CONNECTING");
119 SetNamedPropertyByInteger(env, profileState, ProfileConnectionState::STATE_CONNECTED, "STATE_CONNECTED");
120 SetNamedPropertyByInteger(env, profileState, ProfileConnectionState::STATE_DISCONNECTING, "STATE_DISCONNECTING");
121 return profileState;
122 }
123
MajorClassOfDeviceInit(napi_env env)124 napi_value NapiConstant::MajorClassOfDeviceInit(napi_env env)
125 {
126 HILOGD("enter");
127 napi_value majorClass = nullptr;
128 napi_create_object(env, &majorClass);
129 // MajorClass
130 SetNamedPropertyByInteger(env, majorClass, MajorClass::MAJOR_MISC, "MAJOR_MISC");
131 SetNamedPropertyByInteger(env, majorClass, MajorClass::MAJOR_COMPUTER, "MAJOR_COMPUTER");
132 SetNamedPropertyByInteger(env, majorClass, MajorClass::MAJOR_PHONE, "MAJOR_PHONE");
133 SetNamedPropertyByInteger(env, majorClass, MajorClass::MAJOR_NETWORKING, "MAJOR_NETWORKING");
134 SetNamedPropertyByInteger(env, majorClass, MajorClass::MAJOR_AUDIO_VIDEO, "MAJOR_AUDIO_VIDEO");
135 SetNamedPropertyByInteger(env, majorClass, MajorClass::MAJOR_PERIPHERAL, "MAJOR_PERIPHERAL");
136 SetNamedPropertyByInteger(env, majorClass, MajorClass::MAJOR_IMAGING, "MAJOR_IMAGING");
137 SetNamedPropertyByInteger(env, majorClass, MajorClass::MAJOR_WEARABLE, "MAJOR_WEARABLE");
138 SetNamedPropertyByInteger(env, majorClass, MajorClass::MAJOR_TOY, "MAJOR_TOY");
139 SetNamedPropertyByInteger(env, majorClass, MajorClass::MAJOR_HEALTH, "MAJOR_HEALTH");
140 SetNamedPropertyByInteger(env, majorClass, MajorClass::MAJOR_UNCATEGORIZED, "MAJOR_UNCATEGORIZED");
141 return majorClass;
142 }
143
MajorMinorClassOfDeviceInit(napi_env env)144 napi_value NapiConstant::MajorMinorClassOfDeviceInit(napi_env env)
145 {
146 HILOGD("enter");
147 napi_value majorMinorClass = nullptr;
148 napi_create_object(env, &majorMinorClass);
149 // MajorMinorClass
150 // Computer Major Class
151 ComputerMajorClassOfDeviceInit(env, majorMinorClass);
152 // Phone Major Class
153 PhoneMajorClassOfDeviceInit(env, majorMinorClass);
154 // LAN/Network Access Point Major Class
155 NetworkMajorClassOfDeviceInit(env, majorMinorClass);
156 // Audio/Video Major Class
157 AudioVideoMajorClassOfDeviceInit(env, majorMinorClass);
158 // Peripheral Major Class
159 PeripheralMajorClassOfDeviceInit(env, majorMinorClass);
160 // Imaging Major Class
161 ImagingMajorClassOfDeviceInit(env, majorMinorClass);
162 // Wearable Major Class
163 WearableMajorClassOfDeviceInit(env, majorMinorClass);
164 // Minor Device Class field - Toy Major Class
165 ToyMajorClassOfDeviceInit(env, majorMinorClass);
166 // Minor Device Class field - Health
167 HealthMajorClassOfDeviceInit(env, majorMinorClass);
168 return majorMinorClass;
169 }
170
ComputerMajorClassOfDeviceInit(napi_env env,napi_value majorMinorClass)171 napi_value NapiConstant::ComputerMajorClassOfDeviceInit(napi_env env, napi_value majorMinorClass)
172 {
173 SetNamedPropertyByInteger(
174 env, majorMinorClass, static_cast<int>(MajorMinorClass::COMPUTER_UNCATEGORIZED), "COMPUTER_UNCATEGORIZED");
175 SetNamedPropertyByInteger(
176 env, majorMinorClass, static_cast<int>(MajorMinorClass::COMPUTER_DESKTOP), "COMPUTER_DESKTOP");
177 SetNamedPropertyByInteger(
178 env, majorMinorClass, static_cast<int>(MajorMinorClass::COMPUTER_SERVER), "COMPUTER_SERVER");
179 SetNamedPropertyByInteger(
180 env, majorMinorClass, static_cast<int>(MajorMinorClass::COMPUTER_LAPTOP), "COMPUTER_LAPTOP");
181 SetNamedPropertyByInteger(
182 env, majorMinorClass, static_cast<int>(MajorMinorClass::COMPUTER_HANDHELD_PC_PDA), "COMPUTER_HANDHELD_PC_PDA");
183 SetNamedPropertyByInteger(env,
184 majorMinorClass,
185 static_cast<int>(MajorMinorClass::COMPUTER_PALM_SIZE_PC_PDA),
186 "COMPUTER_PALM_SIZE_PC_PDA");
187 SetNamedPropertyByInteger(
188 env, majorMinorClass, static_cast<int>(MajorMinorClass::COMPUTER_WEARABLE), "COMPUTER_WEARABLE");
189 SetNamedPropertyByInteger(
190 env, majorMinorClass, static_cast<int>(MajorMinorClass::COMPUTER_TABLET), "COMPUTER_TABLET");
191 return majorMinorClass;
192 }
193
PhoneMajorClassOfDeviceInit(napi_env env,napi_value majorMinorClass)194 napi_value NapiConstant::PhoneMajorClassOfDeviceInit(napi_env env, napi_value majorMinorClass)
195 {
196 SetNamedPropertyByInteger(
197 env, majorMinorClass, static_cast<int>(MajorMinorClass::PHONE_UNCATEGORIZED), "PHONE_UNCATEGORIZED");
198 SetNamedPropertyByInteger(
199 env, majorMinorClass, static_cast<int>(MajorMinorClass::PHONE_CELLULAR), "PHONE_CELLULAR");
200 SetNamedPropertyByInteger(
201 env, majorMinorClass, static_cast<int>(MajorMinorClass::PHONE_CORDLESS), "PHONE_CORDLESS");
202 SetNamedPropertyByInteger(env, majorMinorClass, static_cast<int>(MajorMinorClass::PHONE_SMART), "PHONE_SMART");
203 SetNamedPropertyByInteger(
204 env, majorMinorClass, static_cast<int>(MajorMinorClass::PHONE_MODEM_OR_GATEWAY), "PHONE_MODEM_OR_GATEWAY");
205 SetNamedPropertyByInteger(env, majorMinorClass, static_cast<int>(MajorMinorClass::PHONE_ISDN), "PHONE_ISDN");
206 return majorMinorClass;
207 }
208
NetworkMajorClassOfDeviceInit(napi_env env,napi_value majorMinorClass)209 napi_value NapiConstant::NetworkMajorClassOfDeviceInit(napi_env env, napi_value majorMinorClass)
210 {
211 SetNamedPropertyByInteger(
212 env, majorMinorClass, static_cast<int>(MajorMinorClass::NETWORK_FULLY_AVAILABLE), "NETWORK_FULLY_AVAILABLE");
213 SetNamedPropertyByInteger(
214 env, majorMinorClass, static_cast<int>(MajorMinorClass::NETWORK_1_TO_17_UTILIZED), "NETWORK_1_TO_17_UTILIZED");
215 SetNamedPropertyByInteger(env,
216 majorMinorClass,
217 static_cast<int>(MajorMinorClass::NETWORK_17_TO_33_UTILIZED),
218 "NETWORK_17_TO_33_UTILIZED");
219 SetNamedPropertyByInteger(env,
220 majorMinorClass,
221 static_cast<int>(MajorMinorClass::NETWORK_33_TO_50_UTILIZED),
222 "NETWORK_33_TO_50_UTILIZED");
223 SetNamedPropertyByInteger(env,
224 majorMinorClass,
225 static_cast<int>(MajorMinorClass::NETWORK_60_TO_67_UTILIZED),
226 "NETWORK_60_TO_67_UTILIZED");
227 SetNamedPropertyByInteger(env,
228 majorMinorClass,
229 static_cast<int>(MajorMinorClass::NETWORK_67_TO_83_UTILIZED),
230 "NETWORK_67_TO_83_UTILIZED");
231 SetNamedPropertyByInteger(env,
232 majorMinorClass,
233 static_cast<int>(MajorMinorClass::NETWORK_83_TO_99_UTILIZED),
234 "NETWORK_83_TO_99_UTILIZED");
235 SetNamedPropertyByInteger(
236 env, majorMinorClass, static_cast<int>(MajorMinorClass::NETWORK_NO_SERVICE), "NETWORK_NO_SERVICE");
237 return majorMinorClass;
238 }
239
AudioVideoMajorClassOfDeviceInit(napi_env env,napi_value majorMinorClass)240 napi_value NapiConstant::AudioVideoMajorClassOfDeviceInit(napi_env env, napi_value majorMinorClass)
241 {
242 SetNamedPropertyByInteger(env, majorMinorClass,
243 static_cast<int>(MajorMinorClass::AUDIO_VIDEO_UNCATEGORIZED), "AUDIO_VIDEO_UNCATEGORIZED");
244 SetNamedPropertyByInteger(env, majorMinorClass,
245 static_cast<int>(MajorMinorClass::AUDIO_VIDEO_WEARABLE_HEADSET), "AUDIO_VIDEO_WEARABLE_HEADSET");
246 SetNamedPropertyByInteger(
247 env, majorMinorClass, static_cast<int>(MajorMinorClass::AUDIO_VIDEO_HANDSFREE), "AUDIO_VIDEO_HANDSFREE");
248 SetNamedPropertyByInteger(
249 env, majorMinorClass, static_cast<int>(MajorMinorClass::AUDIO_VIDEO_MICROPHONE), "AUDIO_VIDEO_MICROPHONE");
250 SetNamedPropertyByInteger(
251 env, majorMinorClass, static_cast<int>(MajorMinorClass::AUDIO_VIDEO_LOUDSPEAKER), "AUDIO_VIDEO_LOUDSPEAKER");
252 SetNamedPropertyByInteger(
253 env, majorMinorClass, static_cast<int>(MajorMinorClass::AUDIO_VIDEO_HEADPHONES), "AUDIO_VIDEO_HEADPHONES");
254 SetNamedPropertyByInteger(env, majorMinorClass,
255 static_cast<int>(MajorMinorClass::AUDIO_VIDEO_PORTABLE_AUDIO), "AUDIO_VIDEO_PORTABLE_AUDIO");
256 SetNamedPropertyByInteger(
257 env, majorMinorClass, static_cast<int>(MajorMinorClass::AUDIO_VIDEO_CAR_AUDIO), "AUDIO_VIDEO_CAR_AUDIO");
258 SetNamedPropertyByInteger(
259 env, majorMinorClass, static_cast<int>(MajorMinorClass::AUDIO_VIDEO_SET_TOP_BOX), "AUDIO_VIDEO_SET_TOP_BOX");
260 SetNamedPropertyByInteger(
261 env, majorMinorClass, static_cast<int>(MajorMinorClass::AUDIO_VIDEO_HIFI_AUDIO), "AUDIO_VIDEO_HIFI_AUDIO");
262 SetNamedPropertyByInteger(
263 env, majorMinorClass, static_cast<int>(MajorMinorClass::AUDIO_VIDEO_VCR), "AUDIO_VIDEO_VCR");
264 SetNamedPropertyByInteger(
265 env, majorMinorClass, static_cast<int>(MajorMinorClass::AUDIO_VIDEO_VIDEO_CAMERA), "AUDIO_VIDEO_VIDEO_CAMERA");
266 SetNamedPropertyByInteger(
267 env, majorMinorClass, static_cast<int>(MajorMinorClass::AUDIO_VIDEO_CAMCORDER), "AUDIO_VIDEO_CAMCORDER");
268 SetNamedPropertyByInteger(env, majorMinorClass,
269 static_cast<int>(MajorMinorClass::AUDIO_VIDEO_VIDEO_MONITOR), "AUDIO_VIDEO_VIDEO_MONITOR");
270 SetNamedPropertyByInteger(env, majorMinorClass,
271 static_cast<int>(MajorMinorClass::AUDIO_VIDEO_VIDEO_DISPLAY_AND_LOUDSPEAKER),
272 "AUDIO_VIDEO_VIDEO_DISPLAY_AND_LOUDSPEAKER");
273 SetNamedPropertyByInteger(env, majorMinorClass,
274 static_cast<int>(MajorMinorClass::AUDIO_VIDEO_VIDEO_CONFERENCING), "AUDIO_VIDEO_VIDEO_CONFERENCING");
275 SetNamedPropertyByInteger(env, majorMinorClass,
276 static_cast<int>(MajorMinorClass::AUDIO_VIDEO_VIDEO_GAMING_TOY), "AUDIO_VIDEO_VIDEO_GAMING_TOY");
277 return majorMinorClass;
278 }
279
PeripheralMajorClassOfDeviceInit(napi_env env,napi_value majorMinorClass)280 napi_value NapiConstant::PeripheralMajorClassOfDeviceInit(napi_env env, napi_value majorMinorClass)
281 {
282 SetNamedPropertyByInteger(env,
283 majorMinorClass,
284 static_cast<int>(MajorMinorClass::PERIPHERAL_NON_KEYBOARD_NON_POINTING),
285 "PERIPHERAL_NON_KEYBOARD_NON_POINTING");
286 SetNamedPropertyByInteger(
287 env, majorMinorClass, static_cast<int>(MajorMinorClass::PERIPHERAL_KEYBOARD), "PERIPHERAL_KEYBOARD");
288 SetNamedPropertyByInteger(env,
289 majorMinorClass,
290 static_cast<int>(MajorMinorClass::PERIPHERAL_POINTING_DEVICE),
291 "PERIPHERAL_POINTING_DEVICE");
292 SetNamedPropertyByInteger(env,
293 majorMinorClass,
294 static_cast<int>(MajorMinorClass::PERIPHERAL_KEYBOARD_POINTING),
295 "PERIPHERAL_KEYBOARD_POINTING");
296 SetNamedPropertyByInteger(
297 env, majorMinorClass, static_cast<int>(MajorMinorClass::PERIPHERAL_UNCATEGORIZED), "PERIPHERAL_UNCATEGORIZED");
298 SetNamedPropertyByInteger(
299 env, majorMinorClass, static_cast<int>(MajorMinorClass::PERIPHERAL_JOYSTICK), "PERIPHERAL_JOYSTICK");
300 SetNamedPropertyByInteger(
301 env, majorMinorClass, static_cast<int>(MajorMinorClass::PERIPHERAL_GAMEPAD), "PERIPHERAL_GAMEPAD");
302 SetNamedPropertyByInteger(env,
303 majorMinorClass,
304 static_cast<int>(MajorMinorClass::PERIPHERAL_REMOTE_CONTROL),
305 "PERIPHERAL_REMOTE_CONTROL");
306 SetNamedPropertyByInteger(env,
307 majorMinorClass,
308 static_cast<int>(MajorMinorClass::PERIPHERAL_SENSING_DEVICE),
309 "PERIPHERAL_SENSING_DEVICE");
310 SetNamedPropertyByInteger(env,
311 majorMinorClass,
312 static_cast<int>(MajorMinorClass::PERIPHERAL_DIGITIZER_TABLET),
313 "PERIPHERAL_DIGITIZER_TABLET");
314 SetNamedPropertyByInteger(
315 env, majorMinorClass, static_cast<int>(MajorMinorClass::PERIPHERAL_CARD_READER), "PERIPHERAL_CARD_READER");
316 SetNamedPropertyByInteger(
317 env, majorMinorClass, static_cast<int>(MajorMinorClass::PERIPHERAL_DIGITAL_PEN), "PERIPHERAL_DIGITAL_PEN");
318 SetNamedPropertyByInteger(
319 env, majorMinorClass, static_cast<int>(MajorMinorClass::PERIPHERAL_SCANNER_RFID), "PERIPHERAL_SCANNER_RFID");
320 SetNamedPropertyByInteger(env,
321 majorMinorClass,
322 static_cast<int>(MajorMinorClass::PERIPHERAL_GESTURAL_INPUT),
323 "PERIPHERAL_GESTURAL_INPUT");
324 return majorMinorClass;
325 }
326
ImagingMajorClassOfDeviceInit(napi_env env,napi_value majorMinorClass)327 napi_value NapiConstant::ImagingMajorClassOfDeviceInit(napi_env env, napi_value majorMinorClass)
328 {
329 SetNamedPropertyByInteger(
330 env, majorMinorClass, static_cast<int>(MajorMinorClass::IMAGING_UNCATEGORIZED), "IMAGING_UNCATEGORIZED");
331 SetNamedPropertyByInteger(
332 env, majorMinorClass, static_cast<int>(MajorMinorClass::IMAGING_DISPLAY), "IMAGING_DISPLAY");
333 SetNamedPropertyByInteger(
334 env, majorMinorClass, static_cast<int>(MajorMinorClass::IMAGING_CAMERA), "IMAGING_CAMERA");
335 SetNamedPropertyByInteger(
336 env, majorMinorClass, static_cast<int>(MajorMinorClass::IMAGING_SCANNER), "IMAGING_SCANNER");
337 SetNamedPropertyByInteger(
338 env, majorMinorClass, static_cast<int>(MajorMinorClass::IMAGING_PRINTER), "IMAGING_PRINTER");
339 return majorMinorClass;
340 }
341
WearableMajorClassOfDeviceInit(napi_env env,napi_value majorMinorClass)342 napi_value NapiConstant::WearableMajorClassOfDeviceInit(napi_env env, napi_value majorMinorClass)
343 {
344 SetNamedPropertyByInteger(
345 env, majorMinorClass, static_cast<int>(MajorMinorClass::WEARABLE_UNCATEGORIZED), "WEARABLE_UNCATEGORIZED");
346 SetNamedPropertyByInteger(
347 env, majorMinorClass, static_cast<int>(MajorMinorClass::WEARABLE_WRIST_WATCH), "WEARABLE_WRIST_WATCH");
348 SetNamedPropertyByInteger(
349 env, majorMinorClass, static_cast<int>(MajorMinorClass::WEARABLE_PAGER), "WEARABLE_PAGER");
350 SetNamedPropertyByInteger(
351 env, majorMinorClass, static_cast<int>(MajorMinorClass::WEARABLE_JACKET), "WEARABLE_JACKET");
352 SetNamedPropertyByInteger(
353 env, majorMinorClass, static_cast<int>(MajorMinorClass::WEARABLE_HELMET), "WEARABLE_HELMET");
354 SetNamedPropertyByInteger(
355 env, majorMinorClass, static_cast<int>(MajorMinorClass::WEARABLE_GLASSES), "WEARABLE_GLASSES");
356 return majorMinorClass;
357 }
358
ToyMajorClassOfDeviceInit(napi_env env,napi_value majorMinorClass)359 napi_value NapiConstant::ToyMajorClassOfDeviceInit(napi_env env, napi_value majorMinorClass)
360 {
361 SetNamedPropertyByInteger(
362 env, majorMinorClass, static_cast<int>(MajorMinorClass::TOY_UNCATEGORIZED), "TOY_UNCATEGORIZED");
363 SetNamedPropertyByInteger(env, majorMinorClass, static_cast<int>(MajorMinorClass::TOY_ROBOT), "TOY_ROBOT");
364 SetNamedPropertyByInteger(env, majorMinorClass, static_cast<int>(MajorMinorClass::TOY_VEHICLE), "TOY_VEHICLE");
365 SetNamedPropertyByInteger(
366 env, majorMinorClass, static_cast<int>(MajorMinorClass::TOY_DOLL_ACTION_FIGURE), "TOY_DOLL_ACTION_FIGURE");
367 SetNamedPropertyByInteger(
368 env, majorMinorClass, static_cast<int>(MajorMinorClass::TOY_CONTROLLER), "TOY_CONTROLLER");
369 SetNamedPropertyByInteger(env, majorMinorClass, static_cast<int>(MajorMinorClass::TOY_GAME), "TOY_GAME");
370 return majorMinorClass;
371 }
372
HealthMajorClassOfDeviceInit(napi_env env,napi_value majorMinorClass)373 napi_value NapiConstant::HealthMajorClassOfDeviceInit(napi_env env, napi_value majorMinorClass)
374 {
375 SetNamedPropertyByInteger(
376 env, majorMinorClass, static_cast<int>(MajorMinorClass::HEALTH_UNCATEGORIZED), "HEALTH_UNCATEGORIZED");
377 SetNamedPropertyByInteger(
378 env, majorMinorClass, static_cast<int>(MajorMinorClass::HEALTH_BLOOD_PRESSURE), "HEALTH_BLOOD_PRESSURE");
379 SetNamedPropertyByInteger(
380 env, majorMinorClass, static_cast<int>(MajorMinorClass::HEALTH_THERMOMETER), "HEALTH_THERMOMETER");
381 SetNamedPropertyByInteger(
382 env, majorMinorClass, static_cast<int>(MajorMinorClass::HEALTH_WEIGHING), "HEALTH_WEIGHING");
383 SetNamedPropertyByInteger(
384 env, majorMinorClass, static_cast<int>(MajorMinorClass::HEALTH_GLUCOSE), "HEALTH_GLUCOSE");
385 SetNamedPropertyByInteger(
386 env, majorMinorClass, static_cast<int>(MajorMinorClass::HEALTH_PULSE_OXIMETER), "HEALTH_PULSE_OXIMETER");
387 SetNamedPropertyByInteger(
388 env, majorMinorClass, static_cast<int>(MajorMinorClass::HEALTH_PULSE_RATE), "HEALTH_PULSE_RATE");
389 SetNamedPropertyByInteger(
390 env, majorMinorClass, static_cast<int>(MajorMinorClass::HEALTH_DATA_DISPLAY), "HEALTH_DATA_DISPLAY");
391 SetNamedPropertyByInteger(
392 env, majorMinorClass, static_cast<int>(MajorMinorClass::HEALTH_STEP_COUNTER), "HEALTH_STEP_COUNTER");
393 SetNamedPropertyByInteger(env,
394 majorMinorClass,
395 static_cast<int>(MajorMinorClass::HEALTH_BODY_COMPOSITION_ANALYZER),
396 "HEALTH_BODY_COMPOSITION_ANALYZER");
397 SetNamedPropertyByInteger(
398 env, majorMinorClass, static_cast<int>(MajorMinorClass::HEALTH_PEAK_FLOW_MOITOR), "HEALTH_PEAK_FLOW_MOITOR");
399 SetNamedPropertyByInteger(
400 env, majorMinorClass, static_cast<int>(MajorMinorClass::HEALTH_PEAK_FLOW_MONITOR), "HEALTH_PEAK_FLOW_MONITOR");
401 SetNamedPropertyByInteger(env,
402 majorMinorClass,
403 static_cast<int>(MajorMinorClass::HEALTH_MEDICATION_MONITOR),
404 "HEALTH_MEDICATION_MONITOR");
405 SetNamedPropertyByInteger(
406 env, majorMinorClass, static_cast<int>(MajorMinorClass::HEALTH_KNEE_PROSTHESIS), "HEALTH_KNEE_PROSTHESIS");
407 SetNamedPropertyByInteger(
408 env, majorMinorClass, static_cast<int>(MajorMinorClass::HEALTH_ANKLE_PROSTHESIS), "HEALTH_ANKLE_PROSTHESIS");
409 SetNamedPropertyByInteger(env,
410 majorMinorClass,
411 static_cast<int>(MajorMinorClass::HEALTH_GENERIC_HEALTH_MANAGER),
412 "HEALTH_GENERIC_HEALTH_MANAGER");
413 SetNamedPropertyByInteger(env,
414 majorMinorClass,
415 static_cast<int>(MajorMinorClass::HEALTH_PERSONAL_MOBILITY_DEVICE),
416 "HEALTH_PERSONAL_MOBILITY_DEVICE");
417 return majorMinorClass;
418 }
419
AccessAuthorizationInit(napi_env env)420 napi_value NapiConstant::AccessAuthorizationInit(napi_env env)
421 {
422 HILOGD("enter");
423 napi_value accessAuthorization = nullptr;
424 napi_create_object(env, &accessAuthorization);
425 SetNamedPropertyByInteger(env, accessAuthorization, AccessAuthorization::UNKNOWN, "UNKNOWN");
426 SetNamedPropertyByInteger(env, accessAuthorization, AccessAuthorization::ALLOWED, "ALLOWED");
427 SetNamedPropertyByInteger(env, accessAuthorization, AccessAuthorization::REJECTED, "REJECTED");
428 return accessAuthorization;
429 }
430 } // namespace Bluetooth
431 } // namespace OHOS
432