#[allow(unused_imports)]
use std::{convert::TryFrom, str::FromStr};
#[allow(unused_imports)]
use crate::{
server::address_space::{types::*, EventNotifier},
types::{
service_types::Argument, DataTypeId, ExtensionObject, LocalizedText, NodeId,
ReferenceTypeId, UAString, Variant, VariantTypeId,
},
};
#[allow(unused_variables)]
pub fn populate_address_space(address_space: &mut AddressSpace) {
add_datatype_1(address_space);
add_variable_2(address_space);
}
fn add_datatype_1(address_space: &mut AddressSpace) {
let name = "EnumeratedTestType";
let node_id = NodeId::new(0, 398);
let mut node = DataType::new(&node_id, name, name, false);
node.set_description(LocalizedText::from("A simple enumerated type used for testing."));
let _ = address_space.insert(node, Some(&[
(&NodeId::new(0, 11886), &ReferenceTypeId::HasProperty, ReferenceDirection::Forward),
(&NodeId::new(0, 29), &ReferenceTypeId::HasSubtype, ReferenceDirection::Inverse),
]));
}
fn add_variable_2(address_space: &mut AddressSpace) {
let name = "EnumValues";
let value = Variant::Empty;
let node_id = NodeId::new(0, 11886);
let node = Variable::new_data_value(&node_id, name, name, NodeId::new(0, 7594), Some(1), None, value);
let _ = address_space.insert(node, Some(&[
(&NodeId::new(0, 68), &ReferenceTypeId::HasTypeDefinition, ReferenceDirection::Forward),
(&NodeId::new(0, 78), &ReferenceTypeId::HasModellingRule, ReferenceDirection::Forward),
(&NodeId::new(0, 398), &ReferenceTypeId::HasProperty, ReferenceDirection::Inverse),
]));
}