com.prosysopc.ua.server.nodes
Class ServerNode

java.lang.Object
  extended by com.prosysopc.ua.nodes.AbstractUaNode
      extended by com.prosysopc.ua.server.nodes.ServerNode
All Implemented Interfaces:
UaNode
Direct Known Subclasses:
BaseNode, InstanceVariable

public abstract class ServerNode
extends AbstractUaNode

An abstract base class for all server side nodes. Sub classes are divided in two categories, BaseNode and the ones inherited from it, which keep all the relevant node attributes in memory and other types, which try to optimize the memory consumption, for example to enable a more light weight implementation.


Field Summary
protected  List<EventListener> eventListeners
           
protected static org.opcfoundation.ua.builtintypes.DateTime INITIALIZATION_TIME
           
protected  NodeManagerUaNode nodeManager
           
protected static Map<Class<? extends UaNode>,List<org.opcfoundation.ua.builtintypes.UnsignedInteger>> supportedAttributesMap
           
 
Constructor Summary
ServerNode(NodeManagerUaNode nodeManager, org.opcfoundation.ua.builtintypes.NodeId nodeId)
           
 
Method Summary
 UaReference addComponent(UaNode node)
          Adds a new component to the Node.
 void addDataChangeListener(DataChangeListener listener)
          Add a listener for the DataChange notification event.
 void addEventListener(EventListener listener)
           
 UaReference addNewReference(org.opcfoundation.ua.builtintypes.NodeId targetNodeId, org.opcfoundation.ua.builtintypes.NodeId referenceTypeId, boolean isInverse)
          Adds a reference to this node, without checking for duplicates.
 UaReference addNewReference(UaNode targetNode, org.opcfoundation.ua.builtintypes.NodeId referenceTypeId, boolean isInverse)
          Adds a reference to this node, without checking for duplicates.
 UaReference addOrganizes(UaNode target)
          This is a convenience method that adds a new Organizes reference from this node to the target node.
 void addProperties(UaProperty[] properties)
           
 UaReference addProperty(UaProperty property)
          Add a new property node to the node.
 UaReference addReference(org.opcfoundation.ua.builtintypes.ExpandedNodeId nodeId, org.opcfoundation.ua.builtintypes.NodeId referenceTypeId, boolean isInverse)
          Convenience method for UaNode.addReference(NodeId, NodeId, boolean) that uses ExpandedNodeId instead of NodeId.
 UaReference addReference(org.opcfoundation.ua.builtintypes.NodeId nodeId, org.opcfoundation.ua.builtintypes.NodeId referenceTypeId, boolean isInverse)
          Adds a new reference of the specified type to the specified node.
 UaReference addReference(UaNode targetNode, org.opcfoundation.ua.builtintypes.ExpandedNodeId referenceTypeId, boolean isInverse)
          Convenience method for addReference(UaNode, NodeId, boolean)
 UaReference addReference(UaNode targetNode, org.opcfoundation.ua.builtintypes.NodeId referenceTypeId, boolean isInverse)
          Add a reference to the node.
 UaReference addReference(UaNode targetNode, UaReferenceType referenceType, boolean isInverse)
           
protected  UaReference addReference(UaReference reference)
           
protected  void afterAddReference(UaReference reference)
           
protected  void afterDeleteReference(UaReference reference)
           
protected  boolean beforeAddReference(UaReference reference)
           
protected  void dataChange(org.opcfoundation.ua.builtintypes.UnsignedInteger attributeId, org.opcfoundation.ua.builtintypes.DataValue prevValue, org.opcfoundation.ua.builtintypes.DataValue value)
          Notify a change in attribute value.
 UaReference deleteReference(org.opcfoundation.ua.builtintypes.ExpandedNodeId targetNodeId, org.opcfoundation.ua.builtintypes.NodeId referenceTypeId, boolean isInverse)
          Delete a reference from the node.
 UaReference deleteReference(org.opcfoundation.ua.builtintypes.NodeId nodeId, org.opcfoundation.ua.builtintypes.NodeId referenceTypeId, boolean isInverse)
          Delete a reference from the node.
 UaReference deleteReference(UaNode targetNode, org.opcfoundation.ua.builtintypes.NodeId referenceTypeId, boolean isInverse)
          Delete a reference from the node.
 UaReference deleteReference(UaReference reference)
          Delete a reference from the node.
 void deleteReferences(org.opcfoundation.ua.builtintypes.NodeId targetId)
          Delete all references to a target node.
