node-opcua-address-space 2.70.3 → 2.71.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (369) hide show
  1. package/dist/source/address_space_ts.d.ts +118 -118
  2. package/dist/source/address_space_ts.js +17 -17
  3. package/dist/source/continuation_points/continuation_point_manager.d.ts +32 -32
  4. package/dist/source/continuation_points/continuation_point_manager.js +195 -195
  5. package/dist/source/helpers/adjust_browse_direction.d.ts +5 -5
  6. package/dist/source/helpers/adjust_browse_direction.js +11 -11
  7. package/dist/source/helpers/argument_list.d.ts +34 -34
  8. package/dist/source/helpers/argument_list.js +285 -285
  9. package/dist/source/helpers/call_helpers.d.ts +6 -6
  10. package/dist/source/helpers/call_helpers.js +70 -70
  11. package/dist/source/helpers/check_event_clause.d.ts +17 -17
  12. package/dist/source/helpers/check_event_clause.js +52 -52
  13. package/dist/source/helpers/coerce_enum_value.d.ts +6 -6
  14. package/dist/source/helpers/coerce_enum_value.js +33 -33
  15. package/dist/source/helpers/dump_tools.d.ts +14 -14
  16. package/dist/source/helpers/dump_tools.js +78 -78
  17. package/dist/source/helpers/ensure_secure_access.d.ts +9 -9
  18. package/dist/source/helpers/ensure_secure_access.js +76 -76
  19. package/dist/source/helpers/make_optionals_map.d.ts +21 -21
  20. package/dist/source/helpers/make_optionals_map.js +29 -29
  21. package/dist/source/helpers/multiform_func.d.ts +11 -11
  22. package/dist/source/helpers/multiform_func.js +73 -73
  23. package/dist/source/helpers/resolve_opaque_on_address_space.d.ts +3 -3
  24. package/dist/source/helpers/resolve_opaque_on_address_space.js +36 -36
  25. package/dist/source/index.d.ts +40 -40
  26. package/dist/source/index.js +66 -66
  27. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.d.ts +12 -12
  28. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.js +2 -2
  29. package/dist/source/interfaces/alarms_and_conditions/ua_condition_base_i.d.ts +23 -0
  30. package/dist/source/interfaces/alarms_and_conditions/ua_condition_base_i.js +3 -0
  31. package/dist/source/interfaces/alarms_and_conditions/ua_condition_base_i.js.map +1 -0
  32. package/dist/source/interfaces/data_access/ua_discrete_item.d.ts +6 -0
  33. package/dist/source/interfaces/data_access/ua_discrete_item.js +3 -0
  34. package/dist/source/interfaces/data_access/ua_discrete_item.js.map +1 -0
  35. package/dist/source/interfaces/data_access/ua_multistate_discrete.d.ts +25 -0
  36. package/dist/source/interfaces/data_access/ua_multistate_discrete.js +3 -0
  37. package/dist/source/interfaces/data_access/ua_multistate_discrete.js.map +1 -0
  38. package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.d.ts +21 -21
  39. package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.js +2 -2
  40. package/dist/source/interfaces/data_access/ua_multistate_value_discrete.d.ts +27 -0
  41. package/dist/source/interfaces/data_access/ua_multistate_value_discrete.js +3 -0
  42. package/dist/source/interfaces/data_access/ua_multistate_value_discrete.js.map +1 -0
  43. package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.d.ts +24 -24
  44. package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.js +2 -2
  45. package/dist/source/interfaces/data_access/ua_two_state_discrete.d.ts +17 -0
  46. package/dist/source/interfaces/data_access/ua_two_state_discrete.js +3 -0
  47. package/dist/source/interfaces/data_access/ua_two_state_discrete.js.map +1 -0
  48. package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.d.ts +12 -12
  49. package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.js +2 -2
  50. package/dist/source/interfaces/data_access/ua_y_array_item.d.ts +19 -0
  51. package/dist/source/interfaces/data_access/ua_y_array_item.js +3 -0
  52. package/dist/source/interfaces/data_access/ua_y_array_item.js.map +1 -0
  53. package/dist/source/interfaces/data_access/ua_y_array_item_ex.d.ts +8 -8
  54. package/dist/source/interfaces/data_access/ua_y_array_item_ex.js +2 -2
  55. package/dist/source/interfaces/state_machine/exclusive_limit_state_machine.d.ts +11 -0
  56. package/dist/source/interfaces/state_machine/exclusive_limit_state_machine.js +3 -0
  57. package/dist/source/interfaces/state_machine/exclusive_limit_state_machine.js.map +1 -0
  58. package/dist/source/interfaces/state_machine/finite_state_machine.d.ts +70 -0
  59. package/dist/source/interfaces/state_machine/finite_state_machine.js +3 -0
  60. package/dist/source/interfaces/state_machine/finite_state_machine.js.map +1 -0
  61. package/dist/source/interfaces/state_machine/program_finite_state_machine.d.ts +74 -0
  62. package/dist/source/interfaces/state_machine/program_finite_state_machine.js +3 -0
  63. package/dist/source/interfaces/state_machine/program_finite_state_machine.js.map +1 -0
  64. package/dist/source/interfaces/state_machine/state_machine.d.ts +342 -0
  65. package/dist/source/interfaces/state_machine/state_machine.js +3 -0
  66. package/dist/source/interfaces/state_machine/state_machine.js.map +1 -0
  67. package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.d.ts +12 -12
  68. package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js +2 -2
  69. package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.d.ts +49 -49
  70. package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.js +2 -2
  71. package/dist/source/interfaces/state_machine/ua_finite_state_variable.d.ts +18 -0
  72. package/dist/source/interfaces/state_machine/ua_finite_state_variable.js +3 -0
  73. package/dist/source/interfaces/state_machine/ua_finite_state_variable.js.map +1 -0
  74. package/dist/source/interfaces/state_machine/ua_program_state_machine_type.d.ts +11 -11
  75. package/dist/source/interfaces/state_machine/ua_program_state_machine_type.js +2 -2
  76. package/dist/source/interfaces/state_machine/ua_state_machine_type.d.ts +222 -222
  77. package/dist/source/interfaces/state_machine/ua_state_machine_type.js +2 -2
  78. package/dist/source/interfaces/state_machine/ua_state_variable.d.ts +29 -0
  79. package/dist/source/interfaces/state_machine/ua_state_variable.js +3 -0
  80. package/dist/source/interfaces/state_machine/ua_state_variable.js.map +1 -0
  81. package/dist/source/interfaces/state_machine/ua_transition_ex.d.ts +6 -6
  82. package/dist/source/interfaces/state_machine/ua_transition_ex.js +2 -2
  83. package/dist/source/interfaces/state_machine/ua_two_state_variable.d.ts +26 -0
  84. package/dist/source/interfaces/state_machine/ua_two_state_variable.js +3 -0
  85. package/dist/source/interfaces/state_machine/ua_two_state_variable.js.map +1 -0
  86. package/dist/source/interfaces/subscription_diagnostics_variable.d.ts +41 -0
  87. package/dist/source/interfaces/subscription_diagnostics_variable.js +3 -0
  88. package/dist/source/interfaces/subscription_diagnostics_variable.js.map +1 -0
  89. package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.d.ts +8 -8
  90. package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.js +2 -2
  91. package/dist/source/loader/decode_xml_extension_object.d.ts +6 -6
  92. package/dist/source/loader/decode_xml_extension_object.js +71 -71
  93. package/dist/source/loader/ensure_datatype_extracted.d.ts +5 -5
  94. package/dist/source/loader/ensure_datatype_extracted.js +45 -45
  95. package/dist/source/loader/generateAddressSpaceRaw.d.ts +10 -10
  96. package/dist/source/loader/generateAddressSpaceRaw.js +45 -45
  97. package/dist/source/loader/load_nodeset2.d.ts +16 -16
  98. package/dist/source/loader/load_nodeset2.js +1464 -1464
  99. package/dist/source/loader/make_xml_extension_object_parser.d.ts +28 -28
  100. package/dist/source/loader/make_xml_extension_object_parser.js +315 -315
  101. package/dist/source/loader/namespace_post_step.d.ts +6 -6
  102. package/dist/source/loader/namespace_post_step.js +47 -47
  103. package/dist/source/loader/register_node_promoter.d.ts +3 -3
  104. package/dist/source/loader/register_node_promoter.js +9 -9
  105. package/dist/source/namespace.d.ts +6 -6
  106. package/dist/source/namespace.js +2 -2
  107. package/dist/source/namespace_alarm_and_condition.d.ts +24 -24
  108. package/dist/source/namespace_alarm_and_condition.js +2 -2
  109. package/dist/source/namespace_data_access.d.ts +42 -42
  110. package/dist/source/namespace_data_access.js +2 -2
  111. package/dist/source/namespace_machine_state.d.ts +7 -7
  112. package/dist/source/namespace_machine_state.js +2 -2
  113. package/dist/source/pseudo_session.d.ts +55 -55
  114. package/dist/source/pseudo_session.js +203 -203
  115. package/dist/source/session_context.d.ts +111 -111
  116. package/dist/source/session_context.js +265 -265
  117. package/dist/source/set_namespace_meta_data.d.ts +2 -2
  118. package/dist/source/set_namespace_meta_data.js +59 -59
  119. package/dist/source/ua_root_folder.d.ts +9 -9
  120. package/dist/source/ua_root_folder.js +2 -2
  121. package/dist/source/ua_two_state_variable_ex.d.ts +23 -23
  122. package/dist/source/ua_two_state_variable_ex.js +2 -2
  123. package/dist/source/xml_writer.d.ts +9 -9
  124. package/dist/source/xml_writer.js +2 -2
  125. package/dist/src/address_space.d.ts +392 -392
  126. package/dist/src/address_space.js +1387 -1387
  127. package/dist/src/address_space_change_event_tools.d.ts +6 -6
  128. package/dist/src/address_space_change_event_tools.js +149 -149
  129. package/dist/src/address_space_private.d.ts +43 -43
  130. package/dist/src/address_space_private.js +2 -2
  131. package/dist/src/alarms_and_conditions/base_event_type.d.ts +26 -0
  132. package/dist/src/alarms_and_conditions/base_event_type.js +41 -0
  133. package/dist/src/alarms_and_conditions/base_event_type.js.map +1 -0
  134. package/dist/src/alarms_and_conditions/check_where_clause.d.ts +4 -4
  135. package/dist/src/alarms_and_conditions/check_where_clause.js +109 -109
  136. package/dist/src/alarms_and_conditions/condition.d.ts +5 -5
  137. package/dist/src/alarms_and_conditions/condition.js +80 -80
  138. package/dist/src/alarms_and_conditions/condition_info.d.ts +27 -27
  139. package/dist/src/alarms_and_conditions/condition_info.js +54 -54
  140. package/dist/src/alarms_and_conditions/condition_snapshot.d.ts +233 -233
  141. package/dist/src/alarms_and_conditions/condition_snapshot.js +666 -666
  142. package/dist/src/alarms_and_conditions/deviation_alarm_helper.d.ts +21 -21
  143. package/dist/src/alarms_and_conditions/deviation_alarm_helper.js +46 -46
  144. package/dist/src/alarms_and_conditions/extract_event_fields.d.ts +10 -10
  145. package/dist/src/alarms_and_conditions/extract_event_fields.js +89 -89
  146. package/dist/src/alarms_and_conditions/index.d.ts +18 -18
  147. package/dist/src/alarms_and_conditions/index.js +34 -34
  148. package/dist/src/alarms_and_conditions/shelving_state_machine.d.ts +22 -0
  149. package/dist/src/alarms_and_conditions/shelving_state_machine.js +241 -0
  150. package/dist/src/alarms_and_conditions/shelving_state_machine.js.map +1 -0
  151. package/dist/src/alarms_and_conditions/trip_alarm.d.ts +16 -0
  152. package/dist/src/alarms_and_conditions/trip_alarm.js +21 -0
  153. package/dist/src/alarms_and_conditions/trip_alarm.js.map +1 -0
  154. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_base.d.ts +54 -0
  155. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_base.js +255 -0
  156. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_base.js.map +1 -0
  157. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.d.ts +62 -62
  158. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js +244 -244
  159. package/dist/src/alarms_and_conditions/ua_alarm_condition_base.d.ts +138 -0
  160. package/dist/src/alarms_and_conditions/ua_alarm_condition_base.js +460 -0
  161. package/dist/src/alarms_and_conditions/ua_alarm_condition_base.js.map +1 -0
  162. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.d.ts +118 -118
  163. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js +416 -416
  164. package/dist/src/alarms_and_conditions/ua_base_event_impl.d.ts +29 -29
  165. package/dist/src/alarms_and_conditions/ua_base_event_impl.js +38 -38
  166. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm.d.ts +35 -0
  167. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm.js +32 -0
  168. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm.js.map +1 -0
  169. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.d.ts +21 -21
  170. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js +25 -25
  171. package/dist/src/alarms_and_conditions/ua_condition_base.d.ts +191 -0
  172. package/dist/src/alarms_and_conditions/ua_condition_base.js +1029 -0
  173. package/dist/src/alarms_and_conditions/ua_condition_base.js.map +1 -0
  174. package/dist/src/alarms_and_conditions/ua_condition_impl.d.ts +182 -182
  175. package/dist/src/alarms_and_conditions/ua_condition_impl.js +1022 -1022
  176. package/dist/src/alarms_and_conditions/ua_discrete_alarm.d.ts +11 -0
  177. package/dist/src/alarms_and_conditions/ua_discrete_alarm.js +58 -0
  178. package/dist/src/alarms_and_conditions/ua_discrete_alarm.js.map +1 -0
  179. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.d.ts +17 -17
  180. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js +57 -57
  181. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm.d.ts +24 -0
  182. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm.js +59 -0
  183. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm.js.map +1 -0
  184. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.d.ts +27 -27
  185. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js +56 -56
  186. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm.d.ts +14 -0
  187. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm.js +17 -0
  188. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm.js.map +1 -0
  189. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.d.ts +9 -9
  190. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js +11 -11
  191. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm.d.ts +22 -0
  192. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm.js +87 -0
  193. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm.js.map +1 -0
  194. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.d.ts +38 -38
  195. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js +86 -86
  196. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm.d.ts +6 -0
  197. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm.js +11 -0
  198. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm.js.map +1 -0
  199. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.d.ts +10 -10
  200. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js +7 -7
  201. package/dist/src/alarms_and_conditions/ua_limit_alarm.d.ts +76 -0
  202. package/dist/src/alarms_and_conditions/ua_limit_alarm.js +237 -0
  203. package/dist/src/alarms_and_conditions/ua_limit_alarm.js.map +1 -0
  204. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.d.ts +97 -97
  205. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js +250 -250
  206. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm.d.ts +27 -0
  207. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm.js +62 -0
  208. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm.js.map +1 -0
  209. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.d.ts +28 -28
  210. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js +50 -50
  211. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm.d.ts +49 -0
  212. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm.js +176 -0
  213. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm.js.map +1 -0
  214. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.d.ts +25 -25
  215. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js +162 -162
  216. package/dist/src/alarms_and_conditions/ua_off_normal_alarm.d.ts +47 -0
  217. package/dist/src/alarms_and_conditions/ua_off_normal_alarm.js +151 -0
  218. package/dist/src/alarms_and_conditions/ua_off_normal_alarm.js.map +1 -0
  219. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.d.ts +39 -39
  220. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js +135 -135
  221. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm.d.ts +16 -0
  222. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm.js +18 -0
  223. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm.js.map +1 -0
  224. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.d.ts +16 -16
  225. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js +17 -17
  226. package/dist/src/apply_condition_refresh.d.ts +6 -6
  227. package/dist/src/apply_condition_refresh.js +27 -27
  228. package/dist/src/base_node.d.ts +270 -0
  229. package/dist/src/base_node.js +1299 -0
  230. package/dist/src/base_node.js.map +1 -0
  231. package/dist/src/base_node_impl.d.ts +281 -281
  232. package/dist/src/base_node_impl.js +1395 -1395
  233. package/dist/src/base_node_private.d.ts +61 -61
  234. package/dist/src/base_node_private.js +705 -705
  235. package/dist/src/data_access/add_dataItem_stuff.d.ts +11 -11
  236. package/dist/src/data_access/add_dataItem_stuff.js +61 -61
  237. package/dist/src/data_access/check_variant_compatibility_ua_analog_item.d.ts +1 -1
  238. package/dist/src/data_access/check_variant_compatibility_ua_analog_item.js +34 -34
  239. package/dist/src/data_access/ua_analog_item.d.ts +13 -0
  240. package/dist/src/data_access/ua_analog_item.js +37 -0
  241. package/dist/src/data_access/ua_analog_item.js.map +1 -0
  242. package/dist/src/data_access/ua_data_item.d.ts +16 -0
  243. package/dist/src/data_access/ua_data_item.js +66 -0
  244. package/dist/src/data_access/ua_data_item.js.map +1 -0
  245. package/dist/src/data_access/ua_multistate_discrete.d.ts +24 -0
  246. package/dist/src/data_access/ua_multistate_discrete.js +132 -0
  247. package/dist/src/data_access/ua_multistate_discrete.js.map +1 -0
  248. package/dist/src/data_access/ua_multistate_discrete_impl.d.ts +32 -32
  249. package/dist/src/data_access/ua_multistate_discrete_impl.js +130 -130
  250. package/dist/src/data_access/ua_multistate_value_discrete.d.ts +51 -51
  251. package/dist/src/data_access/ua_multistate_value_discrete.js +249 -249
  252. package/dist/src/data_access/ua_two_state_discrete.d.ts +25 -25
  253. package/dist/src/data_access/ua_two_state_discrete.js +153 -153
  254. package/dist/src/event_data.d.ts +29 -29
  255. package/dist/src/event_data.js +95 -95
  256. package/dist/src/extension_object_array_node.d.ts +61 -61
  257. package/dist/src/extension_object_array_node.js +276 -276
  258. package/dist/src/historical_access/address_space_historical_data_node.d.ts +26 -26
  259. package/dist/src/historical_access/address_space_historical_data_node.js +630 -630
  260. package/dist/src/index_current.d.ts +45 -45
  261. package/dist/src/index_current.js +77 -77
  262. package/dist/src/namespace.d.ts +472 -0
  263. package/dist/src/namespace.js +1759 -0
  264. package/dist/src/namespace.js.map +1 -0
  265. package/dist/src/namespace_impl.d.ts +457 -457
  266. package/dist/src/namespace_impl.js +1733 -1733
  267. package/dist/src/namespace_private.d.ts +21 -21
  268. package/dist/src/namespace_private.js +32 -32
  269. package/dist/src/nodeid_manager.d.ts +36 -36
  270. package/dist/src/nodeid_manager.js +197 -197
  271. package/dist/src/nodeset_tools/adjust_namespace_array.d.ts +2 -2
  272. package/dist/src/nodeset_tools/adjust_namespace_array.js +13 -13
  273. package/dist/src/nodeset_tools/construct_namespace_dependency.d.ts +2 -2
  274. package/dist/src/nodeset_tools/construct_namespace_dependency.js +83 -83
  275. package/dist/src/nodeset_tools/nodeset_to_xml.d.ts +2 -2
  276. package/dist/src/nodeset_tools/nodeset_to_xml.js +1143 -1143
  277. package/dist/src/nodeset_tools/typedictionary_to_xml.d.ts +2 -2
  278. package/dist/src/nodeset_tools/typedictionary_to_xml.js +154 -154
  279. package/dist/src/reference.d.ts +43 -0
  280. package/dist/src/reference.js +138 -0
  281. package/dist/src/reference.js.map +1 -0
  282. package/dist/src/reference_impl.d.ts +43 -43
  283. package/dist/src/reference_impl.js +139 -139
  284. package/dist/src/role_permissions.d.ts +2 -2
  285. package/dist/src/role_permissions.js +10 -10
  286. package/dist/src/session_context.d.ts +4 -0
  287. package/dist/src/session_context.js +9 -0
  288. package/dist/src/session_context.js.map +1 -0
  289. package/dist/src/state_machine/finite_state_machine.d.ts +67 -67
  290. package/dist/src/state_machine/finite_state_machine.js +353 -353
  291. package/dist/src/state_machine/ua_shelving_state_machine_ex.d.ts +34 -34
  292. package/dist/src/state_machine/ua_shelving_state_machine_ex.js +250 -250
  293. package/dist/src/state_machine/ua_two_state_variable.d.ts +61 -61
  294. package/dist/src/state_machine/ua_two_state_variable.js +331 -331
  295. package/dist/src/tool_isSupertypeOf.d.ts +17 -17
  296. package/dist/src/tool_isSupertypeOf.js +108 -108
  297. package/dist/src/ua_condition_type.d.ts +8 -8
  298. package/dist/src/ua_condition_type.js +2 -2
  299. package/dist/src/ua_data_type.d.ts +81 -0
  300. package/dist/src/ua_data_type.js +259 -0
  301. package/dist/src/ua_data_type.js.map +1 -0
  302. package/dist/src/ua_data_type_impl.d.ts +93 -93
  303. package/dist/src/ua_data_type_impl.js +368 -368
  304. package/dist/src/ua_method.d.ts +33 -0
  305. package/dist/src/ua_method.js +194 -0
  306. package/dist/src/ua_method.js.map +1 -0
  307. package/dist/src/ua_method_impl.d.ts +41 -41
  308. package/dist/src/ua_method_impl.js +208 -208
  309. package/dist/src/ua_object.d.ts +27 -0
  310. package/dist/src/ua_object.js +153 -0
  311. package/dist/src/ua_object.js.map +1 -0
  312. package/dist/src/ua_object_impl.d.ts +33 -33
  313. package/dist/src/ua_object_impl.js +156 -156
  314. package/dist/src/ua_object_type.d.ts +49 -0
  315. package/dist/src/ua_object_type.js +123 -0
  316. package/dist/src/ua_object_type.js.map +1 -0
  317. package/dist/src/ua_object_type_impl.d.ts +48 -48
  318. package/dist/src/ua_object_type_impl.js +124 -124
  319. package/dist/src/ua_reference_type.d.ts +31 -0
  320. package/dist/src/ua_reference_type.js +108 -0
  321. package/dist/src/ua_reference_type.js.map +1 -0
  322. package/dist/src/ua_reference_type_impl.d.ts +43 -43
  323. package/dist/src/ua_reference_type_impl.js +139 -139
  324. package/dist/src/ua_variable.d.ts +346 -0
  325. package/dist/src/ua_variable.js +1651 -0
  326. package/dist/src/ua_variable.js.map +1 -0
  327. package/dist/src/ua_variable_impl.d.ts +351 -351
  328. package/dist/src/ua_variable_impl.js +1604 -1604
  329. package/dist/src/ua_variable_impl_ext_obj.d.ts +17 -17
  330. package/dist/src/ua_variable_impl_ext_obj.js +437 -437
  331. package/dist/src/ua_variable_type.d.ts +57 -0
  332. package/dist/src/ua_variable_type.js +530 -0
  333. package/dist/src/ua_variable_type.js.map +1 -0
  334. package/dist/src/ua_variable_type_impl.d.ts +62 -62
  335. package/dist/src/ua_variable_type_impl.js +570 -564
  336. package/dist/src/ua_variable_type_impl.js.map +1 -1
  337. package/dist/src/ua_view.d.ts +16 -0
  338. package/dist/src/ua_view.js +41 -0
  339. package/dist/src/ua_view.js.map +1 -0
  340. package/dist/src/ua_view_impl.d.ts +15 -15
  341. package/dist/src/ua_view_impl.js +36 -36
  342. package/distHelpers/add_event_generator_object.d.ts +3 -3
  343. package/distHelpers/add_event_generator_object.js +65 -65
  344. package/distHelpers/alarms_and_conditions_demo.d.ts +10 -10
  345. package/distHelpers/alarms_and_conditions_demo.js +114 -114
  346. package/distHelpers/assertHasMatchingReference.d.ts +19 -19
  347. package/distHelpers/assertHasMatchingReference.js +40 -40
  348. package/distHelpers/boiler_system.d.ts +113 -113
  349. package/distHelpers/boiler_system.js +395 -395
  350. package/distHelpers/create_minimalist_address_space_nodeset.d.ts +5 -5
  351. package/distHelpers/create_minimalist_address_space_nodeset.js +171 -171
  352. package/distHelpers/date_utils.d.ts +3 -3
  353. package/distHelpers/date_utils.js +9 -9
  354. package/distHelpers/dump_statemachine.js +127 -127
  355. package/distHelpers/get_address_space_fixture.d.ts +1 -1
  356. package/distHelpers/get_address_space_fixture.js +30 -30
  357. package/distHelpers/get_mini_address_space.d.ts +7 -7
  358. package/distHelpers/get_mini_address_space.js +36 -36
  359. package/distHelpers/index.d.ts +12 -12
  360. package/distHelpers/index.js +28 -28
  361. package/distHelpers/mock_session.d.ts +14 -14
  362. package/distHelpers/mock_session.js +25 -25
  363. package/distNodeJS/generate_address_space.d.ts +4 -4
  364. package/distNodeJS/generate_address_space.js +41 -41
  365. package/distNodeJS/index.d.ts +1 -1
  366. package/distNodeJS/index.js +17 -17
  367. package/package.json +38 -38
  368. package/src/ua_variable_type_impl.ts +11 -4
  369. package/test_helpers/test_fixtures/eurange_issue.xml +73 -0
