node-opcua-client-dynamic-extension-object 2.139.0 → 2.140.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.
@@ -1,6 +1,15 @@
1
1
  import { IBasicSessionAsync2 } from "node-opcua-pseudo-session";
2
+ import { NodeId } from "node-opcua-nodeid";
2
3
  import { ExtraDataTypeManager } from "./extra_data_type_manager";
3
4
  import { DataTypeExtractStrategy } from "./populate_data_type_manager";
5
+ export interface IBasicSessionAsync2Private extends IBasicSessionAsync2 {
6
+ $$namespaceArray?: string[];
7
+ $$extraDataTypeManager?: ExtraDataTypeManager;
8
+ $$extraDataTypeManagerToResolve?: [(a: ExtraDataTypeManager) => void, (err: Error) => void][];
9
+ $$getSessionForDataTypeExtraction?: () => IBasicSessionAsync2;
10
+ on?: (this: IBasicSessionAsync2Private, event: "session_restored", func: () => void) => void;
11
+ sessionId?: NodeId;
12
+ }
4
13
  export declare function invalidateExtraDataTypeManager(session: IBasicSessionAsync2): Promise<void>;
5
14
  export declare function extractDataTypeManagerPrivate(session: IBasicSessionAsync2, strategy: DataTypeExtractStrategy): Promise<ExtraDataTypeManager>;
6
15
  export declare function getExtraDataTypeManager(session: IBasicSessionAsync2, strategy?: DataTypeExtractStrategy): Promise<ExtraDataTypeManager>;
@@ -55,8 +55,21 @@ function getStrategy(session, strategy) {
55
55
  }
56
56
  return populate_data_type_manager_1.DataTypeExtractStrategy.Auto;
57
57
  }