protected  boolean doAddProperty(UaProperty targetNode)
           
protected  UaReference doDeleteReference(UaReference reference)
           
 boolean equals(Object obj)
           
protected
<T extends UaNode>
List<T>
findPlaceholders(Class<T> clazz, org.opcfoundation.ua.builtintypes.ExpandedNodeId placeholderId, org.opcfoundation.ua.builtintypes.ExpandedNodeId referenceTypeId)
          Searches UaNodes that match given Placeholder ModellingRule node.
protected  void fireDataChange(org.opcfoundation.ua.builtintypes.DataValue prevValue, org.opcfoundation.ua.builtintypes.DataValue value)
          Fire the DataChange notification event.
protected  void fireEvent(EventData eventData, List<ServerNode> sentNodes)
          Fire an Event notification event.
protected  void fireEventInParents(EventData eventData, List<ServerNode> sentNodes, org.opcfoundation.ua.builtintypes.NodeId... referenceTypeIds)
          Calls fireEvent for all specified parent nodes, i.e. nodes that are connected via an inverse reference of the specified referenceTypes
 NodeManagerTable getAddressSpace()
          Returns the (@link UaAddressSpace) of the (@link UaNode).
protected  org.opcfoundation.ua.builtintypes.QualifiedName getDefaultBrowseName(org.opcfoundation.ua.builtintypes.NodeId nodeId, String name)
          Define the default browseName to create using the name and nodeId.
 org.opcfoundation.ua.builtintypes.NodeId getNodeId()
          Nodes are unambiguously identified using a constructed identifier called the NodeId.
 NodeManagerUaNode getNodeManager()
           
 UaReference getReference(org.opcfoundation.ua.builtintypes.NodeId referenceTypeId, boolean isInverse)
          Finds the first reference of the specified reference type.
protected  Collection<UaReference> getReferenceList()
          Returns all references the node has.
 UaReference[] getReferences(org.opcfoundation.ua.builtintypes.NodeId referenceTypeId, boolean isInverse)
          Finds all references of the specified reference type.
 org.opcfoundation.ua.builtintypes.UnsignedInteger[] getSupportedAttributes()
           
protected  List<UaNode> getTargetNodes(org.opcfoundation.ua.builtintypes.NodeId referenceTypeId)
           
 int hashCode()
           
protected  UaReference hasReference(UaReference reference)
           
protected  void initSupportedAttributes(List<org.opcfoundation.ua.builtintypes.UnsignedInteger> l)
           
static boolean isAddNotifierReferencesToServerObject()
           
protected  boolean isFalseOrNull(Boolean value)
           
 boolean isMandatory()
          Has this node been defined as mandatory in the type hierarchy?
protected  boolean isMonitoredForEvents(UaObject event)
           
protected  boolean isTrueOrNull(Boolean value)
           
protected  boolean isType()
           
protected  boolean referenceTypeInherits(org.opcfoundation.ua.builtintypes.NodeId typeId, org.opcfoundation.ua.builtintypes.NodeId... referenceTypeIds)
          Checks if the given reference type inherits from any of the defined types.
 UaNode removeComponent(UaNode component)
          Remove a component reference from the node.
 void removeDataChangeListener(DataChangeListener listener)
          Add a listener for the DataChange notification event.
 void removeEventListener(EventListener eventListener)
           
static void setAddNotifierReferencesToServerObject(boolean addNotifierReferencesToServerObject)
          Define whether HasNotifier references should be added from all "top-level notifier (and event source)" instances to the Server object.
 void setReferences(UaReference[] references)
          Set all references of the node at one call.
 boolean supportsAttribute(org.opcfoundation.ua.builtintypes.UnsignedInteger attributeId)
          Check if the node supports the specified attribute.
 String toString()
           
protected  org.opcfoundation.ua.builtintypes.NodeId[] translateBrowsePathToNodeIds(org.opcfoundation.ua.builtintypes.NodeId startingNode, org.opcfoundation.ua.builtintypes.QualifiedName... path)
           
protected  void validateHasEventSourceChain(Set<org.opcfoundation.ua.builtintypes.NodeId> chain)
          Parameterless method that is called recursively
protected  void validateHasEventSourceChain(UaReference sReference)
          Validates the HasEventSource chain all the way up to the Server Object, assuming that this is called in the sReference's target node
