node-opcua-address-space 2.98.0 → 2.98.2
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.
- package/dist/source/address_space_ts.d.ts +118 -0
- package/dist/source/address_space_ts.js +18 -0
- package/dist/source/address_space_ts.js.map +1 -0
- package/dist/source/continuation_points/continuation_point_manager.d.ts +91 -0
- package/dist/source/continuation_points/continuation_point_manager.js +201 -0
- package/dist/source/continuation_points/continuation_point_manager.js.map +1 -0
- package/dist/source/helpers/adjust_browse_direction.d.ts +5 -0
- package/dist/source/helpers/adjust_browse_direction.js +12 -0
- package/dist/source/helpers/adjust_browse_direction.js.map +1 -0
- package/dist/source/helpers/argument_list.d.ts +33 -0
- package/dist/source/helpers/argument_list.js +255 -0
- package/dist/source/helpers/argument_list.js.map +1 -0
- package/dist/source/helpers/call_helpers.d.ts +6 -0
- package/dist/source/helpers/call_helpers.js +72 -0
- package/dist/source/helpers/call_helpers.js.map +1 -0
- package/dist/source/helpers/coerce_enum_value.d.ts +6 -0
- package/dist/source/helpers/coerce_enum_value.js +34 -0
- package/dist/source/helpers/coerce_enum_value.js.map +1 -0
- package/dist/source/helpers/dump_tools.d.ts +14 -0
- package/dist/source/helpers/dump_tools.js +79 -0
- package/dist/source/helpers/dump_tools.js.map +1 -0
- package/dist/source/helpers/ensure_secure_access.d.ts +9 -0
- package/dist/source/helpers/ensure_secure_access.js +77 -0
- package/dist/source/helpers/ensure_secure_access.js.map +1 -0
- package/dist/source/helpers/make_optionals_map.d.ts +21 -0
- package/dist/source/helpers/make_optionals_map.js +30 -0
- package/dist/source/helpers/make_optionals_map.js.map +1 -0
- package/dist/source/helpers/multiform_func.d.ts +11 -0
- package/dist/source/helpers/multiform_func.js +76 -0
- package/dist/source/helpers/multiform_func.js.map +1 -0
- package/dist/source/helpers/resolve_opaque_on_address_space.d.ts +3 -0
- package/dist/source/helpers/resolve_opaque_on_address_space.js +37 -0
- package/dist/source/helpers/resolve_opaque_on_address_space.js.map +1 -0
- package/dist/source/index.d.ts +61 -0
- package/dist/source/index.js +90 -0
- package/dist/source/index.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/condition_info_i.d.ts +19 -0
- package/dist/source/interfaces/alarms_and_conditions/condition_info_i.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/condition_info_i.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.d.ts +193 -0
- package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.d.ts +12 -0
- package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/install_setpoint_options.d.ts +10 -0
- package/dist/source/interfaces/alarms_and_conditions/install_setpoint_options.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/install_setpoint_options.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.d.ts +7 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_condition_options.d.ts +7 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_condition_options.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_condition_options.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.d.ts +4 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.d.ts +4 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.d.ts +9 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.d.ts +4 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.d.ts +4 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.d.ts +20 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.d.ts +23 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.d.ts +32 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.d.ts +19 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.d.ts +45 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.d.ts +7 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js +26 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.d.ts +5 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.d.ts +20 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.d.ts +26 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.d.ts +8 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.js.map +1 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.d.ts +10 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.js +3 -0
- package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.js.map +1 -0
- package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.d.ts +21 -0
- package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.js +3 -0
- package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.js.map +1 -0
- package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.d.ts +24 -0
- package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.js +3 -0
- package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.js.map +1 -0
- package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.d.ts +12 -0
- package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.js +3 -0
- package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.js.map +1 -0
- package/dist/source/interfaces/data_access/ua_y_array_item_ex.d.ts +8 -0
- package/dist/source/interfaces/data_access/ua_y_array_item_ex.js +3 -0
- package/dist/source/interfaces/data_access/ua_y_array_item_ex.js.map +1 -0
- package/dist/source/interfaces/extension_object_constructor.d.ts +10 -0
- package/dist/source/interfaces/extension_object_constructor.js +3 -0
- package/dist/source/interfaces/extension_object_constructor.js.map +1 -0
- package/dist/source/interfaces/nodeset_loader_options.d.ts +4 -0
- package/dist/source/interfaces/nodeset_loader_options.js +3 -0
- package/dist/source/interfaces/nodeset_loader_options.js.map +1 -0
- package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.d.ts +12 -0
- package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js +3 -0
- package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js.map +1 -0
- package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.d.ts +49 -0
- package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.js +3 -0
- package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.js.map +1 -0
- package/dist/source/interfaces/state_machine/ua_program_state_machine_type.d.ts +11 -0
- package/dist/source/interfaces/state_machine/ua_program_state_machine_type.js +3 -0
- package/dist/source/interfaces/state_machine/ua_program_state_machine_type.js.map +1 -0
- package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.d.ts +30 -0
- package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.js +3 -0
- package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.js.map +1 -0
- package/dist/source/interfaces/state_machine/ua_state_machine_type.d.ts +234 -0
- package/dist/source/interfaces/state_machine/ua_state_machine_type.js +3 -0
- package/dist/source/interfaces/state_machine/ua_state_machine_type.js.map +1 -0
- package/dist/source/interfaces/state_machine/ua_transition_ex.d.ts +6 -0
- package/dist/source/interfaces/state_machine/ua_transition_ex.js +3 -0
- package/dist/source/interfaces/state_machine/ua_transition_ex.js.map +1 -0
- package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.d.ts +8 -0
- package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.js +3 -0
- package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.js.map +1 -0
- package/dist/source/loader/decode_xml_extension_object.d.ts +6 -0
- package/dist/source/loader/decode_xml_extension_object.js +72 -0
- package/dist/source/loader/decode_xml_extension_object.js.map +1 -0
- package/dist/source/loader/ensure_datatype_extracted.d.ts +5 -0
- package/dist/source/loader/ensure_datatype_extracted.js +71 -0
- package/dist/source/loader/ensure_datatype_extracted.js.map +1 -0
- package/dist/source/loader/generateAddressSpaceRaw.d.ts +11 -0
- package/dist/source/loader/generateAddressSpaceRaw.js +46 -0
- package/dist/source/loader/generateAddressSpaceRaw.js.map +1 -0
- package/dist/source/loader/load_nodeset2.d.ts +17 -0
- package/dist/source/loader/load_nodeset2.js +1484 -0
- package/dist/source/loader/load_nodeset2.js.map +1 -0
- package/dist/source/loader/make_semver_compatible.d.ts +6 -0
- package/dist/source/loader/make_semver_compatible.js +26 -0
- package/dist/source/loader/make_semver_compatible.js.map +1 -0
- package/dist/source/loader/make_xml_extension_object_parser.d.ts +28 -0
- package/dist/source/loader/make_xml_extension_object_parser.js +327 -0
- package/dist/source/loader/make_xml_extension_object_parser.js.map +1 -0
- package/dist/source/loader/namespace_post_step.d.ts +10 -0
- package/dist/source/loader/namespace_post_step.js +62 -0
- package/dist/source/loader/namespace_post_step.js.map +1 -0
- package/dist/source/loader/register_node_promoter.d.ts +2 -0
- package/dist/source/loader/register_node_promoter.js +10 -0
- package/dist/source/loader/register_node_promoter.js.map +1 -0
- package/dist/source/namespace.d.ts +6 -0
- package/dist/source/namespace.js +3 -0
- package/dist/source/namespace.js.map +1 -0
- package/dist/source/namespace_alarm_and_condition.d.ts +32 -0
- package/dist/source/namespace_alarm_and_condition.js +3 -0
- package/dist/source/namespace_alarm_and_condition.js.map +1 -0
- package/dist/source/namespace_data_access.d.ts +42 -0
- package/dist/source/namespace_data_access.js +3 -0
- package/dist/source/namespace_data_access.js.map +1 -0
- package/dist/source/namespace_machine_state.d.ts +8 -0
- package/dist/source/namespace_machine_state.js +3 -0
- package/dist/source/namespace_machine_state.js.map +1 -0
- package/dist/source/pseudo_session.d.ts +72 -0
- package/dist/source/pseudo_session.js +255 -0
- package/dist/source/pseudo_session.js.map +1 -0
- package/dist/source/session_context.d.ts +111 -0
- package/dist/source/session_context.js +265 -0
- package/dist/source/session_context.js.map +1 -0
- package/dist/source/set_namespace_meta_data.d.ts +2 -0
- package/dist/source/set_namespace_meta_data.js +60 -0
- package/dist/source/set_namespace_meta_data.js.map +1 -0
- package/dist/source/ua_root_folder.d.ts +9 -0
- package/dist/source/ua_root_folder.js +3 -0
- package/dist/source/ua_root_folder.js.map +1 -0
- package/dist/source/ua_two_state_variable_ex.d.ts +23 -0
- package/dist/source/ua_two_state_variable_ex.js +3 -0
- package/dist/source/ua_two_state_variable_ex.js.map +1 -0
- package/dist/source/xml_writer.d.ts +18 -0
- package/dist/source/xml_writer.js +3 -0
- package/dist/source/xml_writer.js.map +1 -0
- package/dist/src/address_space.d.ts +387 -0
- package/dist/src/address_space.js +1386 -0
- package/dist/src/address_space.js.map +1 -0
- package/dist/src/address_space_change_event_tools.d.ts +6 -0
- package/dist/src/address_space_change_event_tools.js +153 -0
- package/dist/src/address_space_change_event_tools.js.map +1 -0
- package/dist/src/address_space_private.d.ts +43 -0
- package/dist/src/address_space_private.js +3 -0
- package/dist/src/address_space_private.js.map +1 -0
- package/dist/src/alarms_and_conditions/condition.d.ts +5 -0
- package/dist/src/alarms_and_conditions/condition.js +79 -0
- package/dist/src/alarms_and_conditions/condition.js.map +1 -0
- package/dist/src/alarms_and_conditions/condition_info_impl.d.ts +26 -0
- package/dist/src/alarms_and_conditions/condition_info_impl.js +55 -0
- package/dist/src/alarms_and_conditions/condition_info_impl.js.map +1 -0
- package/dist/src/alarms_and_conditions/condition_snapshot_impl.d.ts +222 -0
- package/dist/src/alarms_and_conditions/condition_snapshot_impl.js +658 -0
- package/dist/src/alarms_and_conditions/condition_snapshot_impl.js.map +1 -0
- package/dist/src/alarms_and_conditions/deviation_alarm_helper.d.ts +9 -0
- package/dist/src/alarms_and_conditions/deviation_alarm_helper.js +61 -0
- package/dist/src/alarms_and_conditions/deviation_alarm_helper.js.map +1 -0
- package/dist/src/alarms_and_conditions/index.d.ts +16 -0
- package/dist/src/alarms_and_conditions/index.js +33 -0
- package/dist/src/alarms_and_conditions/index.js.map +1 -0
- package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.d.ts +44 -0
- package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js +245 -0
- package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js.map +1 -0
- package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.d.ts +93 -0
- package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js +419 -0
- package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js.map +1 -0
- package/dist/src/alarms_and_conditions/ua_base_event_impl.d.ts +26 -0
- package/dist/src/alarms_and_conditions/ua_base_event_impl.js +39 -0
- package/dist/src/alarms_and_conditions/ua_base_event_impl.js.map +1 -0
- package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.d.ts +44 -0
- package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js +184 -0
- package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js.map +1 -0
- package/dist/src/alarms_and_conditions/ua_condition_impl.d.ts +155 -0
- package/dist/src/alarms_and_conditions/ua_condition_impl.js +1029 -0
- package/dist/src/alarms_and_conditions/ua_condition_impl.js.map +1 -0
- package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.d.ts +14 -0
- package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js +35 -0
- package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js.map +1 -0
- package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.d.ts +24 -0
- package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js +57 -0
- package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js.map +1 -0
- package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.d.ts +11 -0
- package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js +12 -0
- package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js.map +1 -0
- package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.d.ts +23 -0
- package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js +87 -0
- package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js.map +1 -0
- package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.d.ts +11 -0
- package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js +8 -0
- package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js.map +1 -0
- package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.d.ts +79 -0
- package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js +251 -0
- package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js.map +1 -0
- package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.d.ts +24 -0
- package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js +51 -0
- package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js.map +1 -0
- package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.d.ts +19 -0
- package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js +163 -0
- package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js.map +1 -0
- package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.d.ts +46 -0
- package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js +166 -0
- package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js.map +1 -0
- package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.d.ts +18 -0
- package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js +18 -0
- package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js.map +1 -0
- package/dist/src/apply_condition_refresh.d.ts +6 -0
- package/dist/src/apply_condition_refresh.js +28 -0
- package/dist/src/apply_condition_refresh.js.map +1 -0
- package/dist/src/base_node_impl.d.ts +284 -0
- package/dist/src/base_node_impl.js +1455 -0
- package/dist/src/base_node_impl.js.map +1 -0
- package/dist/src/base_node_private.d.ts +81 -0
- package/dist/src/base_node_private.js +833 -0
- package/dist/src/base_node_private.js.map +1 -0
- package/dist/src/check_value_rank_compatibility.d.ts +15 -0
- package/dist/src/check_value_rank_compatibility.js +82 -0
- package/dist/src/check_value_rank_compatibility.js.map +1 -0
- package/dist/src/data_access/add_dataItem_stuff.d.ts +11 -0
- package/dist/src/data_access/add_dataItem_stuff.js +62 -0
- package/dist/src/data_access/add_dataItem_stuff.js.map +1 -0
- package/dist/src/data_access/check_variant_compatibility_ua_analog_item.d.ts +1 -0
- package/dist/src/data_access/check_variant_compatibility_ua_analog_item.js +35 -0
- package/dist/src/data_access/check_variant_compatibility_ua_analog_item.js.map +1 -0
- package/dist/src/data_access/ua_multistate_discrete_impl.d.ts +32 -0
- package/dist/src/data_access/ua_multistate_discrete_impl.js +131 -0
- package/dist/src/data_access/ua_multistate_discrete_impl.js.map +1 -0
- package/dist/src/data_access/ua_multistate_value_discrete_impl.d.ts +52 -0
- package/dist/src/data_access/ua_multistate_value_discrete_impl.js +254 -0
- package/dist/src/data_access/ua_multistate_value_discrete_impl.js.map +1 -0
- package/dist/src/data_access/ua_two_state_discrete_impl.d.ts +25 -0
- package/dist/src/data_access/ua_two_state_discrete_impl.js +156 -0
- package/dist/src/data_access/ua_two_state_discrete_impl.js.map +1 -0
- package/dist/src/event_data.d.ts +34 -0
- package/dist/src/event_data.js +65 -0
- package/dist/src/event_data.js.map +1 -0
- package/dist/src/extension_object_array_node.d.ts +23 -0
- package/dist/src/extension_object_array_node.js +249 -0
- package/dist/src/extension_object_array_node.js.map +1 -0
- package/dist/src/historical_access/address_space_historical_data_node.d.ts +26 -0
- package/dist/src/historical_access/address_space_historical_data_node.js +653 -0
- package/dist/src/historical_access/address_space_historical_data_node.js.map +1 -0
- package/dist/src/idx_iterator.d.ts +8 -0
- package/dist/src/idx_iterator.js +51 -0
- package/dist/src/idx_iterator.js.map +1 -0
- package/dist/src/index_current.d.ts +46 -0
- package/dist/src/index_current.js +78 -0
- package/dist/src/index_current.js.map +1 -0
- package/dist/src/namespace_impl.d.ts +456 -0
- package/dist/src/namespace_impl.js +1763 -0
- package/dist/src/namespace_impl.js.map +1 -0
- package/dist/src/namespace_private.d.ts +23 -0
- package/dist/src/namespace_private.js +33 -0
- package/dist/src/namespace_private.js.map +1 -0
- package/dist/src/nodeid_manager.d.ts +37 -0
- package/dist/src/nodeid_manager.js +184 -0
- package/dist/src/nodeid_manager.js.map +1 -0
- package/dist/src/nodeset_tools/adjust_namespace_array.d.ts +2 -0
- package/dist/src/nodeset_tools/adjust_namespace_array.js +14 -0
- package/dist/src/nodeset_tools/adjust_namespace_array.js.map +1 -0
- package/dist/src/nodeset_tools/construct_namespace_dependency.d.ts +18 -0
- package/dist/src/nodeset_tools/construct_namespace_dependency.js +141 -0
- package/dist/src/nodeset_tools/construct_namespace_dependency.js.map +1 -0
- package/dist/src/nodeset_tools/dump_to_bsd.d.ts +2 -0
- package/dist/src/nodeset_tools/dump_to_bsd.js +165 -0
- package/dist/src/nodeset_tools/dump_to_bsd.js.map +1 -0
- package/dist/src/nodeset_tools/nodeset_to_xml.d.ts +10 -0
- package/dist/src/nodeset_tools/nodeset_to_xml.js +1288 -0
- package/dist/src/nodeset_tools/nodeset_to_xml.js.map +1 -0
- package/dist/src/private_namespace.d.ts +5 -0
- package/dist/src/private_namespace.js +20 -0
- package/dist/src/private_namespace.js.map +1 -0
- package/dist/src/reference_impl.d.ts +43 -0
- package/dist/src/reference_impl.js +140 -0
- package/dist/src/reference_impl.js.map +1 -0
- package/dist/src/role_permissions.d.ts +2 -0
- package/dist/src/role_permissions.js +11 -0
- package/dist/src/role_permissions.js.map +1 -0
- package/dist/src/state_machine/finite_state_machine.d.ts +81 -0
- package/dist/src/state_machine/finite_state_machine.js +389 -0
- package/dist/src/state_machine/finite_state_machine.js.map +1 -0
- package/dist/src/state_machine/ua_shelving_state_machine_ex.d.ts +38 -0
- package/dist/src/state_machine/ua_shelving_state_machine_ex.js +251 -0
- package/dist/src/state_machine/ua_shelving_state_machine_ex.js.map +1 -0
- package/dist/src/state_machine/ua_two_state_variable.d.ts +61 -0
- package/dist/src/state_machine/ua_two_state_variable.js +332 -0
- package/dist/src/state_machine/ua_two_state_variable.js.map +1 -0
- package/dist/src/tool_isSubtypeOf.d.ts +18 -0
- package/dist/src/tool_isSubtypeOf.js +125 -0
- package/dist/src/tool_isSubtypeOf.js.map +1 -0
- package/dist/src/ua_condition_type.d.ts +8 -0
- package/dist/src/ua_condition_type.js +3 -0
- package/dist/src/ua_condition_type.js.map +1 -0
- package/dist/src/ua_data_type_impl.d.ts +89 -0
- package/dist/src/ua_data_type_impl.js +369 -0
- package/dist/src/ua_data_type_impl.js.map +1 -0
- package/dist/src/ua_method_impl.d.ts +42 -0
- package/dist/src/ua_method_impl.js +218 -0
- package/dist/src/ua_method_impl.js.map +1 -0
- package/dist/src/ua_object_impl.d.ts +35 -0
- package/dist/src/ua_object_impl.js +169 -0
- package/dist/src/ua_object_impl.js.map +1 -0
- package/dist/src/ua_object_type_impl.d.ts +50 -0
- package/dist/src/ua_object_type_impl.js +127 -0
- package/dist/src/ua_object_type_impl.js.map +1 -0
- package/dist/src/ua_reference_type_impl.d.ts +45 -0
- package/dist/src/ua_reference_type_impl.js +142 -0
- package/dist/src/ua_reference_type_impl.js.map +1 -0
- package/dist/src/ua_variable_impl.d.ts +380 -0
- package/dist/src/ua_variable_impl.js +1739 -0
- package/dist/src/ua_variable_impl.js.map +1 -0
- package/dist/src/ua_variable_impl_ext_obj.d.ts +23 -0
- package/dist/src/ua_variable_impl_ext_obj.js +671 -0
- package/dist/src/ua_variable_impl_ext_obj.js.map +1 -0
- package/dist/src/ua_variable_type_impl.d.ts +74 -0
- package/dist/src/ua_variable_type_impl.js +598 -0
- package/dist/src/ua_variable_type_impl.js.map +1 -0
- package/dist/src/ua_view_impl.d.ts +19 -0
- package/dist/src/ua_view_impl.js +44 -0
- package/dist/src/ua_view_impl.js.map +1 -0
- package/dist/tsconfig_common.tsbuildinfo +1 -0
- package/distHelpers/add_event_generator_object.d.ts +3 -0
- package/{test_helpers/add_event_generator_object.ts → distHelpers/add_event_generator_object.js} +16 -22
- package/distHelpers/add_event_generator_object.js.map +1 -0
- package/distHelpers/alarms_and_conditions_demo.d.ts +9 -0
- package/{test_helpers/alarms_and_conditions_demo.ts → distHelpers/alarms_and_conditions_demo.js} +21 -56
- package/distHelpers/alarms_and_conditions_demo.js.map +1 -0
- package/distHelpers/assertHasMatchingReference.d.ts +19 -0
- package/{test_helpers/assertHasMatchingReference.ts → distHelpers/assertHasMatchingReference.js} +12 -14
- package/distHelpers/assertHasMatchingReference.js.map +1 -0
- package/distHelpers/boiler_system.d.ts +113 -0
- package/{test_helpers/boiler_system.ts → distHelpers/boiler_system.js} +81 -295
- package/distHelpers/boiler_system.js.map +1 -0
- package/distHelpers/create_minimalist_address_space_nodeset.d.ts +5 -0
- package/{test_helpers/create_minimalist_address_space_nodeset.ts → distHelpers/create_minimalist_address_space_nodeset.js} +51 -87
- package/distHelpers/create_minimalist_address_space_nodeset.js.map +1 -0
- package/distHelpers/date_utils.d.ts +3 -0
- package/distHelpers/date_utils.js +10 -0
- package/distHelpers/date_utils.js.map +1 -0
- package/distHelpers/dump_statemachine.d.ts +0 -0
- package/distHelpers/dump_statemachine.js +128 -0
- package/distHelpers/dump_statemachine.js.map +1 -0
- package/distHelpers/get_address_space_fixture.d.ts +1 -0
- package/{test_helpers/get_address_space_fixture.ts → distHelpers/get_address_space_fixture.js} +8 -7
- package/distHelpers/get_address_space_fixture.js.map +1 -0
- package/distHelpers/get_mini_address_space.d.ts +7 -0
- package/distHelpers/get_mini_address_space.js +37 -0
- package/distHelpers/get_mini_address_space.js.map +1 -0
- package/distHelpers/index.js +29 -0
- package/distHelpers/index.js.map +1 -0
- package/distHelpers/mock_session.d.ts +10 -0
- package/distHelpers/mock_session.js +26 -0
- package/distHelpers/mock_session.js.map +1 -0
- package/distNodeJS/generate_address_space.d.ts +6 -0
- package/distNodeJS/generate_address_space.js +53 -0
- package/distNodeJS/generate_address_space.js.map +1 -0
- package/distNodeJS/index.js +18 -0
- package/distNodeJS/index.js.map +1 -0
- package/package.json +49 -38
- package/source/helpers/dump_tools.ts +92 -0
- package/src/nodeset_tools/dump_to_bsd.ts +198 -0
- package/.mocharc.yml +0 -12
- package/generate.js +0 -1
- package/source_nodejs/generate_address_space.ts +0 -60
- package/test_helpers/date_utils.ts +0 -5
- package/test_helpers/get_mini_address_space.ts +0 -42
- package/test_helpers/mock_session.ts +0 -34
- package/test_helpers/test_fixtures/dataType_in_separateNamespace.xml +0 -150
- package/test_helpers/test_fixtures/dataType_in_separateNamespace_basic.xml +0 -57
- package/test_helpers/test_fixtures/dataType_in_separateNamespace_mix.xml +0 -136
- package/test_helpers/test_fixtures/dataType_issue.xml +0 -80
- package/test_helpers/test_fixtures/dataType_withEnumeration.xml +0 -82
- package/test_helpers/test_fixtures/dataType_with_isOptionSet.xml +0 -194
- package/test_helpers/test_fixtures/dataType_with_qualifiedname.xml +0 -71
- package/test_helpers/test_fixtures/dataType_with_recursive_structure.xml +0 -155
- package/test_helpers/test_fixtures/dataType_with_structures.xml +0 -605
- package/test_helpers/test_fixtures/dataType_with_union.xml +0 -90
- package/test_helpers/test_fixtures/datatype_as_per_1.04.xml +0 -118
- package/test_helpers/test_fixtures/datatype_with_allow_subtype.xml +0 -104
- package/test_helpers/test_fixtures/eurange_issue.xml +0 -74
- package/test_helpers/test_fixtures/example_issue1096.xml +0 -267
- package/test_helpers/test_fixtures/fixture_empty_nodeset2.xml +0 -106
- package/test_helpers/test_fixtures/fixture_simple_statemachine_nodeset2.xml +0 -1305
- package/test_helpers/test_fixtures/fixuture_nodeset_objects_with_some_methods.xml +0 -370
- package/test_helpers/test_fixtures/issue_1132_variable_with_nodeid_value.xml +0 -68
- package/test_helpers/test_fixtures/issue_846.xml +0 -3172
- package/test_helpers/test_fixtures/issue_899_variable_with_nodeid_value.xml +0 -33
- package/test_helpers/test_fixtures/mini.Node.Set2.xml +0 -4736
- package/test_helpers/test_fixtures/mini.nodeset.withVariousVariables.xml +0 -196
- package/test_helpers/test_fixtures/minimalist_nodeset_with_models.xml +0 -8
- package/test_helpers/test_fixtures/minimalist_nodeset_with_models_more_complex.xml +0 -20
- package/test_helpers/test_fixtures/nodeset_no_aliases.xml +0 -30
- package/test_helpers/test_fixtures/nodeset_no_aliases_with_aliases.xml +0 -31
- package/test_helpers/test_fixtures/nodeset_with_analog_items.xml +0 -45
- package/test_helpers/test_fixtures/nodeset_with_guid.xml +0 -1442
- package/test_helpers/test_fixtures/nodeset_with_int64_values.xml +0 -31
- package/test_helpers/test_fixtures/nodeset_with_special_char.xml +0 -34
- package/test_helpers/test_fixtures/nodeset_with_utf8_special_characters.xml +0 -20
- package/test_helpers/test_fixtures/variable_with_value.xml +0 -143
- package/test_helpers/test_fixtures/variabletype_with_value.xml +0 -324
- /package/{test_helpers/index.ts → distHelpers/index.d.ts} +0 -0
- /package/{source_nodejs/index.ts → distNodeJS/index.d.ts} +0 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { NodeId } from "node-opcua-nodeid";
|
|
2
|
+
import { UAEventType } from "node-opcua-address-space-base";
|
|
3
|
+
import { VariantOptions } from "node-opcua-variant";
|
|
4
|
+
import { UAOffNormalAlarmEx } from "../src/alarms_and_conditions/ua_off_normal_alarm_impl";
|
|
5
|
+
import { InstantiateAlarmConditionOptions } from "./interfaces/alarms_and_conditions/instantiate_alarm_condition_options";
|
|
6
|
+
import { InstantiateExclusiveLimitAlarmOptions } from "./interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options";
|
|
7
|
+
import { InstantiateLimitAlarmOptions } from "./interfaces/alarms_and_conditions/instantiate_limit_alarm_options";
|
|
8
|
+
import { InstantiateNonExclusiveDeviationAlarmOptions } from "./interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options";
|
|
9
|
+
import { InstantiateOffNormalAlarmOptions } from "./interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options";
|
|
10
|
+
import { UAAcknowledgeableConditionEx } from "./interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex";
|
|
11
|
+
import { UAAlarmConditionEx } from "./interfaces/alarms_and_conditions/ua_alarm_condition_ex";
|
|
12
|
+
import { UAConditionEx } from "./interfaces/alarms_and_conditions/ua_condition_ex";
|
|
13
|
+
import { UADiscreteAlarmEx } from "./interfaces/alarms_and_conditions/ua_discrete_alarm_ex";
|
|
14
|
+
import { UAExclusiveDeviationAlarmEx } from "./interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex";
|
|
15
|
+
import { UAExclusiveLimitAlarmEx } from "./interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex";
|
|
16
|
+
import { UALimitAlarmEx } from "./interfaces/alarms_and_conditions/ua_limit_alarm_ex";
|
|
17
|
+
import { UANonExclusiveDeviationAlarmEx } from "./interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex";
|
|
18
|
+
import { UANonExclusiveLimitAlarmEx } from "./interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex";
|
|
19
|
+
import { InstantiateNonExclusiveLimitAlarmOptions } from "./interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options";
|
|
20
|
+
import { InstantiateExclusiveDeviationAlarmOptions } from "./interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options";
|
|
21
|
+
export interface INamespaceAlarmAndCondition {
|
|
22
|
+
instantiateCondition(conditionTypeId: UAEventType | NodeId | string, options: any, data?: Record<string, VariantOptions>): UAConditionEx;
|
|
23
|
+
instantiateAcknowledgeableCondition(conditionTypeId: UAEventType | NodeId | string, options: InstantiateAlarmConditionOptions, data?: Record<string, VariantOptions>): UAAcknowledgeableConditionEx;
|
|
24
|
+
instantiateAlarmCondition(alarmConditionTypeId: UAEventType | NodeId | string, options: InstantiateAlarmConditionOptions, data?: Record<string, VariantOptions>): UAAlarmConditionEx;
|
|
25
|
+
instantiateLimitAlarm(limitAlarmTypeId: UAEventType | NodeId | string, options: InstantiateLimitAlarmOptions, data?: Record<string, VariantOptions>): UALimitAlarmEx;
|
|
26
|
+
instantiateExclusiveLimitAlarm(exclusiveLimitAlarmTypeId: UAEventType | NodeId | string, options: InstantiateExclusiveLimitAlarmOptions, data?: Record<string, VariantOptions>): UAExclusiveLimitAlarmEx;
|
|
27
|
+
instantiateExclusiveDeviationAlarm(options: InstantiateExclusiveDeviationAlarmOptions, data?: Record<string, VariantOptions>): UAExclusiveDeviationAlarmEx;
|
|
28
|
+
instantiateNonExclusiveLimitAlarm(nonExclusiveLimitAlarmTypeId: UAEventType | NodeId | string, options: InstantiateNonExclusiveLimitAlarmOptions, data?: Record<string, VariantOptions>): UANonExclusiveLimitAlarmEx;
|
|
29
|
+
instantiateNonExclusiveDeviationAlarm(options: InstantiateNonExclusiveDeviationAlarmOptions, data?: Record<string, VariantOptions>): UANonExclusiveDeviationAlarmEx;
|
|
30
|
+
instantiateDiscreteAlarm(discreteAlarmType: UAEventType | NodeId | string, options: InstantiateAlarmConditionOptions, data?: Record<string, VariantOptions>): UADiscreteAlarmEx;
|
|
31
|
+
instantiateOffNormalAlarm(options: InstantiateOffNormalAlarmOptions, data?: Record<string, VariantOptions>): UAOffNormalAlarmEx;
|
|
32
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"namespace_alarm_and_condition.js","sourceRoot":"","sources":["../../source/namespace_alarm_and_condition.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { AddVariableOptionsWithoutValue, AddYArrayItemOptions, BindVariableOptions, UADataType } from "node-opcua-address-space-base";
|
|
2
|
+
import { NodeIdLike } from "node-opcua-nodeid";
|
|
3
|
+
import { UAAnalogItem, UADataItem } from "node-opcua-nodeset-ua";
|
|
4
|
+
import { EUInformation, EUInformationOptions } from "node-opcua-types";
|
|
5
|
+
import { DataType, VariantArrayType } from "node-opcua-variant";
|
|
6
|
+
import { UAMultiStateDiscreteEx } from "./interfaces/data_access/ua_multistate_discrete_ex";
|
|
7
|
+
import { UAMultiStateValueDiscreteEx } from "./interfaces/data_access/ua_multistate_value_discrete_ex";
|
|
8
|
+
import { UATwoStateDiscreteEx } from "./interfaces/data_access/ua_two_state_discrete_ex";
|
|
9
|
+
import { AddMultiStateDiscreteOptions, AddMultiStateValueDiscreteOptions, AddTwoStateDiscreteOptions, AddTwoStateVariableOptions } from "./address_space_ts";
|
|
10
|
+
import { UATwoStateVariableEx } from "./ua_two_state_variable_ex";
|
|
11
|
+
import { UAYArrayItemEx } from "./interfaces/data_access/ua_y_array_item_ex";
|
|
12
|
+
export interface AddDataItemOptions extends AddVariableOptionsWithoutValue {
|
|
13
|
+
arrayType?: VariantArrayType;
|
|
14
|
+
value?: BindVariableOptions;
|
|
15
|
+
/** @example "(tempA -25) + tempB" */
|
|
16
|
+
definition?: string;
|
|
17
|
+
/** @example 0.5 */
|
|
18
|
+
valuePrecision?: number;
|
|
19
|
+
}
|
|
20
|
+
export interface AddAnalogDataItemOptions extends AddDataItemOptions {
|
|
21
|
+
value?: BindVariableOptions;
|
|
22
|
+
engineeringUnitsRange?: {
|
|
23
|
+
low: number;
|
|
24
|
+
high: number;
|
|
25
|
+
};
|
|
26
|
+
instrumentRange?: {
|
|
27
|
+
low: number;
|
|
28
|
+
high: number;
|
|
29
|
+
};
|
|
30
|
+
engineeringUnits?: EUInformationOptions | EUInformation;
|
|
31
|
+
minimumSamplingInterval?: number;
|
|
32
|
+
dataType?: string | NodeIdLike | UADataType;
|
|
33
|
+
}
|
|
34
|
+
export interface INamespaceDataAccess {
|
|
35
|
+
addDataItem<T, DT extends DataType>(options: AddDataItemOptions): UADataItem<T, DT>;
|
|
36
|
+
addAnalogDataItem<T, DT extends DataType>(options: AddAnalogDataItemOptions): UAAnalogItem<T, DT>;
|
|
37
|
+
addYArrayItem<DT extends DataType.Double | DataType.Float>(options: AddYArrayItemOptions): UAYArrayItemEx<DT>;
|
|
38
|
+
addTwoStateVariable(options: AddTwoStateVariableOptions): UATwoStateVariableEx;
|
|
39
|
+
addTwoStateDiscrete(options: AddTwoStateDiscreteOptions): UATwoStateDiscreteEx;
|
|
40
|
+
addMultiStateDiscrete<T, DT extends DataType>(options: AddMultiStateDiscreteOptions): UAMultiStateDiscreteEx<T, DT>;
|
|
41
|
+
addMultiStateValueDiscrete<T, DT extends DataType>(options: AddMultiStateValueDiscreteOptions): UAMultiStateValueDiscreteEx<T, DT>;
|
|
42
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"namespace_data_access.js","sourceRoot":"","sources":["../../source/namespace_data_access.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { UAObject, UAObjectType } from "node-opcua-address-space-base";
|
|
2
|
+
import { UAState } from "node-opcua-nodeset-ua";
|
|
3
|
+
import { QualifiedNameLike } from "node-opcua-data-model";
|
|
4
|
+
import { UATransitionEx } from "./interfaces/state_machine/ua_transition_ex";
|
|
5
|
+
export interface INamespaceMachineState {
|
|
6
|
+
addState(component: UAObject | UAObjectType, stateName: QualifiedNameLike, stateNumber: number, isInitialState?: boolean): UAState;
|
|
7
|
+
addTransition(component: UAObject | UAObjectType, fromState: string, toState: string, transitionNumber: number, browseName?: QualifiedNameLike): UATransitionEx;
|
|
8
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"namespace_machine_state.js","sourceRoot":"","sources":["../../source/namespace_machine_state.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { DataValue } from "node-opcua-data-value";
|
|
3
|
+
import { NodeId } from "node-opcua-nodeid";
|
|
4
|
+
import { ArgumentDefinition, BrowseDescriptionLike, CallMethodRequestLike, IBasicSession, MethodId, ResponseCallback } from "node-opcua-pseudo-session";
|
|
5
|
+
import { BrowseResult } from "node-opcua-service-browse";
|
|
6
|
+
import { CallMethodResult } from "node-opcua-service-call";
|
|
7
|
+
import { BrowsePath, BrowsePathResult } from "node-opcua-service-translate-browse-path";
|
|
8
|
+
import { StatusCode } from "node-opcua-status-code";
|
|
9
|
+
import { WriteValueOptions, ReadValueIdOptions, BrowseDescriptionOptions } from "node-opcua-types";
|
|
10
|
+
import { IAddressSpace, ISessionContext } from "node-opcua-address-space-base";
|
|
11
|
+
import { ContinuationPointManager } from "./continuation_points/continuation_point_manager";
|
|
12
|
+
export interface InnerBrowseEngine {
|
|
13
|
+
requestedMaxReferencesPerNode: number;
|
|
14
|
+
maxBrowseContinuationPoints: number;
|
|
15
|
+
continuationPointManager: ContinuationPointManager;
|
|
16
|
+
context: ISessionContext;
|
|
17
|
+
browseAll: (nodesToBrowse: BrowseDescriptionOptions[], callack: ResponseCallback<BrowseResult[]>) => void;
|
|
18
|
+
}
|
|
19
|
+
export declare function innerBrowse(engine: InnerBrowseEngine, nodesToBrowse: BrowseDescriptionOptions[], callback?: ResponseCallback<BrowseResult[]>): void;
|
|
20
|
+
export interface InnerBrowseNextEngine {
|
|
21
|
+
continuationPointManager: ContinuationPointManager;
|
|
22
|
+
}
|
|
23
|
+
export declare function innerBrowseNext(engine: InnerBrowseNextEngine, continuationPoints: Buffer[], releaseContinuationPoints: boolean, callback?: ResponseCallback<BrowseResult[]>): void;
|
|
24
|
+
declare const $addressSpace: unique symbol;
|
|
25
|
+
declare const $context: unique symbol;
|
|
26
|
+
/**
|
|
27
|
+
* Pseudo session is an helper object that exposes the same async methods
|
|
28
|
+
* than the ClientSession. It can be used on a server address space.
|
|
29
|
+
*
|
|
30
|
+
* Code reused !
|
|
31
|
+
* The primary benefit of this object is that its makes advanced OPCUA
|
|
32
|
+
* operations that uses browse, translate, read, write etc similar
|
|
33
|
+
* whether we work inside a server or through a client session.
|
|
34
|
+
*
|
|
35
|
+
*/
|
|
36
|
+
export declare class PseudoSession implements IBasicSession {
|
|
37
|
+
requestedMaxReferencesPerNode: number;
|
|
38
|
+
maxBrowseContinuationPoints: number;
|
|
39
|
+
private _sessionId;
|
|
40
|
+
private readonly [$addressSpace];
|
|
41
|
+
private readonly continuationPointManager;
|
|
42
|
+
private readonly [$context];
|
|
43
|
+
constructor(addressSpace: IAddressSpace, context?: ISessionContext);
|
|
44
|
+
getSessionId(): NodeId;
|
|
45
|
+
browse(nodeToBrowse: BrowseDescriptionLike, callback: ResponseCallback<BrowseResult>): void;
|
|
46
|
+
browse(nodesToBrowse: BrowseDescriptionLike[], callback: ResponseCallback<BrowseResult[]>): void;
|
|
47
|
+
browse(nodeToBrowse: BrowseDescriptionLike): Promise<BrowseResult>;
|
|
48
|
+
browse(nodesToBrowse: BrowseDescriptionLike[]): Promise<BrowseResult[]>;
|
|
49
|
+
read(nodeToRead: ReadValueIdOptions, callback: ResponseCallback<DataValue>): void;
|
|
50
|
+
read(nodesToRead: ReadValueIdOptions[], callback: ResponseCallback<DataValue[]>): void;
|
|
51
|
+
read(nodeToRead: ReadValueIdOptions): Promise<DataValue>;
|
|
52
|
+
read(nodesToRead: ReadValueIdOptions[]): Promise<DataValue[]>;
|
|
53
|
+
browseNext(continuationPoint: Buffer, releaseContinuationPoints: boolean, callback: ResponseCallback<BrowseResult>): void;
|
|
54
|
+
browseNext(continuationPoints: Buffer[], releaseContinuationPoints: boolean, callback: ResponseCallback<BrowseResult[]>): void;
|
|
55
|
+
browseNext(continuationPoint: Buffer, releaseContinuationPoints: boolean): Promise<BrowseResult>;
|
|
56
|
+
browseNext(continuationPoints: Buffer[], releaseContinuationPoints: boolean): Promise<BrowseResult[]>;
|
|
57
|
+
call(methodToCall: CallMethodRequestLike, callback: ResponseCallback<CallMethodResult>): void;
|
|
58
|
+
call(methodsToCall: CallMethodRequestLike[], callback: ResponseCallback<CallMethodResult[]>): void;
|
|
59
|
+
call(methodToCall: CallMethodRequestLike): Promise<CallMethodResult>;
|
|
60
|
+
call(methodsToCall: CallMethodRequestLike[]): Promise<CallMethodResult[]>;
|
|
61
|
+
getArgumentDefinition(methodId: MethodId): Promise<ArgumentDefinition>;
|
|
62
|
+
getArgumentDefinition(methodId: MethodId, callback: ResponseCallback<ArgumentDefinition>): void;
|
|
63
|
+
translateBrowsePath(browsePaths: BrowsePath[], callback: ResponseCallback<BrowsePathResult[]>): void;
|
|
64
|
+
translateBrowsePath(browsePath: BrowsePath, callback: ResponseCallback<BrowsePathResult>): void;
|
|
65
|
+
translateBrowsePath(browsePath: BrowsePath): Promise<BrowsePathResult>;
|
|
66
|
+
translateBrowsePath(browsePaths: BrowsePath[]): Promise<BrowsePathResult[]>;
|
|
67
|
+
write(nodeToWrite: WriteValueOptions, callback: ResponseCallback<StatusCode>): void;
|
|
68
|
+
write(nodesToWrite: WriteValueOptions[], callback: ResponseCallback<StatusCode[]>): void;
|
|
69
|
+
write(nodeToWrite: WriteValueOptions): Promise<StatusCode>;
|
|
70
|
+
write(nodesToWrite: WriteValueOptions[]): Promise<StatusCode[]>;
|
|
71
|
+
}
|
|
72
|
+
export {};
|
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PseudoSession = exports.innerBrowseNext = exports.innerBrowse = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* @module node-opcua-address-space
|
|
6
|
+
*/
|
|
7
|
+
const util_1 = require("util");
|
|
8
|
+
const async = require("async");
|
|
9
|
+
const node_opcua_assert_1 = require("node-opcua-assert");
|
|
10
|
+
const node_opcua_data_value_1 = require("node-opcua-data-value");
|
|
11
|
+
const node_opcua_debug_1 = require("node-opcua-debug");
|
|
12
|
+
const node_opcua_nodeid_1 = require("node-opcua-nodeid");
|
|
13
|
+
const node_opcua_pseudo_session_1 = require("node-opcua-pseudo-session");
|
|
14
|
+
const node_opcua_service_browse_1 = require("node-opcua-service-browse");
|
|
15
|
+
const node_opcua_service_call_1 = require("node-opcua-service-call");
|
|
16
|
+
const node_opcua_status_code_1 = require("node-opcua-status-code");
|
|
17
|
+
const node_opcua_data_model_1 = require("node-opcua-data-model");
|
|
18
|
+
const node_opcua_basic_types_1 = require("node-opcua-basic-types");
|
|
19
|
+
const continuation_point_manager_1 = require("./continuation_points/continuation_point_manager");
|
|
20
|
+
const call_helpers_1 = require("./helpers/call_helpers");
|
|
21
|
+
const session_context_1 = require("./session_context");
|
|
22
|
+
const errorLog = (0, node_opcua_debug_1.make_errorLog)("PseudoSession");
|
|
23
|
+
function coerceBrowseDescription(browseDescription) {
|
|
24
|
+
if (typeof browseDescription === "string") {
|
|
25
|
+
return coerceBrowseDescription({
|
|
26
|
+
nodeId: (0, node_opcua_nodeid_1.resolveNodeId)(browseDescription)
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
else if (browseDescription instanceof node_opcua_service_browse_1.BrowseDescription) {
|
|
30
|
+
return browseDescription;
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
return new node_opcua_service_browse_1.BrowseDescription(browseDescription);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
function innerBrowse(engine, nodesToBrowse, callback) {
|
|
37
|
+
engine.browseAll(nodesToBrowse, (err, results) => {
|
|
38
|
+
if (err || !results) {
|
|
39
|
+
return callback(err);
|
|
40
|
+
}
|
|
41
|
+
// handle continuation points
|
|
42
|
+
results = results.map((result, index) => {
|
|
43
|
+
(0, node_opcua_assert_1.assert)(!result.continuationPoint);
|
|
44
|
+
// istanbul ignore next
|
|
45
|
+
if (!engine.continuationPointManager) {
|
|
46
|
+
return new node_opcua_service_browse_1.BrowseResult({ statusCode: node_opcua_status_code_1.StatusCodes.BadNoContinuationPoints });
|
|
47
|
+
}
|
|
48
|
+
if (index === 0) {
|
|
49
|
+
// clear previous continuation points
|
|
50
|
+
engine.continuationPointManager.clearContinuationPoints();
|
|
51
|
+
}
|
|
52
|
+
if (engine.continuationPointManager.hasReachedMaximum(engine.maxBrowseContinuationPoints)) {
|
|
53
|
+
return new node_opcua_service_browse_1.BrowseResult({ statusCode: node_opcua_status_code_1.StatusCodes.BadNoContinuationPoints });
|
|
54
|
+
}
|
|
55
|
+
const truncatedResult = engine.continuationPointManager.registerReferences(engine.requestedMaxReferencesPerNode, result.references || [], { continuationPoint: null, index });
|
|
56
|
+
let { statusCode } = truncatedResult;
|
|
57
|
+
const { continuationPoint, values } = truncatedResult;
|
|
58
|
+
(0, node_opcua_assert_1.assert)(statusCode.isGood() || statusCode.equals(node_opcua_status_code_1.StatusCodes.GoodNoData));
|
|
59
|
+
statusCode = result.statusCode;
|
|
60
|
+
return new node_opcua_service_browse_1.BrowseResult({
|
|
61
|
+
statusCode,
|
|
62
|
+
continuationPoint,
|
|
63
|
+
references: values
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
callback(null, results);
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
exports.innerBrowse = innerBrowse;
|
|
70
|
+
function innerBrowseNext(engine, continuationPoints, releaseContinuationPoints, callback) {
|
|
71
|
+
const results = continuationPoints
|
|
72
|
+
.map((continuationPoint, index) => {
|
|
73
|
+
return engine.continuationPointManager.getNextReferences(0, {
|
|
74
|
+
continuationPoint,
|
|
75
|
+
index,
|
|
76
|
+
releaseContinuationPoints
|
|
77
|
+
});
|
|
78
|
+
})
|
|
79
|
+
.map((r) => new node_opcua_service_browse_1.BrowseResult({
|
|
80
|
+
statusCode: r.statusCode,
|
|
81
|
+
continuationPoint: r.continuationPoint,
|
|
82
|
+
references: r.values
|
|
83
|
+
}));
|
|
84
|
+
callback(null, results);
|
|
85
|
+
}
|
|
86
|
+
exports.innerBrowseNext = innerBrowseNext;
|
|
87
|
+
const $addressSpace = Symbol("addressSpace");
|
|
88
|
+
const $context = Symbol("context");
|
|
89
|
+
/**
|
|
90
|
+
* Pseudo session is an helper object that exposes the same async methods
|
|
91
|
+
* than the ClientSession. It can be used on a server address space.
|
|
92
|
+
*
|
|
93
|
+
* Code reused !
|
|
94
|
+
* The primary benefit of this object is that its makes advanced OPCUA
|
|
95
|
+
* operations that uses browse, translate, read, write etc similar
|
|
96
|
+
* whether we work inside a server or through a client session.
|
|
97
|
+
*
|
|
98
|
+
*/
|
|
99
|
+
class PseudoSession {
|
|
100
|
+
constructor(addressSpace, context) {
|
|
101
|
+
this.requestedMaxReferencesPerNode = 0;
|
|
102
|
+
this.maxBrowseContinuationPoints = 0; // 0=no limits
|
|
103
|
+
this._sessionId = new node_opcua_nodeid_1.NodeId(node_opcua_nodeid_1.NodeIdType.GUID, (0, node_opcua_basic_types_1.randomGuid)());
|
|
104
|
+
this[$addressSpace] = addressSpace;
|
|
105
|
+
this[$context] = context || session_context_1.SessionContext.defaultContext;
|
|
106
|
+
this.continuationPointManager = new continuation_point_manager_1.ContinuationPointManager();
|
|
107
|
+
}
|
|
108
|
+
getSessionId() {
|
|
109
|
+
return this._sessionId;
|
|
110
|
+
}
|
|
111
|
+
browse(nodesToBrowse, callback) {
|
|
112
|
+
const isArray = Array.isArray(nodesToBrowse);
|
|
113
|
+
if (!isArray) {
|
|
114
|
+
return this.browse([nodesToBrowse], (err, results) => {
|
|
115
|
+
return callback(err, results ? results[0] : undefined);
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
const browseAll = (nodesToBrowse, callack) => {
|
|
119
|
+
const results = [];
|
|
120
|
+
for (const browseDescription of nodesToBrowse) {
|
|
121
|
+
browseDescription.referenceTypeId = (0, node_opcua_nodeid_1.resolveNodeId)(browseDescription.referenceTypeId);
|
|
122
|
+
const _browseDescription = coerceBrowseDescription(browseDescription);
|
|
123
|
+
const nodeId = (0, node_opcua_nodeid_1.resolveNodeId)(_browseDescription.nodeId);
|
|
124
|
+
const r = this[$addressSpace].browseSingleNode(nodeId, _browseDescription, this[$context]);
|
|
125
|
+
results.push(r);
|
|
126
|
+
}
|
|
127
|
+
callack(null, results);
|
|
128
|
+
};
|
|
129
|
+
setImmediate(() => {
|
|
130
|
+
innerBrowse({
|
|
131
|
+
browseAll,
|
|
132
|
+
context: this[$context],
|
|
133
|
+
continuationPointManager: this.continuationPointManager,
|
|
134
|
+
requestedMaxReferencesPerNode: this.requestedMaxReferencesPerNode,
|
|
135
|
+
maxBrowseContinuationPoints: this.maxBrowseContinuationPoints
|
|
136
|
+
}, nodesToBrowse, callback);
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
read(nodesToRead, callback) {
|
|
140
|
+
const isArray = Array.isArray(nodesToRead);
|
|
141
|
+
if (!isArray) {
|
|
142
|
+
nodesToRead = [nodesToRead];
|
|
143
|
+
}
|
|
144
|
+
const _nodesToRead = nodesToRead;
|
|
145
|
+
const context = this[$context];
|
|
146
|
+
setImmediate(() => {
|
|
147
|
+
async.map(_nodesToRead, (nodeToRead, innerCallback) => {
|
|
148
|
+
const obj = this[$addressSpace].findNode(nodeToRead.nodeId);
|
|
149
|
+
if (!obj || obj.nodeClass !== node_opcua_data_model_1.NodeClass.Variable || nodeToRead.attributeId !== node_opcua_data_model_1.AttributeIds.Value) {
|
|
150
|
+
return innerCallback();
|
|
151
|
+
}
|
|
152
|
+
obj.readValueAsync(context, innerCallback);
|
|
153
|
+
}, (err) => {
|
|
154
|
+
const dataValues = _nodesToRead.map((nodeToRead) => {
|
|
155
|
+
(0, node_opcua_assert_1.assert)(!!nodeToRead.nodeId, "expecting a nodeId");
|
|
156
|
+
(0, node_opcua_assert_1.assert)(!!nodeToRead.attributeId, "expecting a attributeId");
|
|
157
|
+
const nodeId = nodeToRead.nodeId;
|
|
158
|
+
const attributeId = nodeToRead.attributeId;
|
|
159
|
+
const indexRange = nodeToRead.indexRange;
|
|
160
|
+
const dataEncoding = nodeToRead.dataEncoding;
|
|
161
|
+
const obj = this[$addressSpace].findNode(nodeId);
|
|
162
|
+
if (!obj) {
|
|
163
|
+
return new node_opcua_data_value_1.DataValue({ statusCode: node_opcua_status_code_1.StatusCodes.BadNodeIdUnknown });
|
|
164
|
+
}
|
|
165
|
+
const context = this[$context];
|
|
166
|
+
const dataValue = obj.readAttribute(context, attributeId, indexRange, dataEncoding);
|
|
167
|
+
return dataValue;
|
|
168
|
+
});
|
|
169
|
+
callback(null, isArray ? dataValues : dataValues[0]);
|
|
170
|
+
});
|
|
171
|
+
});
|
|
172
|
+
}
|
|
173
|
+
browseNext(continuationPoints, releaseContinuationPoints, callback) {
|
|
174
|
+
setImmediate(() => {
|
|
175
|
+
if (continuationPoints instanceof Buffer) {
|
|
176
|
+
return this.browseNext([continuationPoints], releaseContinuationPoints, (err, _results) => {
|
|
177
|
+
if (err) {
|
|
178
|
+
return callback(err);
|
|
179
|
+
}
|
|
180
|
+
callback(null, _results[0]);
|
|
181
|
+
});
|
|
182
|
+
}
|
|
183
|
+
innerBrowseNext({ continuationPointManager: this.continuationPointManager }, continuationPoints, releaseContinuationPoints, callback);
|
|
184
|
+
});
|
|
185
|
+
}
|
|
186
|
+
call(methodsToCall, callback) {
|
|
187
|
+
const isArray = Array.isArray(methodsToCall);
|
|
188
|
+
if (!isArray) {
|
|
189
|
+
methodsToCall = [methodsToCall];
|
|
190
|
+
}
|
|
191
|
+
async.map(methodsToCall, (methodToCall, innerCallback) => {
|
|
192
|
+
const callMethodRequest = new node_opcua_service_call_1.CallMethodRequest(methodToCall);
|
|
193
|
+
(0, call_helpers_1.callMethodHelper)(this[$context], this[$addressSpace], callMethodRequest, (err, result) => {
|
|
194
|
+
let callMethodResult;
|
|
195
|
+
if (err) {
|
|
196
|
+
errorLog("Internal Error = ", err);
|
|
197
|
+
callMethodResult = new node_opcua_service_call_1.CallMethodResult({
|
|
198
|
+
statusCode: node_opcua_status_code_1.StatusCodes.BadInternalError
|
|
199
|
+
});
|
|
200
|
+
}
|
|
201
|
+
else {
|
|
202
|
+
callMethodResult = new node_opcua_service_call_1.CallMethodResult(result);
|
|
203
|
+
}
|
|
204
|
+
innerCallback(null, callMethodResult);
|
|
205
|
+
});
|
|
206
|
+
}, (err, callMethodResults) => {
|
|
207
|
+
callback(null, isArray ? callMethodResults : callMethodResults[0]);
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
getArgumentDefinition(methodId, callback) {
|
|
211
|
+
return (0, node_opcua_pseudo_session_1.getArgumentDefinitionHelper)(this, methodId, callback);
|
|
212
|
+
}
|
|
213
|
+
translateBrowsePath(browsePaths, callback) {
|
|
214
|
+
const isArray = Array.isArray(browsePaths);
|
|
215
|
+
if (!isArray) {
|
|
216
|
+
browsePaths = [browsePaths];
|
|
217
|
+
}
|
|
218
|
+
const browsePathResults = browsePaths.map((browsePath) => {
|
|
219
|
+
return this[$addressSpace].browsePath(browsePath);
|
|
220
|
+
});
|
|
221
|
+
callback(null, isArray ? browsePathResults : browsePathResults[0]);
|
|
222
|
+
}
|
|
223
|
+
write(nodesToWrite, callback) {
|
|
224
|
+
const isArray = nodesToWrite instanceof Array;
|
|
225
|
+
const _nodesToWrite = !isArray ? [nodesToWrite] : nodesToWrite;
|
|
226
|
+
const context = this[$context];
|
|
227
|
+
setImmediate(() => {
|
|
228
|
+
const statusCodesPromises = _nodesToWrite.map((nodeToWrite) => {
|
|
229
|
+
(0, node_opcua_assert_1.assert)(!!nodeToWrite.nodeId, "expecting a nodeId");
|
|
230
|
+
(0, node_opcua_assert_1.assert)(!!nodeToWrite.attributeId, "expecting a attributeId");
|
|
231
|
+
const nodeId = nodeToWrite.nodeId;
|
|
232
|
+
const obj = this[$addressSpace].findNode(nodeId);
|
|
233
|
+
if (!obj) {
|
|
234
|
+
return node_opcua_status_code_1.StatusCodes.BadNodeIdUnknown;
|
|
235
|
+
}
|
|
236
|
+
return (0, util_1.promisify)(obj.writeAttribute).call(obj, context, nodeToWrite);
|
|
237
|
+
});
|
|
238
|
+
Promise.all(statusCodesPromises).then((statusCodes) => {
|
|
239
|
+
callback(null, isArray ? statusCodes : statusCodes[0]);
|
|
240
|
+
});
|
|
241
|
+
});
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
exports.PseudoSession = PseudoSession;
|
|
245
|
+
// tslint:disable:no-var-requires
|
|
246
|
+
// tslint:disable:max-line-length
|
|
247
|
+
const thenify = require("thenify");
|
|
248
|
+
PseudoSession.prototype.read = thenify.withCallback(PseudoSession.prototype.read);
|
|
249
|
+
PseudoSession.prototype.write = thenify.withCallback(PseudoSession.prototype.write);
|
|
250
|
+
PseudoSession.prototype.browse = thenify.withCallback(PseudoSession.prototype.browse);
|
|
251
|
+
PseudoSession.prototype.browseNext = thenify.withCallback(PseudoSession.prototype.browseNext);
|
|
252
|
+
PseudoSession.prototype.getArgumentDefinition = thenify.withCallback(PseudoSession.prototype.getArgumentDefinition);
|
|
253
|
+
PseudoSession.prototype.call = thenify.withCallback(PseudoSession.prototype.call);
|
|
254
|
+
PseudoSession.prototype.translateBrowsePath = thenify.withCallback(PseudoSession.prototype.translateBrowsePath);
|
|
255
|
+
//# sourceMappingURL=pseudo_session.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pseudo_session.js","sourceRoot":"","sources":["../../source/pseudo_session.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module node-opcua-address-space
|
|
3
|
+
*/
|
|
4
|
+
import { AccessRestrictionsFlag, PermissionFlag } from "node-opcua-data-model";
|
|
5
|
+
import { PreciseClock } from "node-opcua-date-time";
|
|
6
|
+
import { NodeId, NodeIdLike } from "node-opcua-nodeid";
|
|
7
|
+
import { PermissionType, RolePermissionType } from "node-opcua-types";
|
|
8
|
+
import { ISessionContext, UAObject, UAObjectType, BaseNode, ISessionBase } from "node-opcua-address-space-base";
|
|
9
|
+
export { RolePermissionType, RolePermissionTypeOptions, PermissionType } from "node-opcua-types";
|
|
10
|
+
/**
|
|
11
|
+
*
|
|
12
|
+
*/
|
|
13
|
+
export declare enum WellKnownRoles {
|
|
14
|
+
Anonymous = 15644,
|
|
15
|
+
AuthenticatedUser = 15656,
|
|
16
|
+
ConfigureAdmin = 15716,
|
|
17
|
+
Engineer = 16036,
|
|
18
|
+
Observer = 15668,
|
|
19
|
+
Operator = 15680,
|
|
20
|
+
SecurityAdmin = 15704,
|
|
21
|
+
Supervisor = 15692
|
|
22
|
+
}
|
|
23
|
+
export declare enum WellKnownRolesNodeId {
|
|
24
|
+
Anonymous = 15644,
|
|
25
|
+
AuthenticatedUser = 15656,
|
|
26
|
+
ConfigureAdmin = 15716,
|
|
27
|
+
Engineer = 16036,
|
|
28
|
+
Observer = 15668,
|
|
29
|
+
Operator = 15680,
|
|
30
|
+
SecurityAdmin = 15704,
|
|
31
|
+
Supervisor = 15692
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* OPC Unified Architecture, Part 3 13 Release 1.04
|
|
35
|
+
* 4.8.2 Well Known Roles
|
|
36
|
+
* All Servers should support the well-known Roles which are defined in Table 2. The NodeIds
|
|
37
|
+
* for the well-known Roles are defined in Part 6.
|
|
38
|
+
* Table 2 – Well-Known Roles
|
|
39
|
+
* BrowseName Suggested Permissions
|
|
40
|
+
*
|
|
41
|
+
* Anonymous The Role has very limited access for use when a Session has anonymous credentials.
|
|
42
|
+
* AuthenticatedUser The Role has limited access for use when a Session has valid non-anonymous credentials
|
|
43
|
+
* but has not been explicitly granted access to a Role.
|
|
44
|
+
* Observer The Role is allowed to browse, read live data, read historical data/events or subscribe to data/events.
|
|
45
|
+
* Operator The Role is allowed to browse, read live data, read historical data/events or subscribe to data/events.
|
|
46
|
+
* In addition, the Session is allowed to write some live data and call some Methods.
|
|
47
|
+
* Engineer The Role is allowed to browse, read/write configuration data, read historical data/events,
|
|
48
|
+
* call Methods or subscribe to data/events.
|
|
49
|
+
* Supervisor The Role is allowed to browse, read live data, read historical data/events, call Methods or
|
|
50
|
+
* subscribe to data/events.
|
|
51
|
+
* ConfigureAdmin The Role is allowed to change the non-security related config
|
|
52
|
+
* SecurityAdmin The Role is allowed to change security related settings.
|
|
53
|
+
*/
|
|
54
|
+
export type WellKnownRolesSemiColumnSeparated = string;
|
|
55
|
+
export interface IUserManager {
|
|
56
|
+
/**
|
|
57
|
+
* retrieve the roles of the given user
|
|
58
|
+
* @returns semicolon separated list of roles
|
|
59
|
+
*/
|
|
60
|
+
getUserRoles?: (user: string) => NodeId[];
|
|
61
|
+
}
|
|
62
|
+
export interface IServerBase {
|
|
63
|
+
userManager?: IUserManager;
|
|
64
|
+
}
|
|
65
|
+
export interface SessionContextOptions {
|
|
66
|
+
session?: ISessionBase;
|
|
67
|
+
object?: UAObject | UAObjectType;
|
|
68
|
+
server?: IServerBase;
|
|
69
|
+
}
|
|
70
|
+
export declare function makeRoles(roleIds: NodeIdLike[] | string | WellKnownRoles): NodeId[];
|
|
71
|
+
export declare class SessionContext implements ISessionContext {
|
|
72
|
+
static defaultContext: SessionContext;
|
|
73
|
+
object: any;
|
|
74
|
+
currentTime?: PreciseClock;
|
|
75
|
+
continuationPoints: any;
|
|
76
|
+
userIdentity?: string;
|
|
77
|
+
readonly session?: ISessionBase;
|
|
78
|
+
readonly server?: IServerBase;
|
|
79
|
+
constructor(options?: SessionContextOptions);
|
|
80
|
+
/**
|
|
81
|
+
* getCurrentUserRoles
|
|
82
|
+
*
|
|
83
|
+
* guest => anonymous user (unauthenticated)
|
|
84
|
+
* default => default authenticated user
|
|
85
|
+
*
|
|
86
|
+
*/
|
|
87
|
+
getCurrentUserRoles(): NodeId[];
|
|
88
|
+
getApplicableRolePermissions(node: BaseNode): RolePermissionType[] | null;
|
|
89
|
+
getPermissions(node: BaseNode): PermissionFlag;
|
|
90
|
+
getAccessRestrictions(node: BaseNode): AccessRestrictionsFlag;
|
|
91
|
+
/**
|
|
92
|
+
*
|
|
93
|
+
* @param node
|
|
94
|
+
* @returns true if the browse is denied (access is restricted)
|
|
95
|
+
*/
|
|
96
|
+
isBrowseAccessRestricted(node: BaseNode): boolean;
|
|
97
|
+
/**
|
|
98
|
+
*
|
|
99
|
+
* @param node
|
|
100
|
+
* @returns true if the context is access restricted
|
|
101
|
+
*/
|
|
102
|
+
isAccessRestricted(node: BaseNode): boolean;
|
|
103
|
+
/**
|
|
104
|
+
* @method checkPermission
|
|
105
|
+
* @param node
|
|
106
|
+
* @param requestedPermission
|
|
107
|
+
* @return {Boolean} returns true of the current user is granted the requested Permission
|
|
108
|
+
*/
|
|
109
|
+
checkPermission(node: BaseNode, requestedPermission: PermissionType): boolean;
|
|
110
|
+
currentUserHasRole(role: NodeIdLike): boolean;
|
|
111
|
+
}
|