@@ -1,62 +1,62 @@
1
- /// <reference types="node" />
2
- /**
3
- * @module node-opcua-address-space.AlarmsAndConditions
4
- */
5
- import { UAAcknowledgeableCondition_Base } from "node-opcua-nodeset-ua";
6
- import { LocalizedText, LocalizedTextLike } from "node-opcua-data-model";
7
- import { NodeId } from "node-opcua-nodeid";
8
- import { StatusCode } from "node-opcua-status-code";
9
- import { INamespace, UAEventType, UAMethod } from "node-opcua-address-space-base";
10
- import { UATwoStateVariableEx } from "../../source/ua_two_state_variable_ex";
11
- import { AddressSpacePrivate } from "../address_space_private";
12
- import { ConditionSnapshot } from "./condition_snapshot";
13
- import { UAConditionHelper, UAConditionImpl, UAConditionEx } from "./ua_condition_impl";
14
- export interface UAAcknowledgeableConditionHelper extends UAConditionHelper {
15
- on(eventName: string, eventHandler: (...args: any[]) => void): this;
16
- on(eventName: "acknowledged" | "confirmed", eventHandler: (eventId: Buffer | null, comment: LocalizedText, branch: ConditionSnapshot) => void): this;
17
- }
18
- export interface UAAcknowledgeableConditionHelper {
19
- autoConfirmBranch(branch: ConditionSnapshot, comment: LocalizedTextLike): void;
20
- acknowledgeAndAutoConfirmBranch(branch: ConditionSnapshot, comment: string | LocalizedTextLike | LocalizedText): void;
21
- }
22
- export interface UAAcknowledgeableConditionEx extends UAAcknowledgeableCondition_Base, UAAcknowledgeableConditionHelper, UAConditionEx {
23
- on(eventName: string, eventHandler: any): this;
24
- enabledState: UATwoStateVariableEx;
25
- ackedState: UATwoStateVariableEx;
26
- confirmedState?: UATwoStateVariableEx;
27
- acknowledge: UAMethod;
28
- confirm?: UAMethod;
29
- }
30
- export declare interface UAAcknowledgeableConditionImpl extends UAAcknowledgeableConditionEx, UAConditionImpl {
31
- on(eventName: string, eventHandler: any): this;
32
- }
33
- export declare class UAAcknowledgeableConditionImpl extends UAConditionImpl implements UAAcknowledgeableConditionEx {
34
- /**
35
- */
36
- static instantiate(namespace: INamespace, conditionTypeId: UAEventType | NodeId | string, options: any, data: any): UAAcknowledgeableConditionImpl;
37
- static install_method_handle_on_type(addressSpace: AddressSpacePrivate): void;
38
- _raiseAuditConditionAcknowledgeEvent(branch: ConditionSnapshot): void;
39
- _raiseAuditConditionConfirmEvent(branch: ConditionSnapshot): void;
40
- _acknowledge_branch(conditionEventId: Buffer, comment: string | LocalizedTextLike | LocalizedText, branch: ConditionSnapshot, message: string): StatusCode;
41
- /**
42
- * @method _confirm_branch
43
- * @param conditionEventId The ConditionEventId field shall contain the id of the Event that was conformed
44
- * @param comment
45
- * @param branch
46
- * @param message
47
- * @private
48
- */
49
- _confirm_branch(conditionEventId: Buffer, comment: string | LocalizedTextLike, branch: ConditionSnapshot, message: string): void;
50
- /**
51
- * @method autoConfirmBranch
52
- * @param branch
53
- * @param comment
54
- */
55
- autoConfirmBranch(branch: ConditionSnapshot, comment: LocalizedTextLike): void;
56
- /**
57
- * @method acknowledgeAndAutoConfirmBranch
58
- * @param branch {ConditionSnapshot}
59
- * @param comment {String|LocalizedText}
60
- */
61
- acknowledgeAndAutoConfirmBranch(branch: ConditionSnapshot, comment: string | LocalizedTextLike | LocalizedText): void;
62
- }
1
+ /// <reference types="node" />
2
+ /**
3
+ * @module node-opcua-address-space.AlarmsAndConditions
4
+ */
5
+ import { UAAcknowledgeableCondition_Base } from "node-opcua-nodeset-ua";
6
+ import { LocalizedText, LocalizedTextLike } from "node-opcua-data-model";
7
+ import { NodeId } from "node-opcua-nodeid";
8
+ import { StatusCode } from "node-opcua-status-code";
9
+ import { INamespace, UAEventType, UAMethod } from "node-opcua-address-space-base";
10
+ import { UATwoStateVariableEx } from "../../source/ua_two_state_variable_ex";
11
+ import { AddressSpacePrivate } from "../address_space_private";
12
+ import { ConditionSnapshot } from "./condition_snapshot";
13
+ import { UAConditionHelper, UAConditionImpl, UAConditionEx } from "./ua_condition_impl";
14
+ export interface UAAcknowledgeableConditionHelper extends UAConditionHelper {
15
+ on(eventName: string, eventHandler: (...args: any[]) => void): this;
16
+ on(eventName: "acknowledged" | "confirmed", eventHandler: (eventId: Buffer | null, comment: LocalizedText, branch: ConditionSnapshot) => void): this;
17
+ }
18
+ export interface UAAcknowledgeableConditionHelper {
19
+ autoConfirmBranch(branch: ConditionSnapshot, comment: LocalizedTextLike): void;
20
+ acknowledgeAndAutoConfirmBranch(branch: ConditionSnapshot, comment: string | LocalizedTextLike | LocalizedText): void;
21
+ }
22
+ export interface UAAcknowledgeableConditionEx extends UAAcknowledgeableCondition_Base, UAAcknowledgeableConditionHelper, UAConditionEx {
23
+ on(eventName: string, eventHandler: any): this;
24
+ enabledState: UATwoStateVariableEx;
25
+ ackedState: UATwoStateVariableEx;
26
+ confirmedState?: UATwoStateVariableEx;
27
+ acknowledge: UAMethod;
28
+ confirm?: UAMethod;
29
+ }
30
+ export declare interface UAAcknowledgeableConditionImpl extends UAAcknowledgeableConditionEx, UAConditionImpl {
31
+ on(eventName: string, eventHandler: any): this;
32
+ }
33
+ export declare class UAAcknowledgeableConditionImpl extends UAConditionImpl implements UAAcknowledgeableConditionEx {
34
+ /**
35
+ */
36
+ static instantiate(namespace: INamespace, conditionTypeId: UAEventType | NodeId | string, options: any, data: any): UAAcknowledgeableConditionImpl;
37
+ static install_method_handle_on_type(addressSpace: AddressSpacePrivate): void;
38
+ _raiseAuditConditionAcknowledgeEvent(branch: ConditionSnapshot): void;
39
+ _raiseAuditConditionConfirmEvent(branch: ConditionSnapshot): void;
40
+ _acknowledge_branch(conditionEventId: Buffer, comment: string | LocalizedTextLike | LocalizedText, branch: ConditionSnapshot, message: string): StatusCode;
41
+ /**
42
+ * @method _confirm_branch
43
+ * @param conditionEventId The ConditionEventId field shall contain the id of the Event that was conformed
44
+ * @param comment
45
+ * @param branch
46
+ * @param message
47
+ * @private
48
+ */
49
+ _confirm_branch(conditionEventId: Buffer, comment: string | LocalizedTextLike, branch: ConditionSnapshot, message: string): void;
50
+ /**
51
+ * @method autoConfirmBranch
52
+ * @param branch
53
+ * @param comment
54
+ */
55
+ autoConfirmBranch(branch: ConditionSnapshot, comment: LocalizedTextLike): void;
56
+ /**
57
+ * @method acknowledgeAndAutoConfirmBranch
58
+ * @param branch {ConditionSnapshot}
59
+ * @param comment {String|LocalizedText}
60
+ */
61
+ acknowledgeAndAutoConfirmBranch(branch: ConditionSnapshot, comment: string | LocalizedTextLike | LocalizedText): void;
62
+ }
@@ -1,245 +1,245 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UAAcknowledgeableConditionImpl = void 0;
4
- const node_opcua_assert_1 = require("node-opcua-assert");
5
- const node_opcua_data_model_1 = require("node-opcua-data-model");
6
- const node_opcua_status_code_1 = require("node-opcua-status-code");
7
- const node_opcua_variant_1 = require("node-opcua-variant");
8
- const ua_two_state_variable_1 = require("../state_machine/ua_two_state_variable");
9
- const condition_1 = require("./condition");
10
- const condition_snapshot_1 = require("./condition_snapshot");
11
- const ua_condition_impl_1 = require("./ua_condition_impl");
12
- class UAAcknowledgeableConditionImpl extends ua_condition_impl_1.UAConditionImpl {
13
- /**
14
- */
15
- static instantiate(namespace, conditionTypeId, options, data) {
16
- const conditionNode = ua_condition_impl_1.UAConditionImpl.instantiate(namespace, conditionTypeId, options, data);
17
- Object.setPrototypeOf(conditionNode, UAAcknowledgeableConditionImpl.prototype);
18
- // ----------------------- Install Acknowledge-able Condition stuff
19
- // install ackedState - Mandatory
20
- /**
21
- * @property ackedState
22
- * @type TwoStateVariable
23
- */
24
- (0, ua_two_state_variable_1._install_TwoStateVariable_machinery)(conditionNode.ackedState, {
25
- falseState: "Unacknowledged",
26
- trueState: "Acknowledged"
27
- });
28
- /**
29
- * @property acknowledge
30
- * @type UAMethod
31
- */
32
- conditionNode.acknowledge.bindMethod(_acknowledge_method);
33
- // install confirmedState - Optional
34
- /**
35
- * @property confirmedState
36
- * @type TwoStateVariable
37
- */
38
- if (conditionNode.confirmedState) {
39
- (0, ua_two_state_variable_1._install_TwoStateVariable_machinery)(conditionNode.confirmedState, {
40
- falseState: "Unconfirmed",
41
- trueState: "Confirmed"
42
- });
43
- }
44
- // install confirm Method - Optional
45
- /**
46
- * @property confirm
47
- * @type UAMethod
48
- */
49
- if (conditionNode.confirm) {
50
- conditionNode.confirm.bindMethod(_confirm_method);
51
- }
52
- (0, node_opcua_assert_1.assert)(conditionNode instanceof UAAcknowledgeableConditionImpl);
53
- return conditionNode;
54
- }
55
- static install_method_handle_on_type(addressSpace) {
56
- var _a;
57
- const acknowledgeableConditionType = addressSpace.findEventType("AcknowledgeableConditionType");
58
- (0, node_opcua_assert_1.assert)(acknowledgeableConditionType !== null);
59
- acknowledgeableConditionType.acknowledge.bindMethod(_acknowledge_method);
60
- (_a = acknowledgeableConditionType.confirm) === null || _a === void 0 ? void 0 : _a.bindMethod(_confirm_method);
61
- }
62
- _raiseAuditConditionAcknowledgeEvent(branch) {
63
- // raise the AuditConditionAcknowledgeEventType
64
- const eventData = {
65
- actionTimeStamp: { dataType: node_opcua_variant_1.DataType.DateTime, value: new Date() },
66
- // xx branchId: branch.branchId.readValue().value,
67
- // AuditEventType
68
- clientAuditEntryId: {
69
- dataType: node_opcua_variant_1.DataType.Null
70
- },
71
- clientUserId: {
72
- dataType: node_opcua_variant_1.DataType.Null
73
- },
74
- // The ConditionEventId field shall contain the id of the event for which the comment was added
75
- conditionEventId: { dataType: node_opcua_variant_1.DataType.ByteString, value: branch.getEventId() },
76
- // The Comment contains the actual comment that was added
77
- comment: { dataType: node_opcua_variant_1.DataType.LocalizedText, value: branch.getComment() },
78
- inputArguments: {
79
- dataType: node_opcua_variant_1.DataType.Null
80
- },
81
- methodId: {
82
- dataType: node_opcua_variant_1.DataType.Null
83
- },
84
- serverId: {
85
- dataType: node_opcua_variant_1.DataType.Null
86
- },
87
- status: {
88
- dataType: node_opcua_variant_1.DataType.StatusCode,
89
- value: node_opcua_status_code_1.StatusCodes.Good
90
- }
91
- };
92
- this.raiseEvent("AuditConditionAcknowledgeEventType", eventData);
93
- }
94
- _raiseAuditConditionConfirmEvent(branch) {
95
- // raise the AuditConditionConfirmEventType
96
- const eventData = {
97
- actionTimeStamp: { dataType: node_opcua_variant_1.DataType.DateTime, value: new Date() },
98
- // ConditionEventId The ConditionEventId field shall contain the id of the Event that was confirmed
99
- conditionEventId: { dataType: node_opcua_variant_1.DataType.ByteString, value: branch.getEventId() },
100
- // xx branchId: branch.branchId.readValue().value,
101
- // AuditEventType
102
- clientAuditEntryId: {
103
- dataType: node_opcua_variant_1.DataType.Null
104
- },
105
- clientUserId: {
106
- dataType: node_opcua_variant_1.DataType.Null
107
- },
108
- comment: { dataType: node_opcua_variant_1.DataType.LocalizedText, value: branch.getComment() },
109
- inputArguments: {
110
- dataType: node_opcua_variant_1.DataType.Null
111
- },
112
- methodId: {
113
- dataType: node_opcua_variant_1.DataType.Null
114
- },
115
- serverId: {
116
- dataType: node_opcua_variant_1.DataType.Null
117
- },
118
- status: {
119
- dataType: node_opcua_variant_1.DataType.StatusCode,
120
- value: node_opcua_status_code_1.StatusCodes.Good
121
- }
122
- };
123
- this.raiseEvent("AuditConditionConfirmEventType", eventData);
124
- }
125
- _acknowledge_branch(conditionEventId, comment, branch, message) {
126
- (0, node_opcua_assert_1.assert)(typeof message === "string");
127
- const statusCode = (0, condition_1._setAckedState)(branch, true, conditionEventId, comment);
128
- if (statusCode !== node_opcua_status_code_1.StatusCodes.Good) {
129
- return statusCode;
130
- }
131
- if (this.confirmedState) {
132
- // alarm has a confirmed state !
133
- // we should be waiting for confirmation now
134
- branch.setConfirmedState(false);
135
- branch.setRetain(true);
136
- }
137
- else {
138
- branch.setRetain(false);
139
- }
140
- branch.setComment(comment);
141
- this.raiseNewBranchState(branch);
142
- this._raiseAuditConditionAcknowledgeEvent(branch);
143
- /**
144
- * @event acknowledged
145
- * @param eventId {Buffer|null}
146
- * @param comment {LocalizedText}
147
- * @param branch {ConditionSnapshot}
148
- * raised when the alarm branch has been acknowledged
149
- */
150
- this.emit("acknowledged", conditionEventId, comment, branch);
151
- return node_opcua_status_code_1.StatusCodes.Good;
152
- }
153
- /**
154
- * @method _confirm_branch
155
- * @param conditionEventId The ConditionEventId field shall contain the id of the Event that was conformed
156
- * @param comment
157
- * @param branch
158
- * @param message
159
- * @private
160
- */
161
- _confirm_branch(conditionEventId, comment, branch, message) {
162
- (0, node_opcua_assert_1.assert)(typeof message === "string");
163
- (0, node_opcua_assert_1.assert)(comment instanceof node_opcua_data_model_1.LocalizedText);
164
- // xx var eventId = branch.getEventId();
165
- (0, node_opcua_assert_1.assert)(branch.getEventId().toString("hex") === conditionEventId.toString("hex"));
166
- branch.setConfirmedState(true);
167
- // once confirmed a branch do not need to be retained
168
- branch.setRetain(false);
169
- branch.setComment(comment);
170
- this._raiseAuditConditionCommentEvent(message, conditionEventId, comment);
171
- this._raiseAuditConditionConfirmEvent(branch);
172
- this.raiseNewBranchState(branch);
173
- /**
174
- * @event confirmed
175
- * @param eventId
176
- * @param comment
177
- * @param eventId
178
- * raised when the alarm branch has been confirmed
179
- */
180
- this.emit("confirmed", conditionEventId, comment, branch);
181
- }
182
- /**
183
- * @method autoConfirmBranch
184
- * @param branch
185
- * @param comment
186
- */
187
- autoConfirmBranch(branch, comment) {
188
- (0, node_opcua_assert_1.assert)(branch instanceof condition_snapshot_1.ConditionSnapshot);
189
- if (!this.confirmedState) {
190
- // no confirmedState => ignoring
191
- return;
192
- }
193
- (0, node_opcua_assert_1.assert)(!branch.getConfirmedState(), "already confirmed ?");
194
- const conditionEventId = branch.getEventId();
195
- // tslint:disable-next-line:no-console
196
- console.log("autoConfirmBranch getAckedState ", branch.getAckedState());
197
- this._confirm_branch(conditionEventId, comment, branch, "Server/Confirm");
198
- }
199
- /**
200
- * @method acknowledgeAndAutoConfirmBranch
201
- * @param branch {ConditionSnapshot}
202
- * @param comment {String|LocalizedText}
203
- */
204
- acknowledgeAndAutoConfirmBranch(branch, comment) {
205
- comment = node_opcua_data_model_1.LocalizedText.coerce(comment);
206
- const conditionEventId = branch.getEventId();
207
- branch.setRetain(false);
208
- this._acknowledge_branch(conditionEventId, comment, branch, "Server/Acknowledge");
209
- this.autoConfirmBranch(branch, comment);
210
- }
211
- }
212
- exports.UAAcknowledgeableConditionImpl = UAAcknowledgeableConditionImpl;
213
- function _acknowledge_method(inputArguments, context, callback) {
214
- ua_condition_impl_1.UAConditionImpl.with_condition_method(inputArguments, context, callback, (conditionEventId, comment, branch, conditionNode) => {
215
- const ackConditionNode = conditionNode;
216
- // precondition checking
217
- (0, node_opcua_assert_1.assert)(!conditionEventId || conditionEventId instanceof Buffer, "must have a valid eventId or null");
218
- (0, node_opcua_assert_1.assert)(comment instanceof node_opcua_data_model_1.LocalizedText, "expecting a comment as LocalizedText");
219
- (0, node_opcua_assert_1.assert)(conditionNode instanceof UAAcknowledgeableConditionImpl);
220
- ackConditionNode._acknowledge_branch(conditionEventId, comment, branch, "Method/Acknowledged");
221
- return node_opcua_status_code_1.StatusCodes.Good;
222
- });
223
- }
224
- /*
225
- *
226
- * param inputArguments {Variant[]}
227
- * param context {Object}
228
- * param callback {Function}
229
- *
230
- * @private
231
- */
232
- function _confirm_method(inputArguments, context, callback) {
233
- ua_condition_impl_1.UAConditionImpl.with_condition_method(inputArguments, context, callback, (eventId, comment, branch, conditionNode) => {
234
- (0, node_opcua_assert_1.assert)(eventId instanceof Buffer);
235
- (0, node_opcua_assert_1.assert)(branch.getEventId() instanceof Buffer);
236
- (0, node_opcua_assert_1.assert)(branch.getEventId().toString("hex") === eventId.toString("hex"));
237
- const ackConditionNode = conditionNode;
238
- if (branch.getConfirmedState()) {
239
- return node_opcua_status_code_1.StatusCodes.BadConditionBranchAlreadyConfirmed;
240
- }
241
- ackConditionNode._confirm_branch(eventId, comment, branch, "Method/Confirm");
242
- return node_opcua_status_code_1.StatusCodes.Good;
243
- });
244
- }
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UAAcknowledgeableConditionImpl = void 0;
4
+ const node_opcua_assert_1 = require("node-opcua-assert");
5
+ const node_opcua_data_model_1 = require("node-opcua-data-model");
6
+ const node_opcua_status_code_1 = require("node-opcua-status-code");
7
+ const node_opcua_variant_1 = require("node-opcua-variant");
8
+ const ua_two_state_variable_1 = require("../state_machine/ua_two_state_variable");
9
+ const condition_1 = require("./condition");
10
+ const condition_snapshot_1 = require("./condition_snapshot");
11
+ const ua_condition_impl_1 = require("./ua_condition_impl");
12
+ class UAAcknowledgeableConditionImpl extends ua_condition_impl_1.UAConditionImpl {
13
+ /**
14
+ */
15
+ static instantiate(namespace, conditionTypeId, options, data) {
16
+ const conditionNode = ua_condition_impl_1.UAConditionImpl.instantiate(namespace, conditionTypeId, options, data);
17
+ Object.setPrototypeOf(conditionNode, UAAcknowledgeableConditionImpl.prototype);
18
+ // ----------------------- Install Acknowledge-able Condition stuff
19
+ // install ackedState - Mandatory
20
+ /**
21
+ * @property ackedState
22
+ * @type TwoStateVariable
23
+ */
24
+ (0, ua_two_state_variable_1._install_TwoStateVariable_machinery)(conditionNode.ackedState, {
25
+ falseState: "Unacknowledged",
26
+ trueState: "Acknowledged"
27
+ });
28
+ /**
29
+ * @property acknowledge
30
+ * @type UAMethod
31
+ */
32
+ conditionNode.acknowledge.bindMethod(_acknowledge_method);
33
+ // install confirmedState - Optional
34
+ /**
35
+ * @property confirmedState
36
+ * @type TwoStateVariable
37
+ */
38
+ if (conditionNode.confirmedState) {
39
+ (0, ua_two_state_variable_1._install_TwoStateVariable_machinery)(conditionNode.confirmedState, {
40
+ falseState: "Unconfirmed",
41
+ trueState: "Confirmed"
42
+ });
43
+ }
44
+ // install confirm Method - Optional
45
+ /**
46
+ * @property confirm
47
+ * @type UAMethod
48
+ */
49
+ if (conditionNode.confirm) {
50
+ conditionNode.confirm.bindMethod(_confirm_method);
51
+ }
52
+ (0, node_opcua_assert_1.assert)(conditionNode instanceof UAAcknowledgeableConditionImpl);
53
+ return conditionNode;
54
+ }
55
+ static install_method_handle_on_type(addressSpace) {
56
+ var _a;
57
+ const acknowledgeableConditionType = addressSpace.findEventType("AcknowledgeableConditionType");
58
+ (0, node_opcua_assert_1.assert)(acknowledgeableConditionType !== null);
59
+ acknowledgeableConditionType.acknowledge.bindMethod(_acknowledge_method);
60
+ (_a = acknowledgeableConditionType.confirm) === null || _a === void 0 ? void 0 : _a.bindMethod(_confirm_method);
61
+ }
62
+ _raiseAuditConditionAcknowledgeEvent(branch) {
63
+ // raise the AuditConditionAcknowledgeEventType
64
+ const eventData = {
65
+ actionTimeStamp: { dataType: node_opcua_variant_1.DataType.DateTime, value: new Date() },
66
+ // xx branchId: branch.branchId.readValue().value,
67
+ // AuditEventType
68
+ clientAuditEntryId: {
69
+ dataType: node_opcua_variant_1.DataType.Null
70
+ },
71
+ clientUserId: {
72
+ dataType: node_opcua_variant_1.DataType.Null
73
+ },
74
+ // The ConditionEventId field shall contain the id of the event for which the comment was added
75
+ conditionEventId: { dataType: node_opcua_variant_1.DataType.ByteString, value: branch.getEventId() },
76
+ // The Comment contains the actual comment that was added
77
+ comment: { dataType: node_opcua_variant_1.DataType.LocalizedText, value: branch.getComment() },
78
+ inputArguments: {
79
+ dataType: node_opcua_variant_1.DataType.Null
80
+ },
81
+ methodId: {
82
+ dataType: node_opcua_variant_1.DataType.Null
83
+ },
84
+ serverId: {
85
+ dataType: node_opcua_variant_1.DataType.Null
86
+ },
87
+ status: {
88
+ dataType: node_opcua_variant_1.DataType.StatusCode,
89
+ value: node_opcua_status_code_1.StatusCodes.Good
90
+ }
91
+ };
92
+ this.raiseEvent("AuditConditionAcknowledgeEventType", eventData);
93
+ }
94
+ _raiseAuditConditionConfirmEvent(branch) {
95
+ // raise the AuditConditionConfirmEventType
96
+ const eventData = {
97
+ actionTimeStamp: { dataType: node_opcua_variant_1.DataType.DateTime, value: new Date() },
98
+ // ConditionEventId The ConditionEventId field shall contain the id of the Event that was confirmed
99
+ conditionEventId: { dataType: node_opcua_variant_1.DataType.ByteString, value: branch.getEventId() },
100
+ // xx branchId: branch.branchId.readValue().value,
101
+ // AuditEventType
102
+ clientAuditEntryId: {
103
+ dataType: node_opcua_variant_1.DataType.Null
104
+ },
105
+ clientUserId: {
106
+ dataType: node_opcua_variant_1.DataType.Null
107
+ },
108
+ comment: { dataType: node_opcua_variant_1.DataType.LocalizedText, value: branch.getComment() },
109
+ inputArguments: {
110
+ dataType: node_opcua_variant_1.DataType.Null
111
+ },
112
+ methodId: {
113
+ dataType: node_opcua_variant_1.DataType.Null
114
+ },
115
+ serverId: {
116
+ dataType: node_opcua_variant_1.DataType.Null
117
+ },
118
+ status: {
119
+ dataType: node_opcua_variant_1.DataType.StatusCode,
120
+ value: node_opcua_status_code_1.StatusCodes.Good
121
+ }
122
+ };
123
+ this.raiseEvent("AuditConditionConfirmEventType", eventData);
124
+ }
125
+ _acknowledge_branch(conditionEventId, comment, branch, message) {
126
+ (0, node_opcua_assert_1.assert)(typeof message === "string");
127
+ const statusCode = (0, condition_1._setAckedState)(branch, true, conditionEventId, comment);
128
+ if (statusCode !== node_opcua_status_code_1.StatusCodes.Good) {
129
+ return statusCode;
130
+ }
131
+ if (this.confirmedState) {
132
+ // alarm has a confirmed state !
133
+ // we should be waiting for confirmation now
134
+ branch.setConfirmedState(false);
135
+ branch.setRetain(true);
136
+ }
137
+ else {
138
+ branch.setRetain(false);
139
+ }
140
+ branch.setComment(comment);
141
+ this.raiseNewBranchState(branch);
142
+ this._raiseAuditConditionAcknowledgeEvent(branch);
143
+ /**
144
+ * @event acknowledged
145
+ * @param eventId {Buffer|null}
146
+ * @param comment {LocalizedText}
147
+ * @param branch {ConditionSnapshot}
148
+ * raised when the alarm branch has been acknowledged
149
+ */
150
+ this.emit("acknowledged", conditionEventId, comment, branch);
151
+ return node_opcua_status_code_1.StatusCodes.Good;
152
+ }
153
+ /**
154
+ * @method _confirm_branch
155
+ * @param conditionEventId The ConditionEventId field shall contain the id of the Event that was conformed
156
+ * @param comment
157
+ * @param branch
158
+ * @param message
159
+ * @private
160
+ */
161
+ _confirm_branch(conditionEventId, comment, branch, message) {
162
+ (0, node_opcua_assert_1.assert)(typeof message === "string");
163
+ (0, node_opcua_assert_1.assert)(comment instanceof node_opcua_data_model_1.LocalizedText);
164
+ // xx var eventId = branch.getEventId();
165
+ (0, node_opcua_assert_1.assert)(branch.getEventId().toString("hex") === conditionEventId.toString("hex"));
166
+ branch.setConfirmedState(true);
167
+ // once confirmed a branch do not need to be retained
168
+ branch.setRetain(false);
169
+ branch.setComment(comment);
170
+ this._raiseAuditConditionCommentEvent(message, conditionEventId, comment);
171
+ this._raiseAuditConditionConfirmEvent(branch);
172
+ this.raiseNewBranchState(branch);
173
+ /**
174
+ * @event confirmed
175
+ * @param eventId
176
+ * @param comment
177
+ * @param eventId
178
+ * raised when the alarm branch has been confirmed
179
+ */
180
+ this.emit("confirmed", conditionEventId, comment, branch);
181
+ }
182
+ /**
183
+ * @method autoConfirmBranch
184
+ * @param branch
185
+ * @param comment
186
+ */
187
+ autoConfirmBranch(branch, comment) {
188
+ (0, node_opcua_assert_1.assert)(branch instanceof condition_snapshot_1.ConditionSnapshot);
189
+ if (!this.confirmedState) {
190
+ // no confirmedState => ignoring
191
+ return;
192
+ }
193
+ (0, node_opcua_assert_1.assert)(!branch.getConfirmedState(), "already confirmed ?");
194
+ const conditionEventId = branch.getEventId();
195
+ // tslint:disable-next-line:no-console
196
+ console.log("autoConfirmBranch getAckedState ", branch.getAckedState());
197
+ this._confirm_branch(conditionEventId, comment, branch, "Server/Confirm");
198
+ }
199
+ /**
200
+ * @method acknowledgeAndAutoConfirmBranch
201
+ * @param branch {ConditionSnapshot}
202
+ * @param comment {String|LocalizedText}
203
+ */
204
+ acknowledgeAndAutoConfirmBranch(branch, comment) {
205
+ comment = node_opcua_data_model_1.LocalizedText.coerce(comment);
206
+ const conditionEventId = branch.getEventId();
207
+ branch.setRetain(false);
208
+ this._acknowledge_branch(conditionEventId, comment, branch, "Server/Acknowledge");
209
+ this.autoConfirmBranch(branch, comment);
210
+ }
211
+ }
212
+ exports.UAAcknowledgeableConditionImpl = UAAcknowledgeableConditionImpl;
213
+ function _acknowledge_method(inputArguments, context, callback) {
214
+ ua_condition_impl_1.UAConditionImpl.with_condition_method(inputArguments, context, callback, (conditionEventId, comment, branch, conditionNode) => {
215
+ const ackConditionNode = conditionNode;
216
+ // precondition checking
217
+ (0, node_opcua_assert_1.assert)(!conditionEventId || conditionEventId instanceof Buffer, "must have a valid eventId or null");
218
+ (0, node_opcua_assert_1.assert)(comment instanceof node_opcua_data_model_1.LocalizedText, "expecting a comment as LocalizedText");
219
+ (0, node_opcua_assert_1.assert)(conditionNode instanceof UAAcknowledgeableConditionImpl);
220
+ ackConditionNode._acknowledge_branch(conditionEventId, comment, branch, "Method/Acknowledged");
221
+ return node_opcua_status_code_1.StatusCodes.Good;
222
+ });
223
+ }
224
+ /*
225
+ *
226
+ * param inputArguments {Variant[]}
227
+ * param context {Object}
228
+ * param callback {Function}
229
+ *
230
+ * @private
231
+ */
232
+ function _confirm_method(inputArguments, context, callback) {
233
+ ua_condition_impl_1.UAConditionImpl.with_condition_method(inputArguments, context, callback, (eventId, comment, branch, conditionNode) => {
234
+ (0, node_opcua_assert_1.assert)(eventId instanceof Buffer);
235
+ (0, node_opcua_assert_1.assert)(branch.getEventId() instanceof Buffer);
236
+ (0, node_opcua_assert_1.assert)(branch.getEventId().toString("hex") === eventId.toString("hex"));
237
+ const ackConditionNode = conditionNode;
238
+ if (branch.getConfirmedState()) {
239
+ return node_opcua_status_code_1.StatusCodes.BadConditionBranchAlreadyConfirmed;
240
+ }
241
+ ackConditionNode._confirm_branch(eventId, comment, branch, "Method/Confirm");
242
+ return node_opcua_status_code_1.StatusCodes.Good;
243
+ });
244
+ }
245
245
  //# sourceMappingURL=ua_acknowledgeable_condition_impl.js.map