protected  void writeAttributeValue(org.opcfoundation.ua.builtintypes.UnsignedInteger attributeId, Object value, org.opcfoundation.ua.builtintypes.StatusCode statusCode, org.opcfoundation.ua.builtintypes.DateTime sourceTime, org.opcfoundation.ua.builtintypes.UnsignedShort sourcePicoseconds)
           
 
Methods inherited from class com.prosysopc.ua.nodes.AbstractUaNode
getForwardReferences, getInverseReferences, getReferences, getReferences, getReferencesAsList, referenceTypeInherits
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.prosysopc.ua.nodes.UaNode
getAttributes, getBrowseName, getComponent, getComponents, getDescription, getDisplayName, getMethod, getNodeClass, getNodeVersion, getProperties, getProperty, getUserWriteMask, getWriteMask, hasUserWriteAccess, hasWriteAccess, readAttribute, readAttribute, removeProperty, setAttribute, setAttributes, setBrowseName, setDescription, setDisplayName, setUserWriteMask, setWriteMask, writeAttribute
 

Field Detail

INITIALIZATION_TIME

protected static final org.opcfoundation.ua.builtintypes.DateTime INITIALIZATION_TIME

supportedAttributesMap

protected static final Map<Class<? extends UaNode>,List<org.opcfoundation.ua.builtintypes.UnsignedInteger>> supportedAttributesMap

eventListeners

protected List<EventListener> eventListeners

nodeManager

protected final NodeManagerUaNode nodeManager
Constructor Detail

ServerNode

public ServerNode(NodeManagerUaNode nodeManager,
                  org.opcfoundation.ua.builtintypes.NodeId nodeId)
Parameters:
nodeManager -
nodeId -
Method Detail

isAddNotifierReferencesToServerObject

public static boolean isAddNotifierReferencesToServerObject()
Returns:
true, if HasNotifier references should be added from all "top-level notifier (and event source)" instances to the Server object

setAddNotifierReferencesToServerObject

public static void setAddNotifierReferencesToServerObject(boolean addNotifierReferencesToServerObject)
Define whether HasNotifier references should be added from all "top-level notifier (and event source)" instances to the Server object.

Parameters:
addNotifierReferencesToServerObject - if true, new references will be added automatically. If false, not. Default is true.

addComponent

public UaReference addComponent(UaNode node)
Adds a new component to the Node. This is a convenience method that adds a new HasComponent reference with target set to the node. The node must be a data variable, object or method.

Parameters:
node - the component node
Returns:
the HasComponent reference that was added (or existed already)
Throws:
IllegalArgumentException - if the node is not of the correct class (see above)
See Also:
UaNode.addReference(UaNode, NodeId, boolean)

addDataChangeListener

public void addDataChangeListener(DataChangeListener listener)
Add a listener for the DataChange notification event.

Parameters:
listener -

addEventListener

public void addEventListener(EventListener listener)
Parameters:
listener -

addNewReference

public UaReference addNewReference(org.opcfoundation.ua.builtintypes.NodeId targetNodeId,
                                   org.opcfoundation.ua.builtintypes.NodeId referenceTypeId,
                                   boolean isInverse)
Adds a reference to this node, without checking for duplicates. NOTE! In most cases, it is better to call addReference(NodeId, NodeId, boolean) instead of this method as that method does check for duplicates, however if you are sure the reference does not already exist calling this method is faster.


addNewReference

public UaReference addNewReference(UaNode targetNode,
                                   org.opcfoundation.ua.builtintypes.NodeId referenceTypeId,
                                   boolean isInverse)
Adds a reference to this node, without checking for duplicates. NOTE! In most cases, it is better to call addReference(UaNode, NodeId, boolean) instead of this method as that method does check for duplicates, however if you are sure the reference does not already exist calling this method is faster.


addOrganizes

public UaReference addOrganizes(UaNode target)
This is a convenience method that adds a new Organizes reference from this node to the target node.

Parameters:
node - the target of Organizes reference
Returns:
the Organizes reference that was added (or existed already)
See Also:
addReference(UaNode, NodeId, boolean)

addProperties

public void addProperties(UaProperty[] properties)
Parameters:
properties -

addProperty

public UaReference addProperty(UaProperty property)
Description copied from interface: UaNode
Add a new property node to the node. All other node types can have properties, except property nodes.

Adds a new forward HasProperty reference with target to the property node.

Parameters:
property - the property to add to the node
Returns:
the property reference that was added (or existed already) or null, if the reference type is not supported by the node (i.e. UaProperty may not have HasProperty references).

addReference

public UaReference addReference(org.opcfoundation.ua.builtintypes.ExpandedNodeId nodeId,
                                org.opcfoundation.ua.builtintypes.NodeId referenceTypeId,
                                boolean isInverse)
