Search in sources :

Example 1 with CustomUnionType

use of org.eclipse.milo.examples.server.types.CustomUnionType in project milo by eclipse.

the class ExampleNamespace method addCustomUnionTypeVariable.

private void addCustomUnionTypeVariable(UaFolderNode rootFolder) throws Exception {
    NodeId dataTypeId = CustomUnionType.TYPE_ID.toNodeIdOrThrow(getServer().getNamespaceTable());
    NodeId binaryEncodingId = CustomUnionType.BINARY_ENCODING_ID.toNodeIdOrThrow(getServer().getNamespaceTable());
    UaVariableNode customUnionTypeVariable = UaVariableNode.builder(getNodeContext()).setNodeId(newNodeId("HelloWorld/CustomUnionTypeVariable")).setAccessLevel(AccessLevel.READ_WRITE).setUserAccessLevel(AccessLevel.READ_WRITE).setBrowseName(newQualifiedName("CustomUnionTypeVariable")).setDisplayName(LocalizedText.english("CustomUnionTypeVariable")).setDataType(dataTypeId).setTypeDefinition(Identifiers.BaseDataVariableType).build();
    CustomUnionType value = CustomUnionType.ofBar("hello");
    ExtensionObject xo = ExtensionObject.encodeDefaultBinary(getServer().getSerializationContext(), value, binaryEncodingId);
    customUnionTypeVariable.setValue(new DataValue(new Variant(xo)));
    getNodeManager().addNode(customUnionTypeVariable);
    customUnionTypeVariable.addReference(new Reference(customUnionTypeVariable.getNodeId(), Identifiers.Organizes, rootFolder.getNodeId().expanded(), false));
}
Also used : Variant(org.eclipse.milo.opcua.stack.core.types.builtin.Variant) UaVariableNode(org.eclipse.milo.opcua.sdk.server.nodes.UaVariableNode) CustomUnionType(org.eclipse.milo.examples.server.types.CustomUnionType) DataValue(org.eclipse.milo.opcua.stack.core.types.builtin.DataValue) ExtensionObject(org.eclipse.milo.opcua.stack.core.types.builtin.ExtensionObject) Reference(org.eclipse.milo.opcua.sdk.core.Reference) NodeId(org.eclipse.milo.opcua.stack.core.types.builtin.NodeId)

Aggregations

CustomUnionType (org.eclipse.milo.examples.server.types.CustomUnionType)1 Reference (org.eclipse.milo.opcua.sdk.core.Reference)1 UaVariableNode (org.eclipse.milo.opcua.sdk.server.nodes.UaVariableNode)1 DataValue (org.eclipse.milo.opcua.stack.core.types.builtin.DataValue)1 ExtensionObject (org.eclipse.milo.opcua.stack.core.types.builtin.ExtensionObject)1 NodeId (org.eclipse.milo.opcua.stack.core.types.builtin.NodeId)1 Variant (org.eclipse.milo.opcua.stack.core.types.builtin.Variant)1