|
@@ -126,12 +126,13 @@ UA_Server_forEachChildNodeCall(UA_Server *server, UA_NodeId parentNodeId,
|
|
|
|
|
|
UA_StatusCode
|
|
|
UA_Server_addReference(UA_Server *server, const UA_NodeId sourceId,
|
|
|
- const UA_NodeId refTypeId, const UA_ExpandedNodeId targetId) {
|
|
|
+ const UA_NodeId refTypeId, const UA_ExpandedNodeId targetId,
|
|
|
+ UA_Boolean isForward) {
|
|
|
UA_AddReferencesItem item;
|
|
|
UA_AddReferencesItem_init(&item);
|
|
|
item.sourceNodeId = sourceId;
|
|
|
item.referenceTypeId = refTypeId;
|
|
|
- item.isForward = UA_TRUE;
|
|
|
+ item.isForward = isForward;
|
|
|
item.targetNodeId = targetId;
|
|
|
return Service_AddReferences_single(server, &adminSession, &item);
|
|
|
}
|
|
@@ -677,8 +678,8 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
UA_NODEID_NUMERIC(0, UA_NS0ID_HASCHILD), nodeIdHasSubType);
|
|
|
|
|
|
// complete bootstrap of hassubtype
|
|
|
- UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_HASCHILD),
|
|
|
- nodeIdHasSubType, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_HASSUBTYPE));
|
|
|
+ UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_HASCHILD), nodeIdHasSubType,
|
|
|
+ UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_HASSUBTYPE), UA_TRUE);
|
|
|
|
|
|
UA_ReferenceTypeNode *hasproperty = UA_ReferenceTypeNode_new();
|
|
|
copyNames((UA_Node*)hasproperty, "HasProperty");
|
|
@@ -799,7 +800,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
nodeIdOrganizes);
|
|
|
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_REFERENCETYPESFOLDER), nodeIdOrganizes,
|
|
|
- UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_REFERENCES));
|
|
|
+ UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_REFERENCES), UA_TRUE);
|
|
|
|
|
|
/**********************/
|
|
|
/* Basic Object Types */
|
|
@@ -815,17 +816,17 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
UA_NS0ID_ORGANIZES);
|
|
|
addObjectTypeNode(server, "FolderType", UA_NS0ID_FOLDERTYPE, UA_NS0ID_BASEOBJECTTYPE, UA_NS0ID_HASSUBTYPE);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_OBJECTTYPESFOLDER), nodeIdHasTypeDefinition,
|
|
|
- UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_FOLDERTYPE));
|
|
|
+ UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_FOLDERTYPE), UA_TRUE);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_ROOTFOLDER), nodeIdHasTypeDefinition,
|
|
|
- UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_FOLDERTYPE));
|
|
|
+ UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_FOLDERTYPE), UA_TRUE);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_OBJECTSFOLDER), nodeIdHasTypeDefinition,
|
|
|
- UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_FOLDERTYPE));
|
|
|
+ UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_FOLDERTYPE), UA_TRUE);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_TYPESFOLDER), nodeIdHasTypeDefinition,
|
|
|
- UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_FOLDERTYPE));
|
|
|
+ UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_FOLDERTYPE), UA_TRUE);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_VIEWSFOLDER), nodeIdHasTypeDefinition,
|
|
|
- UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_FOLDERTYPE));
|
|
|
+ UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_FOLDERTYPE), UA_TRUE);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_REFERENCETYPESFOLDER),
|
|
|
- nodeIdHasTypeDefinition, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_FOLDERTYPE));
|
|
|
+ nodeIdHasTypeDefinition, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_FOLDERTYPE), UA_TRUE);
|
|
|
addObjectTypeNode(server, "ServerType", UA_NS0ID_SERVERTYPE, UA_NS0ID_BASEOBJECTTYPE, UA_NS0ID_HASSUBTYPE);
|
|
|
addObjectTypeNode(server, "ServerDiagnosticsType", UA_NS0ID_SERVERDIAGNOSTICSTYPE,
|
|
|
UA_NS0ID_BASEOBJECTTYPE, UA_NS0ID_HASSUBTYPE);
|
|
@@ -845,7 +846,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
datatypes->nodeId.identifier.numeric = UA_NS0ID_DATATYPESFOLDER;
|
|
|
addNodeInternal(server, (UA_Node*)datatypes, UA_NODEID_NUMERIC(0, UA_NS0ID_TYPESFOLDER), nodeIdOrganizes);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_DATATYPESFOLDER), nodeIdHasTypeDefinition,
|
|
|
- UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_FOLDERTYPE));
|
|
|
+ UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_FOLDERTYPE), UA_TRUE);
|
|
|
|
|
|
addDataTypeNode(server, "BaseDataType", UA_NS0ID_BASEDATATYPE, UA_NS0ID_DATATYPESFOLDER);
|
|
|
addDataTypeNode(server, "Boolean", UA_NS0ID_BOOLEAN, UA_NS0ID_BASEDATATYPE);
|
|
@@ -886,7 +887,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
addNodeInternal(server, (UA_Node*)variabletypes, UA_NODEID_NUMERIC(0, UA_NS0ID_TYPESFOLDER),
|
|
|
nodeIdOrganizes);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_VARIABLETYPESFOLDER),
|
|
|
- nodeIdHasTypeDefinition, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_FOLDERTYPE));
|
|
|
+ nodeIdHasTypeDefinition, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_FOLDERTYPE), UA_TRUE);
|
|
|
addVariableTypeNode_organized(server, "BaseVariableType", UA_NS0ID_BASEVARIABLETYPE,
|
|
|
UA_NS0ID_VARIABLETYPESFOLDER, UA_TRUE);
|
|
|
addVariableTypeNode_subtype(server, "BaseDataVariableType", UA_NS0ID_BASEDATAVARIABLETYPE,
|
|
@@ -910,7 +911,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
addNodeInternal(server, (UA_Node*)servernode, UA_NODEID_NUMERIC(0, UA_NS0ID_OBJECTSFOLDER),
|
|
|
nodeIdOrganizes);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER), nodeIdHasTypeDefinition,
|
|
|
- UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_SERVERTYPE));
|
|
|
+ UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_SERVERTYPE), UA_TRUE);
|
|
|
|
|
|
UA_VariableNode *namespaceArray = UA_VariableNode_new();
|
|
|
copyNames((UA_Node*)namespaceArray, "NamespaceArray");
|
|
@@ -922,7 +923,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
namespaceArray->minimumSamplingInterval = 1.0;
|
|
|
addNodeInternal(server, (UA_Node*)namespaceArray, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER), nodeIdHasProperty);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_NAMESPACEARRAY),
|
|
|
- nodeIdHasTypeDefinition, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_PROPERTYTYPE));
|
|
|
+ nodeIdHasTypeDefinition, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_PROPERTYTYPE), UA_TRUE);
|
|
|
|
|
|
UA_VariableNode *serverArray = UA_VariableNode_new();
|
|
|
copyNames((UA_Node*)serverArray, "ServerArray");
|
|
@@ -935,7 +936,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
serverArray->minimumSamplingInterval = 1.0;
|
|
|
addNodeInternal(server, (UA_Node*)serverArray, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER), nodeIdHasProperty);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERARRAY), nodeIdHasTypeDefinition,
|
|
|
- UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_PROPERTYTYPE));
|
|
|
+ UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_PROPERTYTYPE), UA_TRUE);
|
|
|
|
|
|
UA_ObjectNode *servercapablities = UA_ObjectNode_new();
|
|
|
copyNames((UA_Node*)servercapablities, "ServerCapabilities");
|
|
@@ -944,7 +945,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
nodeIdHasComponent);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERCAPABILITIES),
|
|
|
nodeIdHasTypeDefinition,
|
|
|
- UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_SERVERCAPABILITIESTYPE));
|
|
|
+ UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_SERVERCAPABILITIESTYPE), UA_TRUE);
|
|
|
|
|
|
UA_VariableNode *localeIdArray = UA_VariableNode_new();
|
|
|
copyNames((UA_Node*)localeIdArray, "LocaleIdArray");
|
|
@@ -958,7 +959,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
addNodeInternal(server, (UA_Node*)localeIdArray,
|
|
|
UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERCAPABILITIES), nodeIdHasProperty);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERCAPABILITIES_LOCALEIDARRAY),
|
|
|
- nodeIdHasTypeDefinition, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_PROPERTYTYPE));
|
|
|
+ nodeIdHasTypeDefinition, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_PROPERTYTYPE), UA_TRUE);
|
|
|
|
|
|
UA_VariableNode *maxBrowseContinuationPoints = UA_VariableNode_new();
|
|
|
copyNames((UA_Node*)maxBrowseContinuationPoints, "MaxBrowseContinuationPoints");
|
|
@@ -970,7 +971,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
addNodeInternal(server, (UA_Node*)maxBrowseContinuationPoints,
|
|
|
UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERCAPABILITIES), nodeIdHasProperty);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERCAPABILITIES_MAXBROWSECONTINUATIONPOINTS),
|
|
|
- nodeIdHasTypeDefinition, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_PROPERTYTYPE));
|
|
|
+ nodeIdHasTypeDefinition, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_PROPERTYTYPE), UA_TRUE);
|
|
|
|
|
|
/** ServerProfileArray **/
|
|
|
#define MAX_PROFILEARRAY 16 //a *magic* limit to the number of supported profiles
|
|
@@ -1003,7 +1004,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
addNodeInternal(server, (UA_Node*)serverProfileArray,
|
|
|
UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERCAPABILITIES), nodeIdHasProperty);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERCAPABILITIES_SERVERPROFILEARRAY),
|
|
|
- nodeIdHasTypeDefinition, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_PROPERTYTYPE));
|
|
|
+ nodeIdHasTypeDefinition, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_PROPERTYTYPE), UA_TRUE);
|
|
|
|
|
|
UA_ObjectNode *serverdiagnostics = UA_ObjectNode_new();
|
|
|
copyNames((UA_Node*)serverdiagnostics, "ServerDiagnostics");
|
|
@@ -1011,7 +1012,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
addNodeInternal(server, (UA_Node*)serverdiagnostics,
|
|
|
UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER), nodeIdHasComponent);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERDIAGNOSTICS),
|
|
|
- nodeIdHasTypeDefinition, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_SERVERDIAGNOSTICSTYPE));
|
|
|
+ nodeIdHasTypeDefinition, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_SERVERDIAGNOSTICSTYPE), UA_TRUE);
|
|
|
|
|
|
UA_VariableNode *enabledFlag = UA_VariableNode_new();
|
|
|
copyNames((UA_Node*)enabledFlag, "EnabledFlag");
|
|
@@ -1023,7 +1024,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
addNodeInternal(server, (UA_Node*)enabledFlag,
|
|
|
UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERDIAGNOSTICS), nodeIdHasProperty);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERDIAGNOSTICS_ENABLEDFLAG),
|
|
|
- nodeIdHasTypeDefinition, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_PROPERTYTYPE));
|
|
|
+ nodeIdHasTypeDefinition, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_PROPERTYTYPE), UA_TRUE);
|
|
|
|
|
|
UA_VariableNode *serverstatus = UA_VariableNode_new();
|
|
|
copyNames((UA_Node*)serverstatus, "ServerStatus");
|
|
@@ -1033,7 +1034,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
addNodeInternal(server, (UA_Node*)serverstatus, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER),
|
|
|
nodeIdHasComponent);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS),
|
|
|
- nodeIdHasTypeDefinition, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_SERVERSTATUSTYPE));
|
|
|
+ nodeIdHasTypeDefinition, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_SERVERSTATUSTYPE), UA_TRUE);
|
|
|
|
|
|
UA_VariableNode *starttime = UA_VariableNode_new();
|
|
|
copyNames((UA_Node*)starttime, "StartTime");
|
|
@@ -1044,7 +1045,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
addNodeInternal(server, (UA_Node*)starttime, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS),
|
|
|
nodeIdHasComponent);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS_STARTTIME),
|
|
|
- nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype);
|
|
|
+ nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype, UA_TRUE);
|
|
|
|
|
|
UA_VariableNode *currenttime = UA_VariableNode_new();
|
|
|
copyNames((UA_Node*)currenttime, "CurrentTime");
|
|
@@ -1055,7 +1056,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
addNodeInternal(server, (UA_Node*)currenttime,
|
|
|
UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS), nodeIdHasComponent);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS_CURRENTTIME),
|
|
|
- nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype);
|
|
|
+ nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype, UA_TRUE);
|
|
|
|
|
|
UA_VariableNode *state = UA_VariableNode_new();
|
|
|
UA_ServerState *stateEnum = UA_ServerState_new();
|
|
@@ -1068,7 +1069,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
addNodeInternal(server, (UA_Node*)state, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS),
|
|
|
nodeIdHasComponent);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS_STATE),
|
|
|
- nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype);
|
|
|
+ nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype, UA_TRUE);
|
|
|
|
|
|
UA_VariableNode *buildinfo = UA_VariableNode_new();
|
|
|
copyNames((UA_Node*)buildinfo, "BuildInfo");
|
|
@@ -1079,7 +1080,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
addNodeInternal(server, (UA_Node*)buildinfo,
|
|
|
UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS), nodeIdHasComponent);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS_BUILDINFO),
|
|
|
- nodeIdHasTypeDefinition, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_BUILDINFOTYPE));
|
|
|
+ nodeIdHasTypeDefinition, UA_EXPANDEDNODEID_NUMERIC(0, UA_NS0ID_BUILDINFOTYPE), UA_TRUE);
|
|
|
|
|
|
UA_VariableNode *producturi = UA_VariableNode_new();
|
|
|
copyNames((UA_Node*)producturi, "ProductUri");
|
|
@@ -1090,7 +1091,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
addNodeInternal(server, (UA_Node*)producturi,
|
|
|
UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS_BUILDINFO), nodeIdHasComponent);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS_BUILDINFO_PRODUCTURI),
|
|
|
- nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype);
|
|
|
+ nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype, UA_TRUE);
|
|
|
|
|
|
UA_VariableNode *manufacturername = UA_VariableNode_new();
|
|
|
copyNames((UA_Node*)manufacturername, "ManufacturererName");
|
|
@@ -1102,7 +1103,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS_BUILDINFO), nodeIdHasComponent);
|
|
|
UA_Server_addReference(server,
|
|
|
UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS_BUILDINFO_MANUFACTURERNAME),
|
|
|
- nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype);
|
|
|
+ nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype, UA_TRUE);
|
|
|
|
|
|
UA_VariableNode *productname = UA_VariableNode_new();
|
|
|
copyNames((UA_Node*)productname, "ProductName");
|
|
@@ -1113,7 +1114,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
addNodeInternal(server, (UA_Node*)productname,
|
|
|
UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS_BUILDINFO), nodeIdHasComponent);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS_BUILDINFO_PRODUCTNAME),
|
|
|
- nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype);
|
|
|
+ nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype, UA_TRUE);
|
|
|
|
|
|
UA_VariableNode *softwareversion = UA_VariableNode_new();
|
|
|
copyNames((UA_Node*)softwareversion, "SoftwareVersion");
|
|
@@ -1125,7 +1126,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS_BUILDINFO), nodeIdHasComponent);
|
|
|
UA_Server_addReference(server,
|
|
|
UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS_BUILDINFO_SOFTWAREVERSION),
|
|
|
- nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype);
|
|
|
+ nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype, UA_TRUE);
|
|
|
|
|
|
UA_VariableNode *buildnumber = UA_VariableNode_new();
|
|
|
copyNames((UA_Node*)buildnumber, "BuildNumber");
|
|
@@ -1136,7 +1137,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
addNodeInternal(server, (UA_Node*)buildnumber,
|
|
|
UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS_BUILDINFO), nodeIdHasComponent);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS_BUILDINFO_BUILDNUMBER),
|
|
|
- nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype);
|
|
|
+ nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype, UA_TRUE);
|
|
|
|
|
|
UA_VariableNode *builddate = UA_VariableNode_new();
|
|
|
copyNames((UA_Node*)builddate, "BuildDate");
|
|
@@ -1147,7 +1148,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
addNodeInternal(server, (UA_Node*)builddate,
|
|
|
UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS_BUILDINFO), nodeIdHasComponent);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS_BUILDINFO_BUILDNUMBER),
|
|
|
- nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype);
|
|
|
+ nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype, UA_TRUE);
|
|
|
|
|
|
UA_VariableNode *secondstillshutdown = UA_VariableNode_new();
|
|
|
copyNames((UA_Node*)secondstillshutdown, "SecondsTillShutdown");
|
|
@@ -1157,7 +1158,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
addNodeInternal(server, (UA_Node*)secondstillshutdown,
|
|
|
UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS), nodeIdHasComponent);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS_SECONDSTILLSHUTDOWN),
|
|
|
- nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype);
|
|
|
+ nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype, UA_TRUE);
|
|
|
|
|
|
UA_VariableNode *shutdownreason = UA_VariableNode_new();
|
|
|
copyNames((UA_Node*)shutdownreason, "ShutdownReason");
|
|
@@ -1167,7 +1168,7 @@ UA_Server * UA_Server_new(UA_ServerConfig config) {
|
|
|
addNodeInternal(server, (UA_Node*)shutdownreason,
|
|
|
UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS), nodeIdHasComponent);
|
|
|
UA_Server_addReference(server, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_SERVERSTATUS_SHUTDOWNREASON),
|
|
|
- nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype);
|
|
|
+ nodeIdHasTypeDefinition, expandedNodeIdBaseDataVariabletype, UA_TRUE);
|
|
|
|
|
|
return server;
|
|
|
}
|