node-opcua-address-space 2.115.0 → 2.117.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/source/helpers/call_helpers.d.ts +1 -2
- package/dist/source/helpers/call_helpers.js +15 -0
- package/dist/source/helpers/call_helpers.js.map +1 -1
- package/dist/source/index.d.ts +1 -0
- package/dist/source/index.js +3 -1
- package/dist/source/index.js.map +1 -1
- package/dist/source/loader/generateAddressSpaceRaw.d.ts +19 -1
- package/dist/source/loader/generateAddressSpaceRaw.js +157 -4
- package/dist/source/loader/generateAddressSpaceRaw.js.map +1 -1
- package/dist/source/loader/load_nodeset2.js +3 -10
- package/dist/source/loader/load_nodeset2.js.map +1 -1
- package/dist/src/index_current.d.ts +1 -0
- package/dist/src/index_current.js +1 -0
- package/dist/src/index_current.js.map +1 -1
- package/dist/src/nodeset_tools/construct_namespace_dependency.d.ts +27 -3
- package/dist/src/nodeset_tools/construct_namespace_dependency.js +210 -81
- package/dist/src/nodeset_tools/construct_namespace_dependency.js.map +1 -1
- package/dist/src/nodeset_tools/nodeset_to_xml.js +15 -23
- package/dist/src/nodeset_tools/nodeset_to_xml.js.map +1 -1
- package/dist/src/ua_variable_impl.js +2 -74
- package/dist/src/ua_variable_impl.js.map +1 -1
- package/dist/src/validate_data_type_correctness.d.ts +6 -0
- package/dist/src/validate_data_type_correctness.js +98 -0
- package/dist/src/validate_data_type_correctness.js.map +1 -0
- package/dist/tsconfig_common.tsbuildinfo +1 -1
- package/package.json +38 -38
- package/source/helpers/call_helpers.ts +1 -1
- package/source/index.ts +1 -1
- package/source/loader/generateAddressSpaceRaw.ts +180 -5
- package/source/loader/load_nodeset2.ts +3 -9
- package/src/index_current.ts +1 -1
- package/src/nodeset_tools/construct_namespace_dependency.ts +232 -91
- package/src/nodeset_tools/nodeset_to_xml.ts +19 -27
- package/src/ua_variable_impl.ts +2 -89
- package/src/validate_data_type_correctness.ts +115 -0
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.constructNamespaceDependency = exports.constructNamespacePriorityTable = exports.
|
|
6
|
+
exports._constructNamespaceTranslationTable = exports.constructNamespaceDependency = exports.constructNamespacePriorityTable = exports._getCompleteRequiredModelsFromValuesAndReferences = exports._recomputeRequiredModelsFromTypes2 = exports._recomputeRequiredModelsFromTypes = void 0;
|
|
7
7
|
const node_opcua_data_model_1 = require("node-opcua-data-model");
|
|
8
8
|
const node_opcua_basic_types_1 = require("node-opcua-basic-types");
|
|
9
9
|
const node_opcua_variant_1 = require("node-opcua-variant");
|
|
@@ -12,30 +12,35 @@ const node_opcua_debug_1 = require("node-opcua-debug");
|
|
|
12
12
|
const base_node_impl_1 = require("../base_node_impl");
|
|
13
13
|
const warningLog = (0, node_opcua_debug_1.make_warningLog)(__filename);
|
|
14
14
|
const debugLog = (0, node_opcua_debug_1.make_debugLog)(__filename);
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
function consider(namespaceIndex) {
|
|
20
|
-
if (hasHigherPriorityThan(namespaceIndex, namespace.index, priorityTable)) {
|
|
21
|
-
return;
|
|
22
|
-
}
|
|
23
|
-
considerStrongly(namespaceIndex);
|
|
15
|
+
// eslint-disable-next-line max-statements, complexity
|
|
16
|
+
function _recomputeRequiredModelsFromTypes(namespace, cache) {
|
|
17
|
+
if (namespace.index === 0) {
|
|
18
|
+
return { requiredNamespaceIndexes: [], nbTypes: 1 };
|
|
24
19
|
}
|
|
25
|
-
|
|
26
|
-
if (
|
|
27
|
-
|
|
28
|
-
const namespace = addressSpace.getNamespace(namespaceIndex);
|
|
29
|
-
dependency.push(namespace);
|
|
30
|
-
if (namespaceIndex > 0) {
|
|
31
|
-
_constructNamespaceDependency(namespace, dependency, depMap, _visitedDataType, priorityTable);
|
|
32
|
-
}
|
|
20
|
+
if (cache) {
|
|
21
|
+
if (cache.has(namespace.index)) {
|
|
22
|
+
return cache.get(namespace.index);
|
|
33
23
|
}
|
|
34
24
|
}
|
|
25
|
+
const requiredNamespaceIndexes = [0];
|
|
26
|
+
const requiredModelsSet = new Set();
|
|
27
|
+
requiredModelsSet.add(0);
|
|
28
|
+
const namespace_ = namespace;
|
|
29
|
+
let nbTypes = 0;
|
|
30
|
+
const addressSpace = namespace.addressSpace;
|
|
31
|
+
const types = [node_opcua_data_model_1.NodeClass.VariableType, node_opcua_data_model_1.NodeClass.ObjectType, node_opcua_data_model_1.NodeClass.ReferenceType, node_opcua_data_model_1.NodeClass.DataType];
|
|
32
|
+
const instances = [node_opcua_data_model_1.NodeClass.Variable, node_opcua_data_model_1.NodeClass.Object, node_opcua_data_model_1.NodeClass.Method];
|
|
33
|
+
const consider = (requiredModel) => {
|
|
34
|
+
if (requiredModel !== namespace.index && !requiredModelsSet.has(requiredModel)) {
|
|
35
|
+
requiredModelsSet.add(requiredModel);
|
|
36
|
+
requiredNamespaceIndexes.push(requiredModel);
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
const _visitedDataType = new Set();
|
|
35
40
|
function exploreDataTypeField(field) {
|
|
36
41
|
const dataType = field.dataType;
|
|
37
42
|
const namespaceIndex = dataType.namespace;
|
|
38
|
-
|
|
43
|
+
consider(namespaceIndex);
|
|
39
44
|
const dataTypeNode = addressSpace.findDataType(field.dataType);
|
|
40
45
|
if (dataTypeNode) {
|
|
41
46
|
exploreDataTypes(dataTypeNode);
|
|
@@ -55,7 +60,7 @@ function _constructNamespaceDependency(namespace, dependency, depMap, _visitedDa
|
|
|
55
60
|
return;
|
|
56
61
|
}
|
|
57
62
|
const namespaceIndex = dataType.namespace;
|
|
58
|
-
|
|
63
|
+
consider(namespaceIndex);
|
|
59
64
|
if (dataTypeNode.isStructure()) {
|
|
60
65
|
const definition = dataTypeNode.getStructureDefinition();
|
|
61
66
|
for (const field of definition.fields || []) {
|
|
@@ -67,7 +72,7 @@ function _constructNamespaceDependency(namespace, dependency, depMap, _visitedDa
|
|
|
67
72
|
function exploreExtensionObject(e) {
|
|
68
73
|
(0, node_opcua_assert_1.default)(!(e instanceof node_opcua_variant_1.Variant));
|
|
69
74
|
const nodeId = e.schema.encodingDefaultXml || e.schema.dataTypeNodeId || e.schema.dataTypeNodeId;
|
|
70
|
-
|
|
75
|
+
consider(nodeId.namespace);
|
|
71
76
|
// istanbul ignore next
|
|
72
77
|
if (e.schema.dataTypeNodeId.isEmpty()) {
|
|
73
78
|
warningLog("Cannot find dataTypeNodeId for ", e.schema.name);
|
|
@@ -98,38 +103,118 @@ function _constructNamespaceDependency(namespace, dependency, depMap, _visitedDa
|
|
|
98
103
|
}
|
|
99
104
|
}
|
|
100
105
|
for (const node of namespace_.nodeIterator()) {
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
+
const isType = types.indexOf(node.nodeClass);
|
|
107
|
+
const isInstance = instances.indexOf(node.nodeClass);
|
|
108
|
+
if (isType !== -1) {
|
|
109
|
+
nbTypes++;
|
|
110
|
+
const superTypes = node.findReferencesAsObject("HasSubtype", false);
|
|
111
|
+
if (superTypes.length === 0) {
|
|
112
|
+
continue;
|
|
113
|
+
}
|
|
114
|
+
if (superTypes.length !== 1) {
|
|
115
|
+
continue;
|
|
106
116
|
}
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
117
|
+
const superType = superTypes[0];
|
|
118
|
+
if (superType.nodeId.namespace === 0) {
|
|
119
|
+
continue;
|
|
120
|
+
}
|
|
121
|
+
const requiredModel = superType.nodeId.namespace;
|
|
122
|
+
consider(requiredModel);
|
|
123
|
+
}
|
|
124
|
+
else if (isInstance !== -1) {
|
|
125
|
+
if (node.nodeClass === node_opcua_data_model_1.NodeClass.Variable || node.nodeClass === node_opcua_data_model_1.NodeClass.VariableType) {
|
|
126
|
+
const dataTypeNodeId = node.dataType;
|
|
127
|
+
const dataTypeNode = addressSpace.findDataType(dataTypeNodeId);
|
|
128
|
+
if (dataTypeNode) {
|
|
129
|
+
consider(dataTypeNode.nodeId.namespace);
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
// istanbul ignore next
|
|
133
|
+
if (dataTypeNodeId.value != 0) {
|
|
134
|
+
warningLog("Warning: Cannot find dataType", dataTypeNodeId.toString());
|
|
135
|
+
}
|
|
111
136
|
}
|
|
137
|
+
const nodeV = node;
|
|
138
|
+
exploreDataValue(nodeV);
|
|
112
139
|
}
|
|
113
|
-
const
|
|
114
|
-
|
|
140
|
+
const typeDefinitions = node.findReferencesAsObject("HasTypeDefinition", true);
|
|
141
|
+
if (typeDefinitions.length === 0) {
|
|
142
|
+
continue;
|
|
143
|
+
}
|
|
144
|
+
if (typeDefinitions.length !== 1) {
|
|
145
|
+
continue;
|
|
146
|
+
}
|
|
147
|
+
const typeDefinition = typeDefinitions[0];
|
|
148
|
+
const requiredModel = typeDefinition.nodeId.namespace;
|
|
149
|
+
consider(requiredModel);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
const result = { requiredNamespaceIndexes: requiredNamespaceIndexes, nbTypes: nbTypes };
|
|
153
|
+
if (cache) {
|
|
154
|
+
cache.set(namespace.index, result);
|
|
155
|
+
}
|
|
156
|
+
return result;
|
|
157
|
+
}
|
|
158
|
+
exports._recomputeRequiredModelsFromTypes = _recomputeRequiredModelsFromTypes;
|
|
159
|
+
function _recomputeRequiredModelsFromTypes2(namespace, cache) {
|
|
160
|
+
const addressSpace = namespace.addressSpace;
|
|
161
|
+
const { requiredNamespaceIndexes } = _recomputeRequiredModelsFromTypes(namespace, cache);
|
|
162
|
+
const set = new Set(requiredNamespaceIndexes);
|
|
163
|
+
const pass2 = [];
|
|
164
|
+
for (const r of requiredNamespaceIndexes) {
|
|
165
|
+
if (r === 0) {
|
|
166
|
+
pass2.push(0);
|
|
167
|
+
continue;
|
|
168
|
+
}
|
|
169
|
+
const namespaces = _recomputeRequiredModelsFromTypes(addressSpace.getNamespace(r), cache);
|
|
170
|
+
for (const nIndex of namespaces.requiredNamespaceIndexes) {
|
|
171
|
+
if (!set.has(nIndex)) {
|
|
172
|
+
set.add(nIndex);
|
|
173
|
+
pass2.push(nIndex);
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
pass2.push(r);
|
|
177
|
+
}
|
|
178
|
+
return { requiredNamespaceIndexes: pass2 };
|
|
179
|
+
}
|
|
180
|
+
exports._recomputeRequiredModelsFromTypes2 = _recomputeRequiredModelsFromTypes2;
|
|
181
|
+
function _getCompleteRequiredModelsFromValuesAndReferences(namespace, priorityList, cache) {
|
|
182
|
+
const namespace_ = namespace;
|
|
183
|
+
const thisPriority = priorityList[namespace.index];
|
|
184
|
+
const requiredNamespaceIndexes = _recomputeRequiredModelsFromTypes2(namespace, cache).requiredNamespaceIndexes;
|
|
185
|
+
const requiredModelsSet = new Set([...requiredNamespaceIndexes]);
|
|
186
|
+
const consider = (requiredModel) => {
|
|
187
|
+
if (requiredModel !== namespace.index && !requiredModelsSet.has(requiredModel)) {
|
|
188
|
+
requiredModelsSet.add(requiredModel);
|
|
189
|
+
requiredNamespaceIndexes.push(requiredModel);
|
|
115
190
|
}
|
|
116
|
-
|
|
117
|
-
|
|
191
|
+
};
|
|
192
|
+
//const maxIndex = Math.max(...requiredNamespaceIndexes);
|
|
193
|
+
for (const node of namespace_.nodeIterator()) {
|
|
194
|
+
const references = node.allReferences();
|
|
118
195
|
for (const reference of references) {
|
|
196
|
+
// if (reference.isForward) continue;
|
|
197
|
+
// only look at backward reference
|
|
119
198
|
// check referenceId
|
|
120
|
-
const
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
199
|
+
const namespaceIndexOfReferenceType = (0, base_node_impl_1.getReferenceType)(reference).nodeId.namespace;
|
|
200
|
+
if (namespaceIndexOfReferenceType !== 0 && namespaceIndexOfReferenceType !== namespace.index) {
|
|
201
|
+
const refPriority = priorityList[namespaceIndexOfReferenceType];
|
|
202
|
+
if (refPriority <= thisPriority) {
|
|
203
|
+
consider(namespaceIndexOfReferenceType);
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
const namespaceIndexOfTargetNode = reference.nodeId.namespace;
|
|
207
|
+
if (namespaceIndexOfTargetNode !== 0 && namespaceIndexOfTargetNode !== namespace.index) {
|
|
208
|
+
const refPriority = priorityList[namespaceIndexOfTargetNode];
|
|
209
|
+
if (refPriority <= thisPriority) {
|
|
210
|
+
consider(namespaceIndexOfTargetNode);
|
|
211
|
+
}
|
|
212
|
+
}
|
|
124
213
|
}
|
|
125
214
|
}
|
|
215
|
+
return requiredNamespaceIndexes;
|
|
126
216
|
}
|
|
127
|
-
|
|
128
|
-
const order1 = priorityTable[namespaceIndex1];
|
|
129
|
-
const order2 = priorityTable[namespaceIndex2];
|
|
130
|
-
return order1 > order2;
|
|
131
|
-
}
|
|
132
|
-
exports.hasHigherPriorityThan = hasHigherPriorityThan;
|
|
217
|
+
exports._getCompleteRequiredModelsFromValuesAndReferences = _getCompleteRequiredModelsFromValuesAndReferences;
|
|
133
218
|
/**
|
|
134
219
|
*
|
|
135
220
|
* @param namespace
|
|
@@ -144,50 +229,94 @@ exports.hasHigherPriorityThan = hasHigherPriorityThan;
|
|
|
144
229
|
* ---
|
|
145
230
|
* ua, own , di , kitchen , own2, adi => 0 , 2, 3, 5, 1
|
|
146
231
|
*/
|
|
147
|
-
function constructNamespacePriorityTable(
|
|
148
|
-
// Namespace 0 will always be 0
|
|
149
|
-
//
|
|
150
|
-
//
|
|
151
|
-
//
|
|
152
|
-
|
|
232
|
+
function constructNamespacePriorityTable(addressSpace) {
|
|
233
|
+
// - Namespace 0 will always be 0
|
|
234
|
+
// - Namespace with requiredModels are considered to be companion specification,
|
|
235
|
+
// so RequireModel will be used to determine the order
|
|
236
|
+
// - Namespaces with no requiredModel are more complicated:
|
|
237
|
+
//
|
|
238
|
+
// we study ObjectType,ReferenceType, DataType and VariableType
|
|
239
|
+
// to find strong dependencies between namespace.
|
|
240
|
+
//
|
|
241
|
+
// if the namespace doesn't define ObjectType,ReferenceType, DataType and VariableType
|
|
242
|
+
// it will be considered as instance namespaces and will added at the end
|
|
243
|
+
// in the same order as they appear,
|
|
153
244
|
const namespaces = addressSpace.getNamespaceArray();
|
|
154
|
-
const
|
|
155
|
-
const
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
priorityList[namespaceWithReq[i].index] = counter++;
|
|
245
|
+
const loadingOrder = [0];
|
|
246
|
+
const map = new Map();
|
|
247
|
+
for (let i = 0; i < namespaces.length; i++) {
|
|
248
|
+
const { nbTypes, requiredNamespaceIndexes } = _recomputeRequiredModelsFromTypes(namespaces[i], map);
|
|
249
|
+
map.set(namespaces[i].index, { nbTypes, requiredNamespaceIndexes, namespace: namespaces[i] });
|
|
160
250
|
}
|
|
161
|
-
|
|
162
|
-
|
|
251
|
+
const visited = new Set();
|
|
252
|
+
visited.add(0);
|
|
253
|
+
const h = (n) => {
|
|
254
|
+
if (visited.has(n.index)) {
|
|
255
|
+
return;
|
|
256
|
+
}
|
|
257
|
+
visited.add(n.index);
|
|
258
|
+
const data = map.get(n.index);
|
|
259
|
+
if (!data)
|
|
260
|
+
return;
|
|
261
|
+
const { requiredNamespaceIndexes } = data;
|
|
262
|
+
for (const r of requiredNamespaceIndexes || []) {
|
|
263
|
+
h(namespaces[r]);
|
|
264
|
+
}
|
|
265
|
+
loadingOrder.push(n.index);
|
|
266
|
+
};
|
|
267
|
+
for (let i = 0; i < namespaces.length; i++) {
|
|
268
|
+
const { nbTypes } = map.get(i);
|
|
269
|
+
if (nbTypes) {
|
|
270
|
+
h(namespaces[i]);
|
|
271
|
+
}
|
|
163
272
|
}
|
|
164
|
-
|
|
273
|
+
for (let i = 0; i < namespaces.length; i++) {
|
|
274
|
+
const { nbTypes } = map.get(i);
|
|
275
|
+
if (!nbTypes) {
|
|
276
|
+
h(namespaces[i]);
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
const priorityTable = [];
|
|
280
|
+
for (let i = 0; i < loadingOrder.length; i++) {
|
|
281
|
+
const namespaceIndex = loadingOrder[i];
|
|
282
|
+
(0, node_opcua_assert_1.default)(namespaceIndex !== -1);
|
|
283
|
+
priorityTable[namespaceIndex] = i;
|
|
284
|
+
}
|
|
285
|
+
return { loadingOrder, priorityTable };
|
|
165
286
|
}
|
|
166
287
|
exports.constructNamespacePriorityTable = constructNamespacePriorityTable;
|
|
167
|
-
const doDebug =
|
|
288
|
+
const doDebug = true;
|
|
168
289
|
function constructNamespaceDependency(namespace, priorityTable) {
|
|
169
290
|
const addressSpace = namespace.addressSpace;
|
|
170
|
-
priorityTable = priorityTable || constructNamespacePriorityTable(
|
|
171
|
-
const
|
|
172
|
-
|
|
173
|
-
dependency.push(addressSpace.getDefaultNamespace());
|
|
174
|
-
depMap.add(0);
|
|
175
|
-
if (namespace !== addressSpace.getDefaultNamespace()) {
|
|
176
|
-
dependency.push(namespace);
|
|
177
|
-
depMap.add(namespace.index);
|
|
178
|
-
}
|
|
179
|
-
const _visitedDataType = new Set();
|
|
180
|
-
_constructNamespaceDependency(namespace, dependency, depMap, _visitedDataType, priorityTable);
|
|
181
|
-
// istanbul ignore next
|
|
182
|
-
doDebug && debugLog("namespace : ", namespace.index, namespace.namespaceUri);
|
|
183
|
-
// istanbul ignore next
|
|
184
|
-
doDebug && debugLog(" ", dependency.map((d) => d.index + " " + d.namespaceUri).join("\n "));
|
|
185
|
-
const sorted = dependency.sort((a, b) => (priorityTable[a.index] < priorityTable[b.index] ? -1 : 1));
|
|
186
|
-
// istanbul ignore next
|
|
187
|
-
doDebug && debugLog("sorted:");
|
|
188
|
-
// istanbul ignore next
|
|
189
|
-
doDebug && debugLog(" ", sorted.map((d) => d.index + " " + d.namespaceUri).join("\n "));
|
|
190
|
-
return sorted;
|
|
291
|
+
priorityTable = priorityTable || constructNamespacePriorityTable(addressSpace).priorityTable;
|
|
292
|
+
const requiredNamespaceIndexes = _getCompleteRequiredModelsFromValuesAndReferences(namespace, priorityTable);
|
|
293
|
+
return [...requiredNamespaceIndexes.map((r) => addressSpace.getNamespace(r)), namespace];
|
|
191
294
|
}
|
|
192
295
|
exports.constructNamespaceDependency = constructNamespaceDependency;
|
|
296
|
+
/**
|
|
297
|
+
* @private
|
|
298
|
+
*/
|
|
299
|
+
function _constructNamespaceTranslationTable(dependency, exportedNamespace) {
|
|
300
|
+
if (!dependency || dependency.length === 0) {
|
|
301
|
+
return { 0: 0 };
|
|
302
|
+
// throw new Error("Cannot constructNamespaceTranslationTable on empty dependency");
|
|
303
|
+
}
|
|
304
|
+
const translationTable = {};
|
|
305
|
+
(0, node_opcua_assert_1.default)(dependency[0].namespaceUri === "http://opcfoundation.org/UA/");
|
|
306
|
+
let counter = 0;
|
|
307
|
+
translationTable[dependency[0].index] = counter++;
|
|
308
|
+
//
|
|
309
|
+
if (exportedNamespace) {
|
|
310
|
+
translationTable[exportedNamespace.index] = counter++;
|
|
311
|
+
}
|
|
312
|
+
for (let i = 1; i < dependency.length; i++) {
|
|
313
|
+
const dep = dependency[i];
|
|
314
|
+
if (exportedNamespace && exportedNamespace === dep) {
|
|
315
|
+
continue;
|
|
316
|
+
}
|
|
317
|
+
translationTable[dep.index] = counter++;
|
|
318
|
+
}
|
|
319
|
+
return translationTable;
|
|
320
|
+
}
|
|
321
|
+
exports._constructNamespaceTranslationTable = _constructNamespaceTranslationTable;
|
|
193
322
|
//# sourceMappingURL=construct_namespace_dependency.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"construct_namespace_dependency.js","sourceRoot":"","sources":["../../../src/nodeset_tools/construct_namespace_dependency.ts"],"names":[],"mappings":";;;;;;AACA,iEAAkD;AAElD,mEAAkD;AAElD,2DAA6C;AAC7C,0EAAuC;AACvC,uDAAkE;AAElE,sDAAmE;AAGnE,MAAM,UAAU,GAAG,IAAA,kCAAe,EAAC,UAAU,CAAC,CAAC;AAC/C,MAAM,QAAQ,GAAG,IAAA,gCAAa,EAAC,UAAU,CAAC,CAAC;AAE3C,SAAS,6BAA6B,CAClC,SAAqB,EACrB,UAAwB,EACxB,MAAmB,EACnB,gBAA6B,EAC7B,aAAuB;IAEvB,MAAM,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC;IAC5C,MAAM,UAAU,GAAG,SAA6B,CAAC;IACjD,wCAAwC;IAExC,SAAS,QAAQ,CAAC,cAAsB;QACpC,IAAI,qBAAqB,CAAC,cAAc,EAAE,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,EAAE;YACvE,OAAO;SACV;QACD,gBAAgB,CAAC,cAAc,CAAC,CAAC;IACrC,CAAC;IACD,SAAS,gBAAgB,CAAC,cAAsB;QAC5C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE;YAC7B,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YAC3B,MAAM,SAAS,GAAG,YAAY,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;YAC5D,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC3B,IAAI,cAAc,GAAG,CAAC,EAAE;gBACpB,6BAA6B,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,gBAAgB,EAAE,aAAa,CAAC,CAAC;aACjG;SACJ;IACL,CAAC;IAED,SAAS,oBAAoB,CAAC,KAAqB;QAC/C,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QAChC,MAAM,cAAc,GAAG,QAAQ,CAAC,SAAS,CAAC;QAC1C,gBAAgB,CAAC,cAAc,CAAC,CAAC;QACjC,MAAM,YAAY,GAAG,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC/D,IAAI,YAAY,EAAE;YACd,gBAAgB,CAAC,YAAY,CAAC,CAAC;SAClC;IACL,CAAC;IACD,SAAS,gBAAgB,CAAC,YAAwB;QAC9C,IAAI,CAAC,YAAY,EAAE;YACf,OAAO;SACV;QACD,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC;QACrC,IAAI,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAAE;YAC3C,OAAO;SACV;QACD,uBAAuB;QACvB,IAAI,YAAY,CAAC,SAAS,KAAK,iCAAS,CAAC,QAAQ,EAAE;YAC/C,UAAU,CAAC,6BAA6B,EAAE,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;YACnE,OAAO;SACV;QAED,MAAM,cAAc,GAAG,QAAQ,CAAC,SAAS,CAAC;QAC1C,gBAAgB,CAAC,cAAc,CAAC,CAAC;QACjC,IAAI,YAAY,CAAC,WAAW,EAAE,EAAE;YAC5B,MAAM,UAAU,GAAG,YAAY,CAAC,sBAAsB,EAAE,CAAC;YACzD,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,MAAM,IAAI,EAAE,EAAE;gBACzC,oBAAoB,CAAC,KAAK,CAAC,CAAC;aAC/B;SACJ;QACD,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,SAAS,sBAAsB,CAAC,CAAkB;QAC9C,IAAA,2BAAM,EAAC,CAAC,CAAC,CAAC,YAAY,4BAAO,CAAC,CAAC,CAAC;QAChC,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,kBAAkB,IAAI,CAAC,CAAC,MAAM,CAAC,cAAc,IAAI,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC;QACjG,gBAAgB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACnC,uBAAuB;QACvB,IAAI,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE;YACnC,UAAU,CAAC,iCAAiC,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAChE;QACD,MAAM,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAsB,CAAC;QAC9E,uBAAuB;QACvB,IAAI,CAAC,CAAC;YAAE,OAAO;QACf,gBAAgB,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC;IACD,SAAS,gBAAgB,CAAC,UAA0B;QAChD,IAAI,UAAU,CAAC,gBAAgB,EAAE,KAAK,iCAAQ,CAAC,eAAe,EAAE;YAC5D,OAAO;SACV;QACD,IAAI,CAAC,UAAU,CAAC,UAAU;YAAE,OAAO;QACnC,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC;QAC5C,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,MAAM,KAAK,GAAgB,OAAO,CAAC,KAAK,CAAC;QACzC,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACtB,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;SACzC;aAAM;YACH,sBAAsB,CAAC,KAAK,CAAC,CAAC;SACjC;IACL,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,YAAY,EAAE,EAAE;QAC1C,IAAI,IAAI,CAAC,SAAS,KAAK,iCAAS,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,KAAK,iCAAS,CAAC,YAAY,EAAE;YACpF,MAAM,cAAc,GAAI,IAAoC,CAAC,QAAQ,CAAC;YACtE,MAAM,YAAY,GAAG,YAAY,CAAC,YAAY,CAAC,cAAc,CAAE,CAAC;YAChE,IAAI,YAAY,EAAE;gBACd,gBAAgB,CAAC,YAAY,CAAC,CAAC;aAClC;iBAAM;gBACH,uBAAuB;gBACvB,IAAI,cAAc,CAAC,KAAK,IAAI,CAAC,EAAE;oBAC3B,UAAU,CAAC,+BAA+B,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC;iBAC1E;aACJ;YACD,MAAM,KAAK,GAAG,IAAsB,CAAC;YACrC,gBAAgB,CAAC,KAAK,CAAC,CAAC;SAC3B;QACD,uBAAuB;QACvB,MAAM,UAAU,GAAkB,IAAK,CAAC,aAAa,EAAE,CAAC;QACxD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;YAChC,oBAAoB;YACpB,MAAM,cAAc,GAAG,IAAA,iCAAgB,EAAC,SAAS,CAAE,CAAC,MAAM,CAAC,SAAS,CAAC;YACrE,QAAQ,CAAC,cAAc,CAAC,CAAC;YACzB,MAAM,eAAe,GAAG,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC;YACnD,QAAQ,CAAC,eAAe,CAAC,CAAC;SAC7B;KACJ;AACL,CAAC;AAED,SAAgB,qBAAqB,CAAC,eAAuB,EAAE,eAAuB,EAAE,aAAuB;IAC3G,MAAM,MAAM,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC;IAC9C,OAAO,MAAM,GAAG,MAAM,CAAC;AAC3B,CAAC;AAJD,sDAIC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAgB,+BAA+B,CAAC,SAAqB;IACjE,+BAA+B;IAC/B,uGAAuG;IACvG,oCAAoC;IACpC,qHAAqH;IAErH,MAAM,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC;IAC5C,MAAM,UAAU,GAAG,YAAY,CAAC,iBAAiB,EAAE,CAAC;IAEpD,MAAM,gBAAgB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB,EAAE,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC;IACxG,MAAM,mBAAmB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB,EAAE,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC;IAE3G,MAAM,YAAY,GAAa,CAAC,CAAC,CAAC,CAAC;IACnC,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC9C,YAAY,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,OAAO,EAAE,CAAC;KACvD;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,mBAAmB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACjD,YAAY,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,OAAO,EAAE,CAAC;KAC1D;IACD,OAAO,YAAY,CAAC;AACxB,CAAC;AArBD,0EAqBC;AACD,MAAM,OAAO,GAAG,KAAK,CAAC;AACtB,SAAgB,4BAA4B,CAAC,SAAqB,EAAE,aAAwB;IACxF,MAAM,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC;IAE5C,aAAa,GAAG,aAAa,IAAI,+BAA+B,CAAC,SAAS,CAAC,CAAC;IAE5E,MAAM,UAAU,GAAiB,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IAEjC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,mBAAmB,EAAE,CAAC,CAAC;IACpD,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAEd,IAAI,SAAS,KAAK,YAAY,CAAC,mBAAmB,EAAE,EAAE;QAClD,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3B,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;KAC/B;IACD,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;IAE3C,6BAA6B,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,gBAAgB,EAAE,aAAa,CAAC,CAAC;IAE9F,uBAAuB;IACvB,OAAO,IAAI,QAAQ,CAAC,cAAc,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;IAC7E,uBAAuB;IACvB,OAAO,IAAI,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAEhG,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,aAAc,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,aAAc,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvG,uBAAuB;IACvB,OAAO,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC/B,uBAAuB;IACvB,OAAO,IAAI,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAE5F,OAAO,MAAM,CAAC;AAClB,CAAC;AA/BD,oEA+BC"}
|
|
1
|
+
{"version":3,"file":"construct_namespace_dependency.js","sourceRoot":"","sources":["../../../src/nodeset_tools/construct_namespace_dependency.ts"],"names":[],"mappings":"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"}
|
|
@@ -92,11 +92,16 @@ function translateBrowseName(xw, browseName) {
|
|
|
92
92
|
function b(xw, browseName) {
|
|
93
93
|
return translateBrowseName(xw, browseName).toString().replace("ns=0;", "");
|
|
94
94
|
}
|
|
95
|
+
function hasHigherPriorityThan(namespaceIndex1, namespaceIndex2, priorityTable) {
|
|
96
|
+
const order1 = priorityTable[namespaceIndex1];
|
|
97
|
+
const order2 = priorityTable[namespaceIndex2];
|
|
98
|
+
return order1 > order2;
|
|
99
|
+
}
|
|
95
100
|
function _hasHigherPriorityThan(xw, namespaceIndex1, namespaceIndex2) {
|
|
96
101
|
(0, node_opcua_assert_1.assert)(xw.priorityTable, "expecting a priorityTable");
|
|
97
102
|
(0, node_opcua_assert_1.assert)(namespaceIndex1 < xw.priorityTable.length);
|
|
98
103
|
(0, node_opcua_assert_1.assert)(namespaceIndex2 < xw.priorityTable.length);
|
|
99
|
-
return
|
|
104
|
+
return hasHigherPriorityThan(namespaceIndex1, namespaceIndex2, xw.priorityTable);
|
|
100
105
|
}
|
|
101
106
|
function _dumpReferences(xw, node) {
|
|
102
107
|
xw.startElement("References");
|
|
@@ -152,7 +157,8 @@ function _dumpReferences(xw, node) {
|
|
|
152
157
|
}
|
|
153
158
|
return false;
|
|
154
159
|
}
|
|
155
|
-
const
|
|
160
|
+
const allReferences = node.allReferences();
|
|
161
|
+
const references = allReferences.filter(referenceToKeep);
|
|
156
162
|
for (const reference of references.sort(sortByNodeId)) {
|
|
157
163
|
if ((0, base_node_impl_1.getReferenceType)(reference).browseName.toString() === "HasSubtype" && reference.isForward) {
|
|
158
164
|
continue;
|
|
@@ -453,6 +459,10 @@ function _dumpVariantExtensionObjectValue2(xw, addressSpace, value) {
|
|
|
453
459
|
const dataTypeNodeId = value.schema.dataTypeNodeId;
|
|
454
460
|
const definitionMap = (0, decode_xml_extension_object_1.makeDefinitionMap)(addressSpace);
|
|
455
461
|
const dataTypeNode = addressSpace.findDataType(dataTypeNodeId);
|
|
462
|
+
if (!dataTypeNode) {
|
|
463
|
+
warningLog("_dumpVariantExtensionObjectValue2: Cannot find dataType for ", dataTypeNodeId.toString());
|
|
464
|
+
return;
|
|
465
|
+
}
|
|
456
466
|
_dumpVariantExtensionObjectValue(xw, dataTypeNode.nodeId, definitionMap, value);
|
|
457
467
|
}
|
|
458
468
|
// eslint-disable-next-line complexity
|
|
@@ -984,7 +994,7 @@ function dumpUAObjectType(xw, node) {
|
|
|
984
994
|
(0, node_opcua_assert_1.assert)(node instanceof ua_object_type_impl_1.UAObjectTypeImpl);
|
|
985
995
|
xw.writeComment("ObjectType - " + b(xw, node.browseName) + " {{{{ ");
|
|
986
996
|
_markAsVisited(xw, node);
|
|
987
|
-
// dump SubtypeOf and HasTypeDefinition
|
|
997
|
+
// dump SubtypeOf and HasTypeDefinition node if part of the same namespace
|
|
988
998
|
dumpReferencedNodes(xw, node, false);
|
|
989
999
|
xw.startElement("UAObjectType");
|
|
990
1000
|
dumpCommonAttributes(xw, node);
|
|
@@ -1082,24 +1092,6 @@ function writeAliases(xw, aliases) {
|
|
|
1082
1092
|
}
|
|
1083
1093
|
xw.endElement();
|
|
1084
1094
|
}
|
|
1085
|
-
function constructNamespaceTranslationTable(dependency, exportedNamespace) {
|
|
1086
|
-
const translationTable = {};
|
|
1087
|
-
(0, node_opcua_assert_1.assert)(dependency[0].namespaceUri === "http://opcfoundation.org/UA/");
|
|
1088
|
-
let counter = 0;
|
|
1089
|
-
translationTable[dependency[0].index] = counter++;
|
|
1090
|
-
//
|
|
1091
|
-
if (exportedNamespace) {
|
|
1092
|
-
translationTable[exportedNamespace.index] = counter++;
|
|
1093
|
-
}
|
|
1094
|
-
for (let i = 1; i < dependency.length; i++) {
|
|
1095
|
-
const dep = dependency[i];
|
|
1096
|
-
if (exportedNamespace && exportedNamespace === dep) {
|
|
1097
|
-
continue;
|
|
1098
|
-
}
|
|
1099
|
-
translationTable[dep.index] = counter++;
|
|
1100
|
-
}
|
|
1101
|
-
return translationTable;
|
|
1102
|
-
}
|
|
1103
1095
|
function dumpReferenceType(xw, referenceType) {
|
|
1104
1096
|
_markAsVisited(xw, referenceType);
|
|
1105
1097
|
xw.startElement("UAReferenceType");
|
|
@@ -1165,9 +1157,9 @@ namespace_impl_1.NamespaceImpl.prototype.toNodeset2XML = function () {
|
|
|
1165
1157
|
? namespaceArrayNode.readAttribute(null, node_opcua_basic_types_1.AttributeIds.Value).value.value
|
|
1166
1158
|
: [];
|
|
1167
1159
|
const xw = new XMLWriter(true);
|
|
1168
|
-
xw.priorityTable = (0, construct_namespace_dependency_1.constructNamespacePriorityTable)(this);
|
|
1160
|
+
xw.priorityTable = (0, construct_namespace_dependency_1.constructNamespacePriorityTable)(this.addressSpace).priorityTable;
|
|
1169
1161
|
const dependency = (0, construct_namespace_dependency_1.constructNamespaceDependency)(this, xw.priorityTable);
|
|
1170
|
-
const translationTable =
|
|
1162
|
+
const translationTable = (0, construct_namespace_dependency_1._constructNamespaceTranslationTable)(dependency, this);
|
|
1171
1163
|
xw.translationTable = translationTable;
|
|
1172
1164
|
xw.startDocument({ encoding: "utf-8", version: "1.0" });
|
|
1173
1165
|
xw.startElement("UANodeSet");
|