Description copied from interface: UaNode
Convenience method for UaNode.addReference(NodeId, NodeId, boolean) that uses ExpandedNodeId instead of NodeId.

Parameters:
nodeId - The target node
referenceTypeId - The reference type
isInverse - Whether the reference is an inverse reference (or forward, if isInverse=false)
Returns:
the reference that was added (or existed already) or null, if the reference type is not supported by the node (i.e. UaProperty may only have inverse HasProperty references).

addReference

public UaReference addReference(org.opcfoundation.ua.builtintypes.NodeId nodeId,
                                org.opcfoundation.ua.builtintypes.NodeId referenceTypeId,
                                boolean isInverse)
Description copied from interface: UaNode
Adds a new reference of the specified type to the specified node. If a similar reference already exists, does not add a new, but returns a reference to the existing reference.

Parameters:
nodeId - The target node of the reference
referenceTypeId - The reference type
isInverse - Whether the reference is an inverse reference (or forward, if isInverse=false)
Returns:
the reference that was added (or existed already) or null, if the reference type is not supported by the node (i.e. UaProperty may only have inverse HasProperty references).

addReference

public UaReference addReference(UaNode targetNode,
                                org.opcfoundation.ua.builtintypes.ExpandedNodeId referenceTypeId,
                                boolean isInverse)
Convenience method for addReference(UaNode, NodeId, boolean)

Parameters:
targetNode - reference Node to be added
referenceTypeId - type of reference to be added
isInverse - true if target node should be a source
Returns:
the new UaReference instance
Throws:
IllegalArgumentException - if the referenceTypeId cannot be converted to NodeId

addReference

public UaReference addReference(UaNode targetNode,
                                org.opcfoundation.ua.builtintypes.NodeId referenceTypeId,
                                boolean isInverse)
Description copied from interface: UaNode
Add a reference to the node. If the node already has a similar reference, it simply returns the existing reference.

Parameters:
targetNode - The target node where the reference points to.
referenceTypeId - The type of reference.
isInverse - Whether the reference is an inverse reference.
Returns:
the reference that was added (or existed already) or null, if the reference type is not supported by the node (i.e. UaProperty may only have inverse HasProperty references).

addReference

public UaReference addReference(UaNode targetNode,
                                UaReferenceType referenceType,
                                boolean isInverse)

deleteReference

public UaReference deleteReference(org.opcfoundation.ua.builtintypes.ExpandedNodeId targetNodeId,
                                   org.opcfoundation.ua.builtintypes.NodeId referenceTypeId,
                                   boolean isInverse)
Description copied from interface: UaNode
Delete a reference from the node.

Parameters:
targetNodeId - The target node of the reference.
referenceTypeId - The exact type of reference.
isInverse - Whether to remove a forward reference. If false, deletes an inverse reference only.
Returns:
the reference that was deleted or null if it did not exist

deleteReference

public UaReference deleteReference(org.opcfoundation.ua.builtintypes.NodeId nodeId,
                                   org.opcfoundation.ua.builtintypes.NodeId referenceTypeId,
                                   boolean isInverse)
Description copied from interface: UaNode
Delete a reference from the node.

Parameters:
nodeId - The target node of the reference.
referenceTypeId - The exact type of reference.
isInverse - Whether to remove a forward reference. If false, deletes an inverse reference only.

deleteReference

public UaReference deleteReference(UaNode targetNode,
                                   org.opcfoundation.ua.builtintypes.NodeId referenceTypeId,
                                   boolean isInverse)
Description copied from interface: UaNode
Delete a reference from the node.

Parameters:
targetNode - The target node of the reference.
referenceTypeId - The exact type of reference.
isInverse - Whether to remove a forward reference. If false, deletes an inverse reference only.

deleteReference

public UaReference deleteReference(UaReference reference)
Description copied from interface: UaNode
Delete a reference from the node.

Parameters:
reference - The reference to delete.

deleteReferences

public void deleteReferences(org.opcfoundation.ua.builtintypes.NodeId targetId)
Delete all references to a target node.

Parameters:
targetId - NodeId of the target node to which the references should be removed.

equals

public boolean equals(Object obj)
Overrides:
equals in class Object

getAddressSpace

public NodeManagerTable getAddressSpace()
Returns the (@link UaAddressSpace) of the (@link UaNode).

Returns:
the (@link UaAddressSpace) of the (@link UaNode).

