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