58
+ function getSessionForDataTypeManagerExtraction(session) {
59
+ const _session = session;
60
+ if (_session.$$getSessionForDataTypeExtraction) {
61
+ return _session.$$getSessionForDataTypeExtraction();
62
+ }
63
+ return session;
64
+ }
65
+ function followSession(session) {
66
+ if (session.session) {
67
+ return followSession(session.session);
68
+ }
69
+ return session;
70
+ }
58
71
  async function getExtraDataTypeManager(session, strategy) {
59
- const sessionPriv = session;
72
+ const sessionPriv = followSession(session);
60
73
  if (sessionPriv.$$extraDataTypeManager) {
61
74
  return sessionPriv.$$extraDataTypeManager;
62
75
  }
@@ -72,7 +85,10 @@ async function getExtraDataTypeManager(session, strategy) {
72
85
  (async () => {
73
86
  try {
74
87
  strategy = getStrategy(session, strategy);
75
- const dataTypeManager = await extractDataTypeManagerPrivate(session, strategy);
88
+ const sessionToUse = getSessionForDataTypeManagerExtraction(session);
89
+ const dataTypeManager = await extractDataTypeManagerPrivate(sessionToUse, strategy);
90
+ // note: reconnection will call invalidateExtraDataTypeManager
91
+ // if the session is recreated
76
92
  const tmp = sessionPriv.$$extraDataTypeManagerToResolve;
77
93
  sessionPriv.$$extraDataTypeManagerToResolve = undefined;
78
94
  for (const [resolve] of tmp) {
@@ -1 +1 @@
1
- {"version":3,"file":"get_extra_data_type_manager.js","sourceRoot":"","sources":["../source/get_extra_data_type_manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get_extra_data_type_manager.js","sourceRoot":"","sources":["../source/get_extra_data_type_manager.ts"],"names":[],"mappings":"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"}
@@ -26,17 +26,18 @@ async function serverImplementsDataTypeDefinition(session) {
26
26
  resultMask: node_opcua_data_model_1.ResultMask.TypeDefinition
27
27
  });
28
28
  let count103DataType = 0;
29
- for (const ref of browseResult1.references || []) {
29
+ const innerF = async (ref) => {
30
30
  const td = ref.typeDefinition;
31
- if (!(td.namespace === 0 && td.value === node_opcua_constants_1.VariableTypeIds.DataTypeDictionaryType))
32
- continue;
31
+ if (!(td.namespace === 0 && td.value === node_opcua_constants_1.VariableTypeIds.DataTypeDictionaryType)) {
32
+ return;
33
+ }
33
34
  // we have a type definition,
34
35
  // let check if there is a deprecated property
35
36
  const p = await session.translateBrowsePath((0, node_opcua_service_translate_browse_path_1.makeBrowsePath)(ref.nodeId, "/Deprecated"));
36
37
  if (!p.statusCode.isGood() || !p.targets || p.targets.length === 0) {
37
38
  // the dataTypeDictionaryType is not exposing a Deprecated property
38
39
  count103DataType++;
39
- continue;
40
+ return;
40
41
  }
41
42
  const deprecatedNodeId = p.targets[0].targetId;
42
43
  // we have a deprecated property => this is a 1.03 server or 1.04
@@ -45,9 +46,18 @@ async function serverImplementsDataTypeDefinition(session) {
45
46
  if (dataValue.statusCode.isGood() && dataValue.value.value === false) {
46
47
  // this is a 1.03 server
47
48
  count103DataType++;
48
- continue;
49
+ return;
50
+ }
51
+ };
52
+ if (false) {
53
+ for (let r of (browseResult1.references || [])) {
54
+ await innerF(r);
49
55
  }
50
56
  }
57
+ else {
58
+ const promises = (browseResult1.references || []).map((a) => innerF(a));
59
+ await Promise.all(promises);
60
+ }
51
61
  if (count103DataType >= 1) {
52
62
  // some namespace are old , we cannot assume that all namespace are 1.04
53
63
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"populate_data_type_manager.js","sourceRoot":"","sources":["../source/populate_data_type_manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"populate_data_type_manager.js","sourceRoot":"","sources":["../source/populate_data_type_manager.ts"],"names":[],"mappings":"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"}
@@ -335,7 +335,8 @@ async function _extractDataTypeDictionary(session, d, dataTypeManager) {
335
335
  session.read({ nodeId: dataTypeDictionaryNodeId, attributeId: node_opcua_data_model_1.AttributeIds.BrowseName }),
336
336
  _readNamespaceUriProperty(session, dataTypeDictionaryNodeId)
337
337
  ]);
338
- doDebug && debugLog("DataTypeDictionary is deprecated or BSD schema stored in dataValue is null !", chalk_1.default.cyan(name.value.value.toString()), "namespace =", namespace);
338
+ doDebug &&
339
+ debugLog("DataTypeDictionary is deprecated or BSD schema stored in dataValue is null !", chalk_1.default.cyan(name.value.value.toString()), "namespace =", namespace);
339
340
  debugLog("let's use the new way (1.04) and let's explore all dataTypes exposed by this name space");
340
341
  }
341
342
  // dataType definition in store directly in UADataType under the definition attribute
@@ -347,7 +348,8 @@ async function _extractDataTypeDictionary(session, d, dataTypeManager) {
347
348
  }
348
349
  else {
349
350
  const rawSchema = d.rawSchema; // DataValue = await session.read({ nodeId: dataTypeDictionaryNodeId, attributeId: AttributeIds.Value });
350
- doDebug && debugLog(" ----- Using old method for extracting schema => with BSD files -----", dataTypeDictionaryNodeId.namespaceUri);
351
+ doDebug &&
352
+ debugLog(" ----- Using old method for extracting schema => with BSD files -----", dataTypeDictionaryNodeId.namespaceUri);
351
353
  // old method ( until 1.03 )
352
354
  // one need to read the schema file store in the dataTypeDictionary node and parse it !
353
355
  /* istanbul ignore next */
@@ -505,13 +507,16 @@ async function populateDataTypeManager103(session, dataTypeManager) {
505
507
  async function putInCorrectOrder() {
506
508
  const infos = [];
507
509
  const innerMap = {};
508
- for (const reference of references) {
510
+ const innerF = async (reference) => {
509
511
  const dataTypeDictionaryNodeId = reference.nodeId;
510
- const isDictionaryDeprecated = await _readDeprecatedFlag(session, dataTypeDictionaryNodeId);
511
- const rawSchemaDataValue = await session.read({
512
- attributeId: node_opcua_data_model_1.AttributeIds.Value,
513
- nodeId: dataTypeDictionaryNodeId
514
- });
512
+ const promises = [
513
+ /* isDictionaryDeprecated: bool = await */ _readDeprecatedFlag(session, dataTypeDictionaryNodeId),
514
+ /* rawSchemaDataValue!: DataValue = await */ session.read({
515
+ attributeId: node_opcua_data_model_1.AttributeIds.Value,
516
+ nodeId: dataTypeDictionaryNodeId
517
+ })
518
+ ];
519
+ const [isDictionaryDeprecated, rawSchemaDataValue] = await Promise.all(promises);
515
520
  const rawSchema = rawSchemaDataValue.value.value ? rawSchemaDataValue.value.value.toString() : "";
516
521
  const info = {
517
522
  dataTypeDictionaryNodeId,
@@ -561,7 +566,9 @@ async function populateDataTypeManager103(session, dataTypeManager) {
561
566
  innerMap[info.targetNamespace] = info;
562
567
  }
563
568
  // assert(info.targetNamespace.length !== 0);
564
- }
569
+ };
570
+ const promises = references.map(innerF);
571
+ await Promise.all(promises);
565
572
  // ----------------------------------
566
573
  const orderedList = [];
567
574
  const visited = {};
@@ -590,7 +597,8 @@ async function populateDataTypeManager103(session, dataTypeManager) {
590
597
  const map2 = {};
591
598
  for (const d of dataTypeDictionaryInfo) {
592
599
  map[d.targetNamespace] = d;
593
- doDebug && debugLog(" fixing based dataTypeFactory dependencies for ", d.targetNamespace, "index = ", d.dataTypeDictionaryNodeId.namespace);
600
+ doDebug &&
601
+ debugLog(" fixing based dataTypeFactory dependencies for ", d.targetNamespace, "index = ", d.dataTypeDictionaryNodeId.namespace);
594
602
  const baseDataFactories = [(0, node_opcua_factory_1.getStandardDataTypeFactory)()];
595
603
  for (const namespace of Object.values(d.dependencies)) {
596
604
  if (namespace === d.targetNamespace) {
@@ -604,10 +612,11 @@ async function populateDataTypeManager103(session, dataTypeManager) {
604
612
  if (dataTypeManager.hasDataTypeFactory(namespaceIndex)) {
605
613
  const dep = dataTypeManager.getDataTypeFactory(namespaceIndex);
606
614
  baseDataFactories.push(dep);
607
- doDebug && debugLog(" considering , ", baseDataFactory.targetNamespace, "index = ", baseDataFactory.dataTypeDictionaryNodeId.namespace);
615
+ doDebug &&
616
+ debugLog(" considering , ", baseDataFactory.targetNamespace, "index = ", baseDataFactory.dataTypeDictionaryNodeId.namespace);
608
617
  }
609
618
  }
610
- doDebug && debugLog(' baseDataFactories = ', baseDataFactories.map((f) => f.targetNamespace).join(" "));
619
+ doDebug && debugLog(" baseDataFactories = ", baseDataFactories.map((f) => f.targetNamespace).join(" "));
611
620
  map2[d.targetNamespace] = baseDataFactories;
612
621
  }
613
622
  namespaceArray = dataTypeManager.namespaceArray;
@@ -659,10 +668,58 @@ async function populateDataTypeManager103(session, dataTypeManager) {
659
668
  const dataTypeFactory = dataTypeManager.getDataTypeFactoryForNamespace(dataTypeDictionaryNodeId.namespace);
660
669
  await _exploreDataTypeDefinition(session, dataTypeDictionaryNodeId, dataTypeFactory, dataTypeManager.namespaceArray);
661
670
  }
671
+ // istanbul ignore next
672
+ if (doDebug) {
673
+ for (const d of dataTypeDictionaryInfo) {
674
+ console.log(d);
675
+ }
676
+ }
662
677
  // https://medium.com/swlh/dealing-with-multiple-promises-in-javascript-41d6c21f20ff
663
- for (const d of dataTypeDictionaryInfo) {
664
- await processReferenceOnDataTypeDictionaryType(d);
678
+ if (false) {
679
+ // we need to read sequentially the dataTypeDictionaryInfo
680
+ // to esnsure that dependencies are resolved in the correct order
681
+ for (const d of dataTypeDictionaryInfo) {
682
+ await processReferenceOnDataTypeDictionaryType(d);
683
+ }
684
+ }
685
+ else {
686
+ // attempt to load all dataTypeDictionary in parallel as much as possible
687
+ // by ensuring parallel operation happens only when dependencies are resolved
688
+ const canBeProcessed = (d, alreadyProcessed) => {
689
+ for (const namespace of Object.values(d.dependencies)) {
690
+ if (d.targetNamespace === namespace) {
691
+ continue;
692
+ }
693
+ if (!alreadyProcessed.has(namespace)) {
694
+ return false;
695
+ }
696
+ }
697
+ return true;
698
+ };
699
+ const alreadyProcessed = new Set();
700
+ alreadyProcessed.add("http://opcfoundation.org/UA/");
701
+ alreadyProcessed.add("http://www.w3.org/2001/XMLSchema-instance");
702
+ alreadyProcessed.add("http://opcfoundation.org/BinarySchema/");
703
+ const queue = [...dataTypeDictionaryInfo];
704
+ while (queue.length > 0) {
705
+ doDebug && console.log("queue length = ", queue.length);
706
+ const toProcess = queue.splice(0);
707
+ const promises = [];
708
+ for (const d of toProcess) {
709
+ if (canBeProcessed(d, alreadyProcessed)) {
710
+ promises.push((async () => {
711
+ await processReferenceOnDataTypeDictionaryType(d);
712
+ alreadyProcessed.add(d.targetNamespace);
713
+ })());
714
+ }
715
+ else {
716
+ queue.push(d);
717
+ }
718
+ }
719
+ // const promise: Promise<void>[] = dataTypeDictionaryInfo.map(processReferenceOnDataTypeDictionaryType);
720
+ await Promise.all(promises);
721
+ }
665
722
  }
666
- debugLog("out ... populateDataTypeManager");
723
+ debugLog("out ... populateDataTypeManager103");
667
724
  }
668
725
  //# sourceMappingURL=populate_data_type_manager_103.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"populate_data_type_manager_103.js","sourceRoot":"","sources":["../../source/private/populate_data_type_manager_103.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"populate_data_type_manager_103.js","sourceRoot":"","sources":["../../source/private/populate_data_type_manager_103.ts"],"names":[],"mappings":"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"}
@@ -4,4 +4,8 @@ export interface PseudoDataValue {
4
4
  value: Variant;
5
5
  }
6
6
  export declare function extractDataValueToPromote(dataValues: PseudoDataValue[]): PseudoDataValue[];
7
+ /**
8
+ *
9
+ * @private
10
+ */
7
11
  export declare function promoteOpaqueStructure(session: IBasicSessionAsync2, dataValues: PseudoDataValue[]): Promise<void>;
@@ -18,6 +18,10 @@ function extractDataValueToPromote(dataValues) {
18
18
  dataValue.value.value[0] instanceof node_opcua_extension_object_1.OpaqueStructure)));
19
19
  return dataValuesToFix;
20
20
  }
21
+ /**
22
+ *
23
+ * @private
24
+ */
21
25
  async function promoteOpaqueStructure(session, dataValues) {
22
26
  const dataValuesToFix = extractDataValueToPromote(dataValues);
23
27
  if (dataValuesToFix.length === 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"promote_opaque_structure.js","sourceRoot":"","sources":["../source/promote_opaque_structure.ts"],"names":[],"mappings":";;AAWA,8DAaC;AACD,wDAcC;AAvCD,6EAA8D;AAE9D,2DAAyE;AACzE,EAAE;AACF,+EAAwE;AACxE,yFAAmF;AAMnF,SAAgB,yBAAyB,CAAC,UAA6B;IACnE,oCAAoC;IACpC,MAAM,eAAe,GAAG,UAAU,CAAC,MAAM,CACrC,CAAC,SAA0B,EAAE,EAAE,CAC3B,SAAS,CAAC,KAAK;QACf,SAAS,CAAC,KAAK,CAAC,QAAQ,KAAK,6BAAQ,CAAC,eAAe;QACrD,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,KAAK,qCAAgB,CAAC,MAAM,IAAI,SAAS,CAAC,KAAK,CAAC,KAAK,YAAY,6CAAe,CAAC;YACxG,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,KAAK,qCAAgB,CAAC,MAAM;gBAClD,SAAS,CAAC,KAAK,CAAC,KAAK;gBACrB,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC;gBACjC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,6CAAe,CAAC,CAAC,CACpE,CAAC;IACF,OAAO,eAAe,CAAC;AAC3B,CAAC;AACM,KAAK,UAAU,sBAAsB,CAAC,OAA4B,EAAE,UAA6B;IACpG,MAAM,eAAe,GAAG,yBAAyB,CAAC,UAAU,CAAC,CAAC;IAC9D,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO;IACX,CAAC;IAED,mDAAmD;IACnD,MAAM,oBAAoB,GAAG,MAAM,IAAA,qDAAuB,EAAC,OAAO,CAAC,CAAC;IAEpE,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,SAA0B,EAAE,EAAE;QACtE,OAAO,MAAM,IAAA,gEAA6B,EAAC,OAAO,EAAE,SAAS,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;IAC/F,CAAC,CAAC,CAAC;IACH,oFAAoF;IACpF,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9D,CAAC"}
1
+ {"version":3,"file":"promote_opaque_structure.js","sourceRoot":"","sources":["../source/promote_opaque_structure.ts"],"names":[],"mappings":";;AAWA,8DAaC;AAKD,wDAcC;AA3CD,6EAA8D;AAE9D,2DAAyE;AACzE,EAAE;AACF,+EAAwE;AACxE,yFAAmF;AAMnF,SAAgB,yBAAyB,CAAC,UAA6B;IACnE,oCAAoC;IACpC,MAAM,eAAe,GAAG,UAAU,CAAC,MAAM,CACrC,CAAC,SAA0B,EAAE,EAAE,CAC3B,SAAS,CAAC,KAAK;QACf,SAAS,CAAC,KAAK,CAAC,QAAQ,KAAK,6BAAQ,CAAC,eAAe;QACrD,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,KAAK,qCAAgB,CAAC,MAAM,IAAI,SAAS,CAAC,KAAK,CAAC,KAAK,YAAY,6CAAe,CAAC;YACxG,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,KAAK,qCAAgB,CAAC,MAAM;gBAClD,SAAS,CAAC,KAAK,CAAC,KAAK;gBACrB,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC;gBACjC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,6CAAe,CAAC,CAAC,CACpE,CAAC;IACF,OAAO,eAAe,CAAC;AAC3B,CAAC;AACD;;;GAGG;AACI,KAAK,UAAU,sBAAsB,CAAC,OAA4B,EAAE,UAA6B;IACpG,MAAM,eAAe,GAAG,yBAAyB,CAAC,UAAU,CAAC,CAAC;IAC9D,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO;IACX,CAAC;IAED,mDAAmD;IACnD,MAAM,oBAAoB,GAAG,MAAM,IAAA,qDAAuB,EAAC,OAAO,CAAC,CAAC;IAEpE,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,SAA0B,EAAE,EAAE;QACtE,OAAO,MAAM,IAAA,gEAA6B,EAAC,OAAO,EAAE,SAAS,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;IAC/F,CAAC,CAAC,CAAC;IACH,oFAAoF;IACpF,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9D,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-opcua-client-dynamic-extension-object",
3
- "version": "2.139.0",
3
+ "version": "2.140.0",
4
4
  "description": "pure nodejs OPCUA SDK - module client-dynamic-extension-object",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -20,7 +20,7 @@
20
20
  "node-opcua-extension-object": "2.139.0",
21
21
  "node-opcua-factory": "2.139.0",
22
22
  "node-opcua-nodeid": "2.139.0",
23
- "node-opcua-pseudo-session": "2.139.0",
23
+ "node-opcua-pseudo-session": "2.140.0",
24
24
  "node-opcua-schemas": "2.139.0",
25
25
  "node-opcua-service-browse": "2.139.0",
26
26
  "node-opcua-service-translate-browse-path": "2.139.0",
@@ -43,7 +43,7 @@
43
43
  "internet of things"
44
44
  ],
45
45
  "homepage": "http://node-opcua.github.io/",
46
- "gitHead": "b7a01d31c7602d323e60a5f4a54428199a266f29",
46
+ "gitHead": "f966ee4ce83c1012795fbf030d261df091c3c189",
47
47
  "files": [
48
48
  "dist",
49
49
  "source"
@@ -5,22 +5,31 @@ import {
5
5
  clearSessionCache,
6
6
  readNamespaceArray
7
7
  } from "node-opcua-pseudo-session";
8
+ import { NodeId } from "node-opcua-nodeid";
8
9
  //
9
10
  import { ExtraDataTypeManager } from "./extra_data_type_manager";
10
11
  import { DataTypeExtractStrategy, populateDataTypeManager } from "./populate_data_type_manager";
11
12
 
13
+
12
14
  const doDebug = checkDebugFlag(__filename);
13
15
  const debugLog = make_debugLog(__filename);
14
16
  const errorLog = make_errorLog(__filename);
15
17
  const warningLog = errorLog;
16
18
 
17
- interface IBasicSession_ extends IBasicSessionAsync2 {
19
+ export interface IBasicSessionAsync2Private extends IBasicSessionAsync2 {
18
20
  $$namespaceArray?: string[];
19
21
  $$extraDataTypeManager?: ExtraDataTypeManager;
20
22
  $$extraDataTypeManagerToResolve?: [(a: ExtraDataTypeManager) => void, (err: Error) => void][];
23
+
24
+ $$getSessionForDataTypeExtraction?: () => IBasicSessionAsync2;
25
+
26
+ on?: (this: IBasicSessionAsync2Private, event: "session_restored", func: () => void)=> void;
27
+
28
+ sessionId?: NodeId;
29
+
21
30
  }
22
31
  export async function invalidateExtraDataTypeManager(session: IBasicSessionAsync2): Promise<void> {
23
- const sessionPriv = session as IBasicSession_;
32
+ const sessionPriv = session as IBasicSessionAsync2Private;
24
33
  clearSessionCache(session);
25
34
  sessionPriv.$$namespaceArray = undefined;
26
35
  sessionPriv.$$extraDataTypeManager = undefined;
@@ -64,8 +73,27 @@ function getStrategy(session: IBasicSessionAsync2, strategy?: DataTypeExtractStr
64
73
  }
65
74
  return DataTypeExtractStrategy.Auto;
66
75
  }
76
+
77
+ function getSessionForDataTypeManagerExtraction(session: IBasicSessionAsync2): IBasicSessionAsync2 {
78
+ const _session: IBasicSessionAsync2Private = session as IBasicSessionAsync2Private;
79
+ if (_session.$$getSessionForDataTypeExtraction) {
80
+ return _session.$$getSessionForDataTypeExtraction();
81
+ }
82
+ return session;
83
+ }
84
+
85
+ type ICascadingSession = { session?: IBasicSessionAsync2; }
86
+ function followSession(session: IBasicSessionAsync2Private & ICascadingSession): IBasicSessionAsync2Private {
87
+ if (session.session) {
88
+ return followSession(session.session);
89
+ }
90
+ return session;
91
+ }
92
+
67
93
  export async function getExtraDataTypeManager(session: IBasicSessionAsync2, strategy?: DataTypeExtractStrategy ): Promise<ExtraDataTypeManager> {
68
- const sessionPriv: IBasicSession_ = session as IBasicSession_;
94
+
95
+ const sessionPriv: IBasicSessionAsync2Private = followSession(session) as IBasicSessionAsync2Private;
96
+
69
97
  if (sessionPriv.$$extraDataTypeManager) {
70
98
  return sessionPriv.$$extraDataTypeManager;
71
99
  }
@@ -83,7 +111,11 @@ export async function getExtraDataTypeManager(session: IBasicSessionAsync2, stra
83
111
  (async () => {
84
112
  try {
85
113
  strategy = getStrategy(session, strategy);
86
- const dataTypeManager = await extractDataTypeManagerPrivate(session, strategy);
114
+ const sessionToUse = getSessionForDataTypeManagerExtraction(session);
115
+
116
+ const dataTypeManager = await extractDataTypeManagerPrivate(sessionToUse, strategy);
117
+ // note: reconnection will call invalidateExtraDataTypeManager
118
+ // if the session is recreated
87
119
  const tmp = sessionPriv.$$extraDataTypeManagerToResolve!;
88
120
  sessionPriv.$$extraDataTypeManagerToResolve = undefined;
89
121
  for (const [resolve] of tmp) {
@@ -31,16 +31,19 @@ export async function serverImplementsDataTypeDefinition(
31
31
  });
32
32
 
33
33
  let count103DataType = 0;
34
- for (const ref of browseResult1.references || []) {
34
+
35
+ const innerF = async (ref: ReferenceDescription) => {
35
36
  const td = ref.typeDefinition;
36
- if (!(td.namespace === 0 && td.value === VariableTypeIds.DataTypeDictionaryType)) continue;
37
+ if (!(td.namespace === 0 && td.value === VariableTypeIds.DataTypeDictionaryType)) {
38
+ return;
39
+ }
37
40
  // we have a type definition,
38
41
  // let check if there is a deprecated property
39
42
  const p = await session.translateBrowsePath(makeBrowsePath(ref.nodeId, "/Deprecated"));
40
43
  if (!p.statusCode.isGood() || !p.targets || p.targets.length === 0) {
41
44
  // the dataTypeDictionaryType is not exposing a Deprecated property
42
45
  count103DataType++;
43
- continue;
46
+ return;
44
47
  }
45
48
  const deprecatedNodeId = p.targets[0].targetId;
46
49
  // we have a deprecated property => this is a 1.03 server or 1.04
@@ -49,9 +52,19 @@ export async function serverImplementsDataTypeDefinition(
49
52
  if (dataValue.statusCode.isGood() && dataValue.value.value === false) {
50
53
  // this is a 1.03 server
51
54
  count103DataType++;
52
- continue;
55
+ return;
56
+ }
57
+ }
58
+
59
+ if (false) {
60
+ for (let r of (browseResult1.references || [])) {
61
+ await innerF(r);
53
62
  }
63
+ } else {
64
+ const promises: Promise<void>[] = (browseResult1.references || []).map((a) => innerF(a));
65
+ await Promise.all(promises);
54
66
  }
67
+
55
68
  if (count103DataType >= 1) {
56
69
  // some namespace are old , we cannot assume that all namespace are 1.04
57
70
  return false;
@@ -120,7 +133,7 @@ export enum DataTypeExtractStrategy {
120
133
 
121
134
  export async function populateDataTypeManager(
122
135
  session: IBasicSessionAsync2,
123
- dataTypeManager: ExtraDataTypeManager,
136
+ dataTypeManager: ExtraDataTypeManager,
124
137
  strategy: DataTypeExtractStrategy
125
138
  ): Promise<void> {
126
139
  if (strategy === DataTypeExtractStrategy.Auto) {
@@ -134,7 +147,7 @@ export async function populateDataTypeManager(
134
147
  await populateDataTypeManager104(session, dataTypeManager);
135
148
  return;
136
149
  }
137
- if (strategy == DataTypeExtractStrategy.Force103|| strategy == DataTypeExtractStrategy.Both) {
150
+ if (strategy == DataTypeExtractStrategy.Force103 || strategy == DataTypeExtractStrategy.Both) {
138
151
  await populateDataTypeManager103(session, dataTypeManager);
139
152
  }
140
153
  if (strategy == DataTypeExtractStrategy.Force104 || strategy == DataTypeExtractStrategy.Both) {
@@ -27,6 +27,7 @@ import {
27
27
  CacheForFieldResolution,
28
28
  convertDataTypeDefinitionToStructureTypeSchema
29
29
  } from "../convert_data_type_definition_to_structuretype_schema";
30
+ import { DataValue } from "node-opcua-data-value";
30
31
 
31
32
  const doDebug = checkDebugFlag(__filename);
32
33
  const debugLog = make_debugLog(__filename);
@@ -449,12 +450,13 @@ async function _extractDataTypeDictionary(
449
450
  session.read({ nodeId: dataTypeDictionaryNodeId, attributeId: AttributeIds.BrowseName }),
450
451
  _readNamespaceUriProperty(session, dataTypeDictionaryNodeId)
451
452
  ]);
452
- doDebug && debugLog(
453
- "DataTypeDictionary is deprecated or BSD schema stored in dataValue is null !",
454
- chalk.cyan(name.value.value.toString()),
455
- "namespace =",
456
- namespace
457
- );
453
+ doDebug &&
454
+ debugLog(
455
+ "DataTypeDictionary is deprecated or BSD schema stored in dataValue is null !",
456
+ chalk.cyan(name.value.value.toString()),
457
+ "namespace =",
458
+ namespace
459
+ );
458
460
  debugLog("let's use the new way (1.04) and let's explore all dataTypes exposed by this name space");
459
461
  }
460
462
  // dataType definition in store directly in UADataType under the definition attribute
@@ -465,7 +467,11 @@ async function _extractDataTypeDictionary(
465
467
  await _extractDataTypeDictionaryFromDefinition(session, dataTypeDictionaryNodeId, dataTypeFactory2);
466
468
  } else {
467
469
  const rawSchema = d.rawSchema; // DataValue = await session.read({ nodeId: dataTypeDictionaryNodeId, attributeId: AttributeIds.Value });
468
- doDebug && debugLog(" ----- Using old method for extracting schema => with BSD files -----", dataTypeDictionaryNodeId.namespaceUri);
470
+ doDebug &&
471
+ debugLog(
472
+ " ----- Using old method for extracting schema => with BSD files -----",
473
+ dataTypeDictionaryNodeId.namespaceUri
474
+ );
469
475
  // old method ( until 1.03 )
470
476
  // one need to read the schema file store in the dataTypeDictionary node and parse it !
471
477
  /* istanbul ignore next */
@@ -656,13 +662,19 @@ export async function populateDataTypeManager103(
656
662
  const infos: TypeDictionaryInfo[] = [];
657
663
  const innerMap: { [key: string]: TypeDictionaryInfo } = {};
658
664
 
659
- for (const reference of references) {
665
+ const innerF = async (reference: ReferenceDescription) => {
660
666
  const dataTypeDictionaryNodeId = reference.nodeId;
661
- const isDictionaryDeprecated = await _readDeprecatedFlag(session, dataTypeDictionaryNodeId);
662
- const rawSchemaDataValue = await session.read({
667
+
668
+ const promises: [Promise<boolean>, Promise<DataValue>] = [
669
+ /* isDictionaryDeprecated: bool = await */ _readDeprecatedFlag(session, dataTypeDictionaryNodeId),
670
+ /* rawSchemaDataValue!: DataValue = await */ session.read({
663
671
  attributeId: AttributeIds.Value,
664
672
  nodeId: dataTypeDictionaryNodeId
665
- });
673
+ })
674
+ ];
675
+
676
+ const [isDictionaryDeprecated, rawSchemaDataValue] = await Promise.all(promises);
677
+
666
678
  const rawSchema = rawSchemaDataValue.value.value ? rawSchemaDataValue.value.value.toString() : "";
667
679
 
668
680
  const info: TypeDictionaryInfo = {
@@ -716,7 +728,10 @@ export async function populateDataTypeManager103(
716
728
  innerMap[info.targetNamespace] = info;
717
729
  }
718
730
  // assert(info.targetNamespace.length !== 0);
719
- }
731
+ };
732
+ const promises: Promise<void>[] = references.map(innerF);
733
+ await Promise.all(promises);
734
+
720
735
  // ----------------------------------
721
736
  const orderedList: TypeDictionaryInfo[] = [];
722
737
  const visited: any = {};
@@ -745,17 +760,17 @@ export async function populateDataTypeManager103(
745
760
 
746
761
  // setup dependencies
747
762
  const map: { [key: string]: TypeDictionaryInfo } = {};
748
-
749
763
  const map2: { [key: string]: DataTypeFactory[] } = {};
750
764
  for (const d of dataTypeDictionaryInfo) {
751
765
  map[d.targetNamespace] = d;
752
766
 
753
- doDebug && debugLog(
754
- " fixing based dataTypeFactory dependencies for ",
755
- d.targetNamespace,
756
- "index = ",
757
- d.dataTypeDictionaryNodeId.namespace
758
- );
767
+ doDebug &&
768
+ debugLog(
769
+ " fixing based dataTypeFactory dependencies for ",
770
+ d.targetNamespace,
771
+ "index = ",
772
+ d.dataTypeDictionaryNodeId.namespace
773
+ );
759
774
 
760
775
  const baseDataFactories: DataTypeFactory[] = [getStandardDataTypeFactory()];
761
776
  for (const namespace of Object.values(d.dependencies)) {
@@ -770,20 +785,20 @@ export async function populateDataTypeManager103(
770
785
  if (dataTypeManager.hasDataTypeFactory(namespaceIndex)) {
771
786
  const dep = dataTypeManager.getDataTypeFactory(namespaceIndex);
772
787
  baseDataFactories.push(dep);
773
- doDebug && debugLog(
774
- " considering , ",
775
- baseDataFactory.targetNamespace,
776
- "index = ",
777
- baseDataFactory.dataTypeDictionaryNodeId.namespace
778
- );
788
+ doDebug &&
789
+ debugLog(
790
+ " considering , ",
791
+ baseDataFactory.targetNamespace,
792
+ "index = ",
793
+ baseDataFactory.dataTypeDictionaryNodeId.namespace
794
+ );
779
795
  }
780
796
  }
781
- doDebug && debugLog(' baseDataFactories = ', baseDataFactories.map((f) => f.targetNamespace).join(" "));
797
+ doDebug && debugLog(" baseDataFactories = ", baseDataFactories.map((f) => f.targetNamespace).join(" "));
782
798
  map2[d.targetNamespace] = baseDataFactories;
783
799
  }
784
800
 
785
- namespaceArray =dataTypeManager.namespaceArray;
786
-
801
+ namespaceArray = dataTypeManager.namespaceArray;
787
802
 
788
803
  for (const d of dataTypeDictionaryInfo) {
789
804
  const set = new Set<DataTypeFactory>();
@@ -800,12 +815,11 @@ export async function populateDataTypeManager103(
800
815
  if (visited.has(namespaceUri)) {
801
816
  continue;
802
817
  }
803
- if (namespaceUri === d.targetNamespace) {
818
+ if (namespaceUri === d.targetNamespace) {
804
819
  continue;
805
820
  }
806
- var index = namespaceArray.indexOf(namespaceUri);
807
- if (index == -1)
808
- continue;
821
+ var index = namespaceArray.indexOf(namespaceUri);
822
+ if (index == -1) continue;
809
823
 
810
824
  var dd = dataTypeManager.getDataTypeFactory(index);
811
825
  set.add(dd);
@@ -826,7 +840,6 @@ export async function populateDataTypeManager103(
826
840
  // --------------------
827
841
 
828
842
  // now investigate DataTypeDescriptionType
829
-
830
843
  async function processReferenceOnDataTypeDictionaryType(d: TypeDictionaryInfo): Promise<void> {
831
844
  debugLog(chalk.cyan("processReferenceOnDataTypeDictionaryType on "), d.targetNamespace);
832
845
  const ref = d.reference;
@@ -845,10 +858,59 @@ export async function populateDataTypeManager103(
845
858
  await _exploreDataTypeDefinition(session, dataTypeDictionaryNodeId, dataTypeFactory, dataTypeManager.namespaceArray);
846
859
  }
847
860
 
848
- // https://medium.com/swlh/dealing-with-multiple-promises-in-javascript-41d6c21f20ff
849
- for (const d of dataTypeDictionaryInfo) {
850
- await processReferenceOnDataTypeDictionaryType(d);
861
+ // istanbul ignore next
862
+ if (doDebug) {
863
+ for (const d of dataTypeDictionaryInfo) {
864
+ console.log(d);
865
+ }
851
866
  }
852
867
 
853
- debugLog("out ... populateDataTypeManager");
868
+
869
+ // https://medium.com/swlh/dealing-with-multiple-promises-in-javascript-41d6c21f20ff
870
+ if (false) {
871
+ // we need to read sequentially the dataTypeDictionaryInfo
872
+ // to esnsure that dependencies are resolved in the correct order
873
+ for (const d of dataTypeDictionaryInfo) {
874
+ await processReferenceOnDataTypeDictionaryType(d);
875
+ }
876
+ } else {
877
+ // attempt to load all dataTypeDictionary in parallel as much as possible
878
+ // by ensuring parallel operation happens only when dependencies are resolved
879
+ const canBeProcessed = (d: TypeDictionaryInfo, alreadyProcessed: Set<string>) => {
880
+ for (const namespace of Object.values(d.dependencies)) {
881
+ if (d.targetNamespace === namespace) {
882
+ continue;
883
+ }
884
+ if (!alreadyProcessed.has(namespace)) {
885
+ return false;
886
+ }
887
+ }
888
+ return true;
889
+ }
890
+
891
+ const alreadyProcessed = new Set<string>();
892
+ alreadyProcessed.add("http://opcfoundation.org/UA/");
893
+ alreadyProcessed.add("http://www.w3.org/2001/XMLSchema-instance");
894
+ alreadyProcessed.add("http://opcfoundation.org/BinarySchema/");
895
+ const queue: TypeDictionaryInfo[] = [...dataTypeDictionaryInfo];
896
+
897
+ while (queue.length > 0) {
898
+ doDebug && console.log("queue length = ", queue.length);
899
+ const toProcess = queue.splice(0);
900
+ const promises: Promise<void>[] = [];
901
+ for (const d of toProcess) {
902
+ if (canBeProcessed(d, alreadyProcessed)) {
903
+ promises.push((async () => {
904
+ await processReferenceOnDataTypeDictionaryType(d)
905
+ alreadyProcessed.add(d.targetNamespace);
906
+ })());
907
+ } else {
908
+ queue.push(d);
909
+ }
910
+ }
911
+ // const promise: Promise<void>[] = dataTypeDictionaryInfo.map(processReferenceOnDataTypeDictionaryType);
912
+ await Promise.all(promises);
913
+ }
914
+ }
915
+ debugLog("out ... populateDataTypeManager103");
854
916
  }
@@ -23,6 +23,10 @@ export function extractDataValueToPromote(dataValues: PseudoDataValue[]): Pseudo
23
23
  );
24
24
  return dataValuesToFix;
25
25
  }
26
+ /**
27
+ *
28
+ * @private
29
+ */
26
30
  export async function promoteOpaqueStructure(session: IBasicSessionAsync2, dataValues: PseudoDataValue[]) {
27
31
  const dataValuesToFix = extractDataValueToPromote(dataValues);
28
32
  if (dataValuesToFix.length === 0) {