getNodeId

public org.opcfoundation.ua.builtintypes.NodeId getNodeId()
Description copied from interface: UaNode
Nodes are unambiguously identified using a constructed identifier called the NodeId. Some servers may accept alternative NodeIds in addition to the canonical NodeId represented in this Attribute.

Returns:
the ID of the node.

getNodeManager

public NodeManagerUaNode getNodeManager()

getReference

public UaReference getReference(org.opcfoundation.ua.builtintypes.NodeId referenceTypeId,
                                boolean isInverse)
Finds the first reference of the specified reference type.

Parameters:
referenceTypeId - the reference type to search (or null to accept any)
isInverse - To search for inverse reference, instead of non-inverse (applied also if null referenceType is defined)
Returns:
the reference or null if no reference is found

getReferences

public UaReference[] getReferences(org.opcfoundation.ua.builtintypes.NodeId referenceTypeId,
                                   boolean isInverse)
Finds all references of the specified reference type.

Parameters:
referenceTypeId - the reference type to search (or null to accept any)
isInverse - To search for inverse reference, instead of non-inverse (applied also if null referenceType is defined)
Returns:
the references; if no references are found an empty array is returned

getSupportedAttributes

public org.opcfoundation.ua.builtintypes.UnsignedInteger[] getSupportedAttributes()
Returns:
list of attributes supported by this node class

hashCode

public int hashCode()
Overrides:
hashCode in class Object

isMandatory

public boolean isMandatory()
Has this node been defined as mandatory in the type hierarchy?

Returns:
true if is

removeComponent

public UaNode removeComponent(UaNode component)
Description copied from interface: UaNode
Remove a component reference from the node.

This is a shortcut for

 deleteReference(component, Identifiers.HasComponent, false);
 

Note that the method does not remove the component - it only removes the reference to it.

Parameters:
component - the component node to remove
See Also:
UaNode.deleteReference(UaNode, NodeId, boolean)

removeDataChangeListener

public void removeDataChangeListener(DataChangeListener listener)
Add a listener for the DataChange notification event.

Parameters:
listener -

removeEventListener

public void removeEventListener(EventListener eventListener)
Parameters:
eventListener -

setReferences

public void setReferences(UaReference[] references)
Description copied from interface: UaNode
Set all references of the node at one call. Note that this will replace all previously set references.

Use UaNode.addReference(org.opcfoundation.ua.builtintypes.ExpandedNodeId, org.opcfoundation.ua.builtintypes.NodeId, boolean) to add new references to the node.

Parameters:
references - the references to set
See Also:
UaNode.getReferences(), UaNode.getReference(NodeId, boolean)

supportsAttribute

public boolean supportsAttribute(org.opcfoundation.ua.builtintypes.UnsignedInteger attributeId)
Description copied from interface: UaNode
Check if the node supports the specified attribute.

Use the method to check if the node object you have is actually supporting a specific UA Attribute. The supported attributes are available from specific Java properties, and the values can also be read with UaNode.readAttribute(org.opcfoundation.ua.builtintypes.UnsignedInteger).

Parameters:
attributeId - the attribute to check - the valid values are defined in Attributes
Returns:
true if the node supports the attribute

toString

public String toString()
Overrides:
toString in class Object

addReference

protected final UaReference addReference(UaReference reference)

afterAddReference

protected void afterAddReference(UaReference reference)
Parameters:
reference -

afterDeleteReference

protected void afterDeleteReference(UaReference reference)
Parameters:
reference -

beforeAddReference

protected boolean beforeAddReference(UaReference reference)
Parameters:
reference -
Returns:

dataChange

protected void dataChange(org.opcfoundation.ua.builtintypes.UnsignedInteger attributeId,
                          org.opcfoundation.ua.builtintypes.DataValue prevValue,
                          org.opcfoundation.ua.builtintypes.DataValue value)
Notify a change in attribute value. NOTE! this method only handles Attributes.Value changes, others are skipped.


doAddProperty

protected boolean doAddProperty(UaProperty targetNode)
Parameters:
targetNode -
Returns:

doDeleteReference

protected UaReference doDeleteReference(UaReference reference)
Parameters:
reference -
Returns:

findPlaceholders

protected <T extends UaNode> List<T> findPlaceholders(Class<T> clazz,
                                                      org.opcfoundation.ua.builtintypes.ExpandedNodeId placeholderId,
                                                      org.opcfoundation.ua.builtintypes.ExpandedNodeId referenceTypeId)
