java.lang.Object
org.eclipse.milo.opcua.sdk.client.nodes.UaNode
All Implemented Interfaces:
org.eclipse.milo.opcua.sdk.core.nodes.Node
Direct Known Subclasses:
UaDataTypeNode, UaMethodNode, UaObjectNode, UaObjectTypeNode, UaReferenceTypeNode, UaVariableNode, UaVariableTypeNode, UaViewNode

public abstract class UaNode extends Object implements org.eclipse.milo.opcua.sdk.core.nodes.Node
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected final OpcUaClient
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    UaNode(OpcUaClient client, org.eclipse.milo.opcua.stack.core.types.builtin.NodeId nodeId, org.eclipse.milo.opcua.stack.core.types.enumerated.NodeClass nodeClass, org.eclipse.milo.opcua.stack.core.types.builtin.QualifiedName browseName, org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText displayName, org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText description, org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger writeMask, org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger userWriteMask)
    Construct a UaNode using only attributes defined prior to OPC UA 1.04.
    UaNode(OpcUaClient client, org.eclipse.milo.opcua.stack.core.types.builtin.NodeId nodeId, org.eclipse.milo.opcua.stack.core.types.enumerated.NodeClass nodeClass, org.eclipse.milo.opcua.stack.core.types.builtin.QualifiedName browseName, org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText displayName, org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText description, org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger writeMask, org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger userWriteMask, org.eclipse.milo.opcua.stack.core.types.structured.RolePermissionType[] rolePermissions, org.eclipse.milo.opcua.stack.core.types.structured.RolePermissionType[] userRolePermissions, org.eclipse.milo.opcua.stack.core.types.structured.AccessRestrictionType accessRestrictions)
    Construct a UaNode using all attributes, including those defined by OPC UA 1.04.
  • Method Summary

    Modifier and Type
    Method
    Description
    List<org.eclipse.milo.opcua.stack.core.types.structured.ReferenceDescription>
    Call the Browse service to get this UaNode's references, using the currently configured AddressSpace.BrowseOptions from the AddressSpace.
    List<org.eclipse.milo.opcua.stack.core.types.structured.ReferenceDescription>
    Call the Browse service to get this UaNode's references.
    CompletableFuture<List<org.eclipse.milo.opcua.stack.core.types.structured.ReferenceDescription>>
    Call the Browse service to get this UaNode's references, using the currently configured AddressSpace.BrowseOptions from the AddressSpace.
    CompletableFuture<List<org.eclipse.milo.opcua.stack.core.types.structured.ReferenceDescription>>
    Call the Browse service to get this UaNode's references.
    List<? extends UaNode>
    Call the Browse service to get the UaNodes referenced by this Node, using the currently configured AddressSpace.BrowseOptions from the AddressSpace.
    List<? extends UaNode>
    Call the Browse service to get the UaNodes referenced by this Node.
    Call the Browse service to get the UaNodes referenced by this Node, using the currently configured AddressSpace.BrowseOptions from the AddressSpace.
    Call the Browse service to get the UaNodes referenced by this Node.
    Make this Node instance the canonical instance of the Node identified this Node's NodeId.
    protected <T> T
    cast(Object o, Class<T> clazz)
    An implementation of cast with special handling for UaEnumeratedType and UaStructuredType destination types.
    protected CompletableFuture<org.eclipse.milo.opcua.stack.core.types.builtin.ExpandedNodeId>
    findMemberNodeId(org.eclipse.milo.opcua.stack.core.types.builtin.QualifiedName name, org.eclipse.milo.opcua.stack.core.types.builtin.ExpandedNodeId referenceTypeId, boolean includeSubtypes)
     
    @Nullable org.eclipse.milo.opcua.stack.core.types.structured.AccessRestrictionType
    protected org.eclipse.milo.opcua.stack.core.types.builtin.DataValue
    getAttributeValue(org.eclipse.milo.opcua.stack.core.AttributeId attributeId)
     
    org.eclipse.milo.opcua.stack.core.types.builtin.QualifiedName
    protected CompletableFuture<? extends UaNode>
    getComponentAsync(org.eclipse.milo.opcua.stack.core.types.builtin.QualifiedName browseName, org.eclipse.milo.opcua.stack.core.types.enumerated.NodeClass nodeClass)
     
    @Nullable org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText
    org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText
    getMemberNodeAsync(String namespaceUri, String name, org.eclipse.milo.opcua.stack.core.types.builtin.ExpandedNodeId referenceTypeId, boolean includeSubtypes)
     
    org.eclipse.milo.opcua.stack.core.types.enumerated.NodeClass
    org.eclipse.milo.opcua.stack.core.types.builtin.NodeId
    getProperty(org.eclipse.milo.opcua.sdk.core.QualifiedProperty<T> property)
     
    getPropertyNodeAsync(org.eclipse.milo.opcua.sdk.core.QualifiedProperty<?> property)
     
    getPropertyNodeAsync(org.eclipse.milo.opcua.stack.core.types.builtin.QualifiedName browseName)
     
    @Nullable org.eclipse.milo.opcua.stack.core.types.structured.RolePermissionType[]
    @Nullable org.eclipse.milo.opcua.stack.core.types.structured.RolePermissionType[]
    @Nullable org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger
    @Nullable org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger
    Invalidate this Node's entry in the NodeCache as well as its status as the canonical Node, if applicable
    @Nullable org.eclipse.milo.opcua.stack.core.types.structured.AccessRestrictionType
    Read the AccessRestrictions attribute for this Node from the server and update the local attribute if the operation succeeds.
    org.eclipse.milo.opcua.stack.core.types.builtin.DataValue
    readAttribute(org.eclipse.milo.opcua.stack.core.AttributeId attributeId)
    Read the attribute identified by an attributeId from the server.
    CompletableFuture<org.eclipse.milo.opcua.stack.core.types.builtin.DataValue>
    readAttributeAsync(org.eclipse.milo.opcua.stack.core.AttributeId attributeId)
    An asynchronous implementation of readAttribute(AttributeId).
    org.eclipse.milo.opcua.stack.core.types.builtin.QualifiedName
    Read the BrowseName attribute for this Node from the server and update the local attribute if the operation succeeds.
    @Nullable org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText
    Read the Description attribute for this Node from the server and update the local attribute if the operation succeeds.
    org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText
    Read the DisplayName attribute for this Node from the server and update the local attribute if the operation succeeds.
    protected CompletableFuture<org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UShort>
    readNamespaceIndex(String namespaceUri)
     
    org.eclipse.milo.opcua.stack.core.types.enumerated.NodeClass
    Read the NodeClass attribute for this Node from the server and update the local attribute if the operation succeeds.
    org.eclipse.milo.opcua.stack.core.types.builtin.NodeId
    Read the NodeId attribute for this Node from the server and update the local attribute if the operation succeeds.
    protected CompletableFuture<org.eclipse.milo.opcua.stack.core.types.builtin.DataValue>
    readProperty(org.eclipse.milo.opcua.sdk.core.QualifiedProperty<?> property)
     
    @Nullable org.eclipse.milo.opcua.stack.core.types.structured.RolePermissionType[]
    Read the RolePermissions attribute for this Node from the server and update the local attribute if the operation succeeds.
    @Nullable org.eclipse.milo.opcua.stack.core.types.structured.RolePermissionType[]
    Read the UserRolePermissions attribute for this Node from the server and update the local attribute if the operation succeeds.
    @Nullable org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger
    Read the UserWriteMask attribute for this Node from the server and update the local attribute if the operation succeeds.
    @Nullable org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger
    Read the WriteMask attribute for this Node from the server and update the local attribute if the operation succeeds.
    List<org.eclipse.milo.opcua.stack.core.types.builtin.DataValue>
    refresh(Set<org.eclipse.milo.opcua.stack.core.AttributeId> attributeIds)
    Refresh (read) the attributes identified by attributeIds and store their values locally.
    CompletableFuture<List<org.eclipse.milo.opcua.stack.core.types.builtin.DataValue>>
    refreshAsync(Set<org.eclipse.milo.opcua.stack.core.AttributeId> attributeIds)
    An asynchronous implementation of refresh(Set).
    void
    setAccessRestrictions(org.eclipse.milo.opcua.stack.core.types.structured.AccessRestrictionType accessRestrictions)
    The attribute is only updated locally; it is not written to the server.
    protected void
    setAttributeValue(org.eclipse.milo.opcua.stack.core.AttributeId attributeId, org.eclipse.milo.opcua.stack.core.types.builtin.DataValue value)
     
    void
    setBrowseName(org.eclipse.milo.opcua.stack.core.types.builtin.QualifiedName browseName)
    void
    setDescription(org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText description)
    void
    setDisplayName(org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText displayName)
    void
    setNodeClass(org.eclipse.milo.opcua.stack.core.types.enumerated.NodeClass nodeClass)
    void
    setNodeId(org.eclipse.milo.opcua.stack.core.types.builtin.NodeId nodeId)
    protected <T> CompletableFuture<org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode>
    setProperty(org.eclipse.milo.opcua.sdk.core.QualifiedProperty<T> property, T value)
     
    void
    setRolePermissions(org.eclipse.milo.opcua.stack.core.types.structured.RolePermissionType[] rolePermissions)
    The attribute is only updated locally; it is not written to the server.
    void
    setUserRolePermissions(org.eclipse.milo.opcua.stack.core.types.structured.RolePermissionType[] userRolePermissions)
    The attribute is only updated locally; it is not written to the server.
    void
    setUserWriteMask(org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger userWriteMask)
    void
    setWriteMask(org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger writeMask)
    List<org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode>
    synchronize(Set<org.eclipse.milo.opcua.stack.core.AttributeId> attributeIds)
    Synchronize (write) the local attributes identified by attributeIds to the server.
    CompletableFuture<List<org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode>>
    synchronizeAsync(Set<org.eclipse.milo.opcua.stack.core.AttributeId> attributeIds)
    An asynchronous implementation of synchronize(Set).
    void
    writeAccessRestrictions(org.eclipse.milo.opcua.stack.core.types.structured.AccessRestrictionType accessRestrictions)
    Write a new AccessRestrictions attribute for this Node to the server and update the local attribute if the operation succeeds.
    org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode
    writeAttribute(org.eclipse.milo.opcua.stack.core.AttributeId attributeId, org.eclipse.milo.opcua.stack.core.types.builtin.DataValue value)
    Write value to the attribute identified by attributeId.
    CompletableFuture<org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode>
    writeAttributeAsync(org.eclipse.milo.opcua.stack.core.AttributeId attributeId, org.eclipse.milo.opcua.stack.core.types.builtin.DataValue value)
    An asynchronous implementation of writeAttribute(AttributeId, DataValue).
    void
    writeBrowseName(org.eclipse.milo.opcua.stack.core.types.builtin.QualifiedName browseName)
    Write a new BrowseName attribute for this Node to the server and update the local attribute if the operation succeeds.
    void
    writeDescription(org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText description)
    Write a new Description attribute for this Node to the server and update the local attribute if the operation succeeds.
    void
    writeDisplayName(org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText displayName)
    Write a new DisplayName attribute for this Node to the server and update the local attribute if the operation succeeds.
    void
    writeNodeClass(org.eclipse.milo.opcua.stack.core.types.enumerated.NodeClass nodeClass)
    Write a new NodeClass attribute for this Node to the server and update the local attribute if the operation succeeds.
    void
    writeNodeId(org.eclipse.milo.opcua.stack.core.types.builtin.NodeId nodeId)
    Write a new NodeId attribute for this Node to the server and update the local attribute if the operation succeeds.
    protected CompletableFuture<org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode>
    writeProperty(org.eclipse.milo.opcua.sdk.core.QualifiedProperty<?> property, org.eclipse.milo.opcua.stack.core.types.builtin.DataValue value)
     
    void
    writeRolePermissions(org.eclipse.milo.opcua.stack.core.types.structured.RolePermissionType[] rolePermissions)
    Write a new RolePermissions attribute for this Node to the server and update the local attribute if the operation succeeds.
    void
    writeUserRolePermissions(org.eclipse.milo.opcua.stack.core.types.structured.RolePermissionType[] userRolePermissions)
    Write a new UserRolePermissions attribute for this Node to the server and update the local attribute if the operation succeeds.
    void
    writeUserWriteMask(org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger userWriteMask)
    Write a new UserWriteMask attribute for this Node to the server and update the local attribute if the operation succeeds.
    void
    writeWriteMask(org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger writeMask)
    Write a new WriteMask attribute for this Node to the server and update the local attribute if the operation succeeds.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • UaNode

      public UaNode(OpcUaClient client, org.eclipse.milo.opcua.stack.core.types.builtin.NodeId nodeId, org.eclipse.milo.opcua.stack.core.types.enumerated.NodeClass nodeClass, org.eclipse.milo.opcua.stack.core.types.builtin.QualifiedName browseName, org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText displayName, org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText description, org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger writeMask, org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger userWriteMask)
      Construct a UaNode using only attributes defined prior to OPC UA 1.04.
    • UaNode

      public UaNode(OpcUaClient client, org.eclipse.milo.opcua.stack.core.types.builtin.NodeId nodeId, org.eclipse.milo.opcua.stack.core.types.enumerated.NodeClass nodeClass, org.eclipse.milo.opcua.stack.core.types.builtin.QualifiedName browseName, org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText displayName, org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText description, org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger writeMask, org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger userWriteMask, org.eclipse.milo.opcua.stack.core.types.structured.RolePermissionType[] rolePermissions, org.eclipse.milo.opcua.stack.core.types.structured.RolePermissionType[] userRolePermissions, org.eclipse.milo.opcua.stack.core.types.structured.AccessRestrictionType accessRestrictions)
      Construct a UaNode using all attributes, including those defined by OPC UA 1.04.
  • Method Details

    • getNodeId

      public org.eclipse.milo.opcua.stack.core.types.builtin.NodeId getNodeId()

      The returned attribute is the most recently seen value; it is not read live from the server.

      Specified by:
      getNodeId in interface org.eclipse.milo.opcua.sdk.core.nodes.Node
      See Also:
    • getNodeClass

      public org.eclipse.milo.opcua.stack.core.types.enumerated.NodeClass getNodeClass()

      The returned attribute is the most recently seen value; it is not read live from the server.

      Specified by:
      getNodeClass in interface org.eclipse.milo.opcua.sdk.core.nodes.Node
      See Also:
    • getBrowseName

      public org.eclipse.milo.opcua.stack.core.types.builtin.QualifiedName getBrowseName()

      The returned attribute is the most recently seen value; it is not read live from the server.

      Specified by:
      getBrowseName in interface org.eclipse.milo.opcua.sdk.core.nodes.Node
      See Also:
    • getDisplayName

      public org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText getDisplayName()

      The returned attribute is the most recently seen value; it is not read live from the server.

      Specified by:
      getDisplayName in interface org.eclipse.milo.opcua.sdk.core.nodes.Node
      See Also:
    • getDescription

      public @Nullable org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText getDescription()

      The returned attribute is the most recently seen value; it is not read live from the server.

      Specified by:
      getDescription in interface org.eclipse.milo.opcua.sdk.core.nodes.Node
      See Also:
    • getWriteMask

      public @Nullable org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger getWriteMask()

      The returned attribute is the most recently seen value; it is not read live from the server.

      Specified by:
      getWriteMask in interface org.eclipse.milo.opcua.sdk.core.nodes.Node
      See Also:
    • getUserWriteMask

      public @Nullable org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger getUserWriteMask()

      The returned attribute is the most recently seen value; it is not read live from the server.

      Specified by:
      getUserWriteMask in interface org.eclipse.milo.opcua.sdk.core.nodes.Node
      See Also:
    • getRolePermissions

      public @Nullable org.eclipse.milo.opcua.stack.core.types.structured.RolePermissionType[] getRolePermissions()

      The returned attribute is the most recently seen value; it is not read live from the server.

      Specified by:
      getRolePermissions in interface org.eclipse.milo.opcua.sdk.core.nodes.Node
      See Also:
    • getUserRolePermissions

      public @Nullable org.eclipse.milo.opcua.stack.core.types.structured.RolePermissionType[] getUserRolePermissions()

      The returned attribute is the most recently seen value; it is not read live from the server.

      Specified by:
      getUserRolePermissions in interface org.eclipse.milo.opcua.sdk.core.nodes.Node
      See Also:
    • getAccessRestrictions

      public @Nullable org.eclipse.milo.opcua.stack.core.types.structured.AccessRestrictionType getAccessRestrictions()

      The returned attribute is the most recently seen value; it is not read live from the server.

      Specified by:
      getAccessRestrictions in interface org.eclipse.milo.opcua.sdk.core.nodes.Node
      See Also:
    • setNodeId

      public void setNodeId(org.eclipse.milo.opcua.stack.core.types.builtin.NodeId nodeId)

      The attribute is only update locally; it is not written to the server.

      Specified by:
      setNodeId in interface org.eclipse.milo.opcua.sdk.core.nodes.Node
      See Also:
    • setNodeClass

      public void setNodeClass(org.eclipse.milo.opcua.stack.core.types.enumerated.NodeClass nodeClass)

      The attribute is only updated locally; it is not written to the server.

      Specified by:
      setNodeClass in interface org.eclipse.milo.opcua.sdk.core.nodes.Node
      See Also:
    • setBrowseName

      public void setBrowseName(org.eclipse.milo.opcua.stack.core.types.builtin.QualifiedName browseName)

      The attribute is only updated locally; it is not written to the server.

      Specified by:
      setBrowseName in interface org.eclipse.milo.opcua.sdk.core.nodes.Node
      See Also:
    • setDisplayName

      public void setDisplayName(org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText displayName)

      The attribute is only updated locally; it is not written to the server.

      Specified by:
      setDisplayName in interface org.eclipse.milo.opcua.sdk.core.nodes.Node
      See Also:
    • setDescription

      public void setDescription(org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText description)

      The attribute is only updated locally; it is not written to the server.

      Specified by:
      setDescription in interface org.eclipse.milo.opcua.sdk.core.nodes.Node
      See Also:
    • setWriteMask

      public void setWriteMask(org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger writeMask)

      The attribute is only updated locally; it is not written to the server.

      Specified by:
      setWriteMask in interface org.eclipse.milo.opcua.sdk.core.nodes.Node
      See Also:
    • setUserWriteMask

      public void setUserWriteMask(org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger userWriteMask)

      The attribute is only updated locally; it is not written to the server.

      Specified by:
      setUserWriteMask in interface org.eclipse.milo.opcua.sdk.core.nodes.Node
      See Also:
    • setRolePermissions

      public void setRolePermissions(org.eclipse.milo.opcua.stack.core.types.structured.RolePermissionType[] rolePermissions)
      The attribute is only updated locally; it is not written to the server.
      Specified by:
      setRolePermissions in interface org.eclipse.milo.opcua.sdk.core.nodes.Node
      See Also:
    • setUserRolePermissions

      public void setUserRolePermissions(org.eclipse.milo.opcua.stack.core.types.structured.RolePermissionType[] userRolePermissions)
      The attribute is only updated locally; it is not written to the server.
      Specified by:
      setUserRolePermissions in interface org.eclipse.milo.opcua.sdk.core.nodes.Node
      See Also:
    • setAccessRestrictions

      public void setAccessRestrictions(org.eclipse.milo.opcua.stack.core.types.structured.AccessRestrictionType accessRestrictions)
      The attribute is only updated locally; it is not written to the server.
      Specified by:
      setAccessRestrictions in interface org.eclipse.milo.opcua.sdk.core.nodes.Node
      See Also:
    • readNodeId

      public org.eclipse.milo.opcua.stack.core.types.builtin.NodeId readNodeId() throws org.eclipse.milo.opcua.stack.core.UaException
      Read the NodeId attribute for this Node from the server and update the local attribute if the operation succeeds.
      Returns:
      the NodeId read from the server.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • readNodeClass

      public org.eclipse.milo.opcua.stack.core.types.enumerated.NodeClass readNodeClass() throws org.eclipse.milo.opcua.stack.core.UaException
      Read the NodeClass attribute for this Node from the server and update the local attribute if the operation succeeds.
      Returns:
      the NodeClass read from the server.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • readBrowseName

      public org.eclipse.milo.opcua.stack.core.types.builtin.QualifiedName readBrowseName() throws org.eclipse.milo.opcua.stack.core.UaException
      Read the BrowseName attribute for this Node from the server and update the local attribute if the operation succeeds.
      Returns:
      the QualifiedName read from the server.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • readDisplayName

      public org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText readDisplayName() throws org.eclipse.milo.opcua.stack.core.UaException
      Read the DisplayName attribute for this Node from the server and update the local attribute if the operation succeeds.
      Returns:
      the LocalizedText read from the server.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • readDescription

      public @Nullable org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText readDescription() throws org.eclipse.milo.opcua.stack.core.UaException
      Read the Description attribute for this Node from the server and update the local attribute if the operation succeeds.
      Returns:
      the LocalizedText read from the server.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • readWriteMask

      public @Nullable org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger readWriteMask() throws org.eclipse.milo.opcua.stack.core.UaException
      Read the WriteMask attribute for this Node from the server and update the local attribute if the operation succeeds.
      Returns:
      the UInteger read from the server.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • readUserWriteMask

      public @Nullable org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger readUserWriteMask() throws org.eclipse.milo.opcua.stack.core.UaException
      Read the UserWriteMask attribute for this Node from the server and update the local attribute if the operation succeeds.
      Returns:
      the UInteger read from the server.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • readRolePermissions

      public @Nullable org.eclipse.milo.opcua.stack.core.types.structured.RolePermissionType[] readRolePermissions() throws org.eclipse.milo.opcua.stack.core.UaException
      Read the RolePermissions attribute for this Node from the server and update the local attribute if the operation succeeds.
      Returns:
      the RolePermissionType read from the server.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • readUserRolePermissions

      public @Nullable org.eclipse.milo.opcua.stack.core.types.structured.RolePermissionType[] readUserRolePermissions() throws org.eclipse.milo.opcua.stack.core.UaException
      Read the UserRolePermissions attribute for this Node from the server and update the local attribute if the operation succeeds.
      Returns:
      the RolePermissionType read from the server.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • readAccessRestrictions

      public @Nullable org.eclipse.milo.opcua.stack.core.types.structured.AccessRestrictionType readAccessRestrictions() throws org.eclipse.milo.opcua.stack.core.UaException
      Read the AccessRestrictions attribute for this Node from the server and update the local attribute if the operation succeeds.
      Returns:
      the AccessRestrictionType read from the server.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • writeNodeId

      public void writeNodeId(org.eclipse.milo.opcua.stack.core.types.builtin.NodeId nodeId) throws org.eclipse.milo.opcua.stack.core.UaException
      Write a new NodeId attribute for this Node to the server and update the local attribute if the operation succeeds.
      Parameters:
      nodeId - the NodeId to write to the server.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • writeNodeClass

      public void writeNodeClass(org.eclipse.milo.opcua.stack.core.types.enumerated.NodeClass nodeClass) throws org.eclipse.milo.opcua.stack.core.UaException
      Write a new NodeClass attribute for this Node to the server and update the local attribute if the operation succeeds.
      Parameters:
      nodeClass - the NodeClass to write to the server.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • writeBrowseName

      public void writeBrowseName(org.eclipse.milo.opcua.stack.core.types.builtin.QualifiedName browseName) throws org.eclipse.milo.opcua.stack.core.UaException
      Write a new BrowseName attribute for this Node to the server and update the local attribute if the operation succeeds.
      Parameters:
      browseName - the QualifiedName to write to the server.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • writeDisplayName

      public void writeDisplayName(org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText displayName) throws org.eclipse.milo.opcua.stack.core.UaException
      Write a new DisplayName attribute for this Node to the server and update the local attribute if the operation succeeds.
      Parameters:
      displayName - the LocalizedText to write to the server.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • writeDescription

      public void writeDescription(org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText description) throws org.eclipse.milo.opcua.stack.core.UaException
      Write a new Description attribute for this Node to the server and update the local attribute if the operation succeeds.
      Parameters:
      description - the LocalizedText to write to the server.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • writeWriteMask

      public void writeWriteMask(org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger writeMask) throws org.eclipse.milo.opcua.stack.core.UaException
      Write a new WriteMask attribute for this Node to the server and update the local attribute if the operation succeeds.
      Parameters:
      writeMask - the UInteger to write to the server.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • writeUserWriteMask

      public void writeUserWriteMask(org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger userWriteMask) throws org.eclipse.milo.opcua.stack.core.UaException
      Write a new UserWriteMask attribute for this Node to the server and update the local attribute if the operation succeeds.
      Parameters:
      userWriteMask - the UInteger to write to the server.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • writeRolePermissions

      public void writeRolePermissions(org.eclipse.milo.opcua.stack.core.types.structured.RolePermissionType[] rolePermissions) throws org.eclipse.milo.opcua.stack.core.UaException
      Write a new RolePermissions attribute for this Node to the server and update the local attribute if the operation succeeds.
      Parameters:
      rolePermissions - the RolePermissionType to write to the server.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • writeUserRolePermissions

      public void writeUserRolePermissions(org.eclipse.milo.opcua.stack.core.types.structured.RolePermissionType[] userRolePermissions) throws org.eclipse.milo.opcua.stack.core.UaException
      Write a new UserRolePermissions attribute for this Node to the server and update the local attribute if the operation succeeds.
      Parameters:
      userRolePermissions - the RolePermissionType to write to the server.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • writeAccessRestrictions

      public void writeAccessRestrictions(org.eclipse.milo.opcua.stack.core.types.structured.AccessRestrictionType accessRestrictions) throws org.eclipse.milo.opcua.stack.core.UaException
      Write a new AccessRestrictions attribute for this Node to the server and update the local attribute if the operation succeeds.
      Parameters:
      accessRestrictions - the AccessRestrictionType to write to the server.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • readAttribute

      public org.eclipse.milo.opcua.stack.core.types.builtin.DataValue readAttribute(org.eclipse.milo.opcua.stack.core.AttributeId attributeId) throws org.eclipse.milo.opcua.stack.core.UaException
      Read the attribute identified by an attributeId from the server.

      This operation does not update the local attribute.

      Parameters:
      attributeId - the AttributeId of the attribute to read.
      Returns:
      a DataValue containing the attribute value.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service-level error occurs.
    • writeAttribute

      public org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode writeAttribute(org.eclipse.milo.opcua.stack.core.AttributeId attributeId, org.eclipse.milo.opcua.stack.core.types.builtin.DataValue value) throws org.eclipse.milo.opcua.stack.core.UaException
      Write value to the attribute identified by attributeId.

      This operation does not update the local attribute.

      Parameters:
      attributeId - the AttributeId of the attribute to write.
      value - a DataValue containing the attribute value.
      Returns:
      the StatusCode from the write operation.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service-level error occurs.
    • readAttributeAsync

      public CompletableFuture<org.eclipse.milo.opcua.stack.core.types.builtin.DataValue> readAttributeAsync(org.eclipse.milo.opcua.stack.core.AttributeId attributeId)
      An asynchronous implementation of readAttribute(AttributeId).
      Returns:
      a CompletableFuture that completes successfully with the attribute value or completes exceptionally if a service-level error occurs.
      See Also:
    • writeAttributeAsync

      public CompletableFuture<org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode> writeAttributeAsync(org.eclipse.milo.opcua.stack.core.AttributeId attributeId, org.eclipse.milo.opcua.stack.core.types.builtin.DataValue value)
      An asynchronous implementation of writeAttribute(AttributeId, DataValue).
      Returns:
      a CompletableFuture that completes successfully with the operation result or completes exceptionally if a service-level error occurs.
    • browse

      public List<org.eclipse.milo.opcua.stack.core.types.structured.ReferenceDescription> browse() throws org.eclipse.milo.opcua.stack.core.UaException
      Call the Browse service to get this UaNode's references, using the currently configured AddressSpace.BrowseOptions from the AddressSpace.
      Returns:
      a List of ReferenceDescriptions.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service-level error occurs.
      See Also:
    • browse

      public List<org.eclipse.milo.opcua.stack.core.types.structured.ReferenceDescription> browse(AddressSpace.BrowseOptions browseOptions) throws org.eclipse.milo.opcua.stack.core.UaException
      Call the Browse service to get this UaNode's references.
      Parameters:
      browseOptions - the AddressSpace.BrowseOptions to browse with.
      Returns:
      a List of ReferenceDescriptions.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service-level error occurs.
    • browseAsync

      public CompletableFuture<List<org.eclipse.milo.opcua.stack.core.types.structured.ReferenceDescription>> browseAsync()
      Call the Browse service to get this UaNode's references, using the currently configured AddressSpace.BrowseOptions from the AddressSpace.

      This call completes asynchronously.

      Returns:
      a CompletableFuture that completes successfully with the List of references or completes exceptionally if a service-level error occurs.
      See Also:
    • browseAsync

      public CompletableFuture<List<org.eclipse.milo.opcua.stack.core.types.structured.ReferenceDescription>> browseAsync(AddressSpace.BrowseOptions browseOptions)
      Call the Browse service to get this UaNode's references.

      This call completes asynchronously.

      Parameters:
      browseOptions - the AddressSpace.BrowseOptions to browse with.
      Returns:
      a CompletableFuture that completes successfully with the List of references or completes exceptionally if a service-level error occurs.
    • browseNodes

      public List<? extends UaNode> browseNodes() throws org.eclipse.milo.opcua.stack.core.UaException
      Call the Browse service to get the UaNodes referenced by this Node, using the currently configured AddressSpace.BrowseOptions from the AddressSpace.
      Returns:
      a List of UaNodes referenced by this Node.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service-level error occurs.
      See Also:
    • browseNodes

      public List<? extends UaNode> browseNodes(AddressSpace.BrowseOptions browseOptions) throws org.eclipse.milo.opcua.stack.core.UaException
      Call the Browse service to get the UaNodes referenced by this Node.
      Parameters:
      browseOptions - the AddressSpace.BrowseOptions to browse with.
      Returns:
      a List of UaNodes referenced by this Node.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service-level error occurs.
    • browseNodesAsync

      public CompletableFuture<List<? extends UaNode>> browseNodesAsync()
      Call the Browse service to get the UaNodes referenced by this Node, using the currently configured AddressSpace.BrowseOptions from the AddressSpace.

      This call completes asynchronously.

      Returns:
      a CompletableFuture that completes successfully with the List of UaNodes referenced by this Node or completes exceptionally if a service-level error occurs.
      See Also:
    • browseNodesAsync

      public CompletableFuture<List<? extends UaNode>> browseNodesAsync(AddressSpace.BrowseOptions browseOptions)
      Call the Browse service to get the UaNodes referenced by this Node.

      This call completes asynchronously.

      Parameters:
      browseOptions - the AddressSpace.BrowseOptions to browse with.
      Returns:
      a CompletableFuture that completes successfully with the List of UaNodes referenced by this Node or completes exceptionally if a service-level error occurs.
    • refresh

      public List<org.eclipse.milo.opcua.stack.core.types.builtin.DataValue> refresh(Set<org.eclipse.milo.opcua.stack.core.AttributeId> attributeIds) throws org.eclipse.milo.opcua.stack.core.UaException
      Refresh (read) the attributes identified by attributeIds and store their values locally.
      Parameters:
      attributeIds - a Set identifying the attributes to refresh.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • refreshAsync

      public CompletableFuture<List<org.eclipse.milo.opcua.stack.core.types.builtin.DataValue>> refreshAsync(Set<org.eclipse.milo.opcua.stack.core.AttributeId> attributeIds)
      An asynchronous implementation of refresh(Set).
    • synchronize

      public List<org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode> synchronize(Set<org.eclipse.milo.opcua.stack.core.AttributeId> attributeIds) throws org.eclipse.milo.opcua.stack.core.UaException
      Synchronize (write) the local attributes identified by attributeIds to the server.
      Parameters:
      attributeIds - a Set identifying the local attributes to write.
      Throws:
      org.eclipse.milo.opcua.stack.core.UaException - if a service- or operation-level error occurs.
    • synchronizeAsync

      public CompletableFuture<List<org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode>> synchronizeAsync(Set<org.eclipse.milo.opcua.stack.core.AttributeId> attributeIds)
      An asynchronous implementation of synchronize(Set).
    • canonicalize

      public UaNode canonicalize()
      Make this Node instance the canonical instance of the Node identified this Node's NodeId.

      This Node will not expire from the cache until it is explicitly invalidated and all get or create calls to the NodeCache will return this instance.

      If a canonical instance already exists in the NodeCache then that instance is returned instead.

      Returns:
      this UaNode if there was not already a canonical instance in the NodeCache, otherwise the other canonical instance from the NodeCache.
    • invalidate

      public UaNode invalidate()
      Invalidate this Node's entry in the NodeCache as well as its status as the canonical Node, if applicable
      Returns:
      this UaNode.
    • getAttributeValue

      protected org.eclipse.milo.opcua.stack.core.types.builtin.DataValue getAttributeValue(org.eclipse.milo.opcua.stack.core.AttributeId attributeId)
    • setAttributeValue

      protected void setAttributeValue(org.eclipse.milo.opcua.stack.core.AttributeId attributeId, org.eclipse.milo.opcua.stack.core.types.builtin.DataValue value)
    • getMemberNodeAsync

      protected CompletableFuture<UaNode> getMemberNodeAsync(String namespaceUri, String name, org.eclipse.milo.opcua.stack.core.types.builtin.ExpandedNodeId referenceTypeId, boolean includeSubtypes)
    • findMemberNodeId

      protected CompletableFuture<org.eclipse.milo.opcua.stack.core.types.builtin.ExpandedNodeId> findMemberNodeId(org.eclipse.milo.opcua.stack.core.types.builtin.QualifiedName name, org.eclipse.milo.opcua.stack.core.types.builtin.ExpandedNodeId referenceTypeId, boolean includeSubtypes)
    • readNamespaceIndex

      protected CompletableFuture<org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UShort> readNamespaceIndex(String namespaceUri)
    • getComponentAsync

      protected CompletableFuture<? extends UaNode> getComponentAsync(org.eclipse.milo.opcua.stack.core.types.builtin.QualifiedName browseName, org.eclipse.milo.opcua.stack.core.types.enumerated.NodeClass nodeClass)
    • getPropertyNodeAsync

      protected CompletableFuture<PropertyTypeNode> getPropertyNodeAsync(org.eclipse.milo.opcua.sdk.core.QualifiedProperty<?> property)
    • getPropertyNodeAsync

      protected CompletableFuture<PropertyTypeNode> getPropertyNodeAsync(org.eclipse.milo.opcua.stack.core.types.builtin.QualifiedName browseName)
    • getProperty

      public <T> CompletableFuture<T> getProperty(org.eclipse.milo.opcua.sdk.core.QualifiedProperty<T> property)
    • setProperty

      protected <T> CompletableFuture<org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode> setProperty(org.eclipse.milo.opcua.sdk.core.QualifiedProperty<T> property, T value)
    • readProperty

      protected CompletableFuture<org.eclipse.milo.opcua.stack.core.types.builtin.DataValue> readProperty(org.eclipse.milo.opcua.sdk.core.QualifiedProperty<?> property)
    • writeProperty

      protected CompletableFuture<org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode> writeProperty(org.eclipse.milo.opcua.sdk.core.QualifiedProperty<?> property, org.eclipse.milo.opcua.stack.core.types.builtin.DataValue value)
    • cast

      protected <T> T cast(Object o, Class<T> clazz)
      An implementation of cast with special handling for UaEnumeratedType and UaStructuredType destination types.

      If the destination type is a UaEnumeratedType and the from object is an Integer, an attempt is made to convert the Integer into the corresponding UaEnumeration type.

      If the destination type is a UaStructuredType and the from object is an ExtensionObject, an attempt is made to decode the ExtensionObject into an object cast to the type of clazz.

      Parameters:
      o - the Object to cast from.
      clazz - the type to cast o to.
      Returns:
      the object after casting, or null if o is null.