AddressSpace Class
AddressSpace
is a collection of UA nodes.
const addressSpace = new AddressSpace();
Constructor
AddressSpace
-
conditionTypeId
-
options
-
data
Parameters:
-
conditionTypeId
Object -
options
Object -
data
Object
Returns:
Item Index
Methods
- _coerceNode
- _isFolder
- addAlias
- addEnumerationType
- addEnumerationType
- addFolder
- addMethod
- addMultiStateValueDiscrete
- addTransition
- addTwoStateDiscrete
- addYArrayItem
- browsePath
- browseSingleNode
- constructExtensionObject
- dispose
- extractRootViews
- findCorrespondingBasicDataType
- findDataType
- findNode
- findObjectType
- findReferenceType
- findReferenceTypeFromInverseName
- findTransitionNode
- findVariableType
- getCurrentState
- getStateByName
- getStates
- historyRead
- installHistoricalDataNode
- inverseReferenceType
- isNodeIdString
- isValidTransition
- make_back_references
- normalizeReferenceType
- registerShutdownTask
- resolveNodeId
- setState
Properties
Methods
_coerceNode
-
node
Parameters:
-
node
Object
Returns:
_isFolder
-
addressSpace
-
folder
return true if nodeId is a Folder
Parameters:
-
addressSpace
Object -
folder
Object
Returns:
addEnumerationType
-
options
Parameters:
-
options
Object-
browseName
String -
enumeration
Array -
enumeration[].displayName
String | LocalizedText -
enumeration[].value
Number -
enumeration[].description
String | LocalizedText | Null
-
addEnumerationType
-
options
Parameters:
-
options
Object-
browseName
String -
enumeration
Array -
enumeration[].displayName
String | LocalizedText -
enumeration[].value
Number -
enumeration[].description
String | LocalizedText | Null
-
addFolder
-
parentFolder
-
options
Parameters:
-
parentFolder
Object -
options
String | Object-
browseName
Stringthe name of the folder
-
[nodeId]
NodeId optional. An optional nodeId for this object
-
Returns:
addMethod
-
parentObject
-
options
Parameters:
-
parentObject
Object -
options
Object-
[nodeId=null]
NodeId optionalthe object nodeid.
-
[browseName=""]
String optionalthe object browse name.
-
[description=""]
String optionalthe object description.
-
inputArguments
Array -
outputArguments
Array
-
Returns:
addMultiStateValueDiscrete
-
options
-
[options.value
Parameters:
-
options
Object-
browseName
String -
[nodeId]
NodeId optional -
enumValues
EnumValueType[] | Key,Value}
-
-
[options.value
UInt32= 0 }
Returns:
Example:
namespace.addMultiStateValueDiscrete({
componentOf:parentObj,
browseName: "myVar",
enumValues: {
"Red": 0xFF0000,
"Green": 0x00FF00,
"Blue": 0x0000FF
}
});
addMultiStateValueDiscrete(parentObj,{
browseName: "myVar",
enumValues: [
{
value: 0xFF0000,
displayName: "Red",
description: " The color Red"
},
{
value: 0x00FF000,
displayName: "Green",
description: " The color Green"
},
{
value: 0x0000FF,
displayName: "Blue",
description: " The color Blue"
}
]
});
addTransition
-
component
-
fromState
-
toState
-
transitionNumber
Parameters:
-
component
UAObject -
fromState
StateType | InitialStateType -
toState
StateType | InitialStateType -
transitionNumber
Number
Returns:
TransitionType
addTwoStateDiscrete
-
options
-
[options.value
-
[options.trueState
-
[options.falseState
Parameters:
-
options
Object-
browseName
String -
[nodeId]
NodeId optional
-
-
[options.value
Boolean}
-
[options.trueState
String= "ON" }
-
[options.falseState
String= "OFF" }
Returns:
addYArrayItem
-
options
Parameters:
-
options
Object-
componentOf
NodeId -
browseName
String -
title
String -
[instrumentRange]
optional-
[low]
Double optional -
[high]
Double optional
-
-
engineeringUnitsRange.low
Double -
engineeringUnitsRange.high
Double -
engineeringUnits
String -
[nodeId]
NodeId optional -
accessLevel
-
userAccessLevel
-
title
String -
axisScaleType
AxisScaleEnumeration -
xAxisDefinition
AxisInformation-
engineeringUnits
EURange -
range
-
range.low
-
range.high
-
title
LocalizedText -
axisScaleType
AxisScaleEnumeration -
axisSteps
Array=
-
-
value
-
browsePath
-
browsePath
browse some path.
Parameters:
-
browsePath
BrowsePath
Returns:
This service can be used translates one or more browse paths into NodeIds. A browse path is constructed of a starting Node and a RelativePath. The specified starting Node identifies the Node from which the RelativePath is based. The RelativePath contains a sequence of ReferenceTypes and BrowseNames.
StatusCode | |
---|---|
BadNodeIdUnknown | |
BadNodeIdInvalid | |
BadNothingToDo | - the relative path contains an empty list ) |
BadBrowseNameInvalid | - target name is missing in relative path |
UncertainReferenceOutOfServer | - The path element has targets which are in another server. |
BadTooManyMatches | |
BadQueryTooComplex | |
BadNoMatch |
browseSingleNode
-
nodeId
-
browseDescription
-
[session]
Parameters:
-
nodeId
NodeId | String: the nodeid of the element to browse
-
browseDescription
Object-
browseDirection
BrowseDirection:
-
referenceTypeId
String | NodeId
-
-
[session]
ServerSession optional
Returns:
constructExtensionObject
-
dataType
-
[options =null]
Parameters:
-
dataType
UADataType -
[options =null]
Object optional
Returns:
Example:
// example 1
var extObj = addressSpace.constructExtensionObject("BuildInfo",{ productName: "PRODUCTNAME"});
// example 2
serverStatusDataType.should.be.instanceOf(UADataType);
serverStatusDataType.browseName.toString().should.eql("ServerStatusDataType");
var serverStatus = addressSpace.constructExtensionObject(serverStatusDataType);
serverStatus.constructor.name.should.eql("ServerStatus");
dispose
()
cleanup all resources maintained by this addressSpace.
extractRootViews
-
node
walk up the hierarchy of objects until a view is found objects may belong to multiples views. Note: this method doesn't return the main view => Server object.
Parameters:
-
node
BaseNode
Returns:
findCorrespondingBasicDataType
-
dataTypeNode
Parameters:
-
dataTypeNode
Object
Example:
const dataType = addressSpace.findDataType("ns=0;i=12");
addressSpace.findCorrespondingBasicDataType(dataType).should.eql(DataType.String);
const dataType = addressSpace.findDataType("ServerStatus"); // ServerStatus
addressSpace.findCorrespondingBasicDataType(dataType).should.eql(DataType.ExtensionObject);
findDataType
-
dataType
-
[namespaceIndex=0]
Find the DataType node from a NodeId or a browseName
Parameters:
-
dataType
String | NodeId -
[namespaceIndex=0]
Number optionalan optional namespace index
Returns:
Example:
const dataDouble = addressSpace.findDataType("Double");
const dataDouble = addressSpace.findDataType(resolveNodeId("ns=0;i=3"));
findNode
-
nodeId
find an node by node Id
Parameters:
-
nodeId
NodeId | Stringa nodeId or a string coerce-able to nodeID, representing the object to find.
Returns:
findObjectType
-
objectType
-
[namespaceIndex=0]
Parameters:
-
objectType
String | NodeId | QualifiedName -
[namespaceIndex=0]
Number optionalan optional namespace index
Returns:
Example:
const objectType = addressSpace.findObjectType("ns=0;i=58");
objectType.browseName.toString().should.eql("BaseObjectType");
const objectType = addressSpace.findObjectType("BaseObjectType");
objectType.browseName.toString().should.eql("BaseObjectType");
const objectType = addressSpace.findObjectType(resolveNodeId("ns=0;i=58"));
objectType.browseName.toString().should.eql("BaseObjectType");
const objectType = addressSpace.findObjectType("CustomObjectType",36);
objectType.nodeId.namespace.should.eql(36);
objectType.browseName.toString().should.eql("BaseObjectType");
const objectType = addressSpace.findObjectType("36:CustomObjectType");
objectType.nodeId.namespace.should.eql(36);
objectType.browseName.toString().should.eql("BaseObjectType");
findReferenceType
-
refType
-
[namespace=0]
Parameters:
-
refType
String | NodeId -
[namespace=0]
Number optionalan optional namespace index
Returns:
refType could be a string representing a nodeid : e.g. 'i=9004' or ns=1;i=6030 a string representing a browse name : e.g 'HasTypeDefinition' in this case it should be in the alias list
findReferenceTypeFromInverseName
-
inverseName
find a ReferenceType by its inverse name.
Parameters:
-
inverseName
Stringthe inverse name of the ReferenceType to find
Returns:
findVariableType
-
variableType
-
[namespaceIndex=0]
Parameters:
-
variableType
String | NodeId -
[namespaceIndex=0]
Number optionalan optional namespace index
Returns:
Example:
const objectType = addressSpace.findVariableType("ns=0;i=62");
objectType.browseName.toString().should.eql("BaseVariableType");
const objectType = addressSpace.findVariableType("BaseVariableType");
objectType.browseName.toString().should.eql("BaseVariableType");
const objectType = addressSpace.findVariableType(resolveNodeId("ns=0;i=62"));
objectType.browseName.toString().should.eql("BaseVariableType");
getCurrentState
()
String
Returns:
getStates
()
Returns:
historyRead
-
context
-
historyReadDetails
-
indexRange
-
dataEncoding
-
continuationPoint
-
callback
Parameters:
-
context
SessionContext -
historyReadDetails
HistoryReadDetails -
indexRange
NumericRange | Null -
dataEncoding
String -
continuationPoint
ByteString -
callback
Function-
err
-
result
HistoryReadResult
-
installHistoricalDataNode
-
node
-
[options]
Parameters:
-
node
ObjectUAVariable
-
[options]
Object optional-
[maxOnlineValues= 1000]
optional
-
inverseReferenceType
-
referenceType
returns the inverse name of the referenceType.
Parameters:
-
referenceType
String: the reference type name
Returns:
the name of the inverse reference type.
Example:
addressSpace.inverseReferenceType("OrganizedBy").should.eql("Organizes");
addressSpace.inverseReferenceType("Organizes").should.eql("OrganizedBy");
isNodeIdString
-
str
returns true if str matches a nodeID, e.g i=123 or ns=...
Parameters:
-
str
Object
isValidTransition
-
toStateNode
Parameters:
-
toStateNode
Object
Returns:
normalizeReferenceType
-
params.referenceType
-
params.isForward
Parameters:
-
params.referenceType
String | NodeId -
params.isForward
Booleandefault value: true;
Returns:
a new reference object with the normalized name { referenceType:
registerShutdownTask
()
register a function that will be called when the server will perform its shut down.