Searches UaNodes that match given Placeholder ModellingRule node. Returns all nodes that are reference by same or subtype ReferenceType and have same TypeDefinition or subtype than the given placeholder InstanceDeclaration. Note! If the placeholder does not have a TypeDefinition (e.g. it is Method), then the comparison is done using NodeClass only.

Parameters:
clazz -
placeholderId -
referenceTypeId -
Returns:
nodes that match given conditions or empty if none match. Returns null if exception encountered.

fireDataChange

protected void fireDataChange(org.opcfoundation.ua.builtintypes.DataValue prevValue,
                              org.opcfoundation.ua.builtintypes.DataValue value)
Fire the DataChange notification event.

Parameters:
prevValue -
value -

fireEvent

protected void fireEvent(EventData eventData,
                         List<ServerNode> sentNodes)
Fire an Event notification event.

Sends the event to all EventListeners and calls fireEventInParents for HasEventSource, HasNotifier and HasCondition references.

Parameters:
eventData -
sentNodes -

fireEventInParents

protected final void fireEventInParents(EventData eventData,
                                        List<ServerNode> sentNodes,
                                        org.opcfoundation.ua.builtintypes.NodeId... referenceTypeIds)
Calls fireEvent for all specified parent nodes, i.e. nodes that are connected via an inverse reference of the specified referenceTypes

Parameters:
eventData -
referenceTypeIds -

getDefaultBrowseName

protected org.opcfoundation.ua.builtintypes.QualifiedName getDefaultBrowseName(org.opcfoundation.ua.builtintypes.NodeId nodeId,
                                                                               String name)
Define the default browseName to create using the name and nodeId. The default is to use the namespaceIndex of the nodeId also for the BrowseName, but some standard nodes may define otherwise.

Parameters:
nodeId - the nodeId to use. If null s given, namespaceIndex 0 is used
name - the name part of the browsename
Returns:
a new QualifiedName suitable for BrowseName of the node

getReferenceList

protected Collection<UaReference> getReferenceList()
Description copied from class: AbstractUaNode
Returns all references the node has.

Specified by:
getReferenceList in class AbstractUaNode

getTargetNodes

protected List<UaNode> getTargetNodes(org.opcfoundation.ua.builtintypes.NodeId referenceTypeId)

hasReference

protected UaReference hasReference(UaReference reference)
Parameters:
reference -

initSupportedAttributes

protected void initSupportedAttributes(List<org.opcfoundation.ua.builtintypes.UnsignedInteger> l)

isFalseOrNull

protected boolean isFalseOrNull(Boolean value)
Parameters:
value -
Returns:

isMonitoredForEvents

protected boolean isMonitoredForEvents(UaObject event)

isTrueOrNull

protected boolean isTrueOrNull(Boolean value)
Parameters:
value -
Returns:

isType

protected final boolean isType()
Returns:
true if this node is or represents a type.

referenceTypeInherits

protected boolean referenceTypeInherits(org.opcfoundation.ua.builtintypes.NodeId typeId,
                                        org.opcfoundation.ua.builtintypes.NodeId... referenceTypeIds)
Description copied from class: AbstractUaNode
Checks if the given reference type inherits from any of the defined types.

Specified by:
referenceTypeInherits in class AbstractUaNode
Parameters:
typeId -
referenceTypeIds -
Returns:

translateBrowsePathToNodeIds

protected org.opcfoundation.ua.builtintypes.NodeId[] translateBrowsePathToNodeIds(org.opcfoundation.ua.builtintypes.NodeId startingNode,
                                                                                  org.opcfoundation.ua.builtintypes.QualifiedName... path)

validateHasEventSourceChain

protected void validateHasEventSourceChain(Set<org.opcfoundation.ua.builtintypes.NodeId> chain)
Parameterless method that is called recursively


validateHasEventSourceChain

protected void validateHasEventSourceChain(UaReference sReference)
Validates the HasEventSource chain all the way up to the Server Object, assuming that this is called in the sReference's target node

Parameters:
sReference -

writeAttributeValue

protected void writeAttributeValue(org.opcfoundation.ua.builtintypes.UnsignedInteger attributeId,
                                   Object value,
                                   org.opcfoundation.ua.builtintypes.StatusCode statusCode,
                                   org.opcfoundation.ua.builtintypes.DateTime sourceTime,
                                   org.opcfoundation.ua.builtintypes.UnsignedShort sourcePicoseconds)
                            throws StatusException
Throws:
StatusException


Copyright © 2018. All rights reserved.