node-opcua-address-space 2.90.0 → 2.91.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/argument_list.js +3 -3
- package/dist/source/helpers/argument_list.js.map +1 -1
- package/dist/source/interfaces/state_machine/ua_state_machine_type.d.ts +13 -1
- package/dist/source/loader/load_nodeset2.js +5 -5
- package/dist/source/loader/load_nodeset2.js.map +1 -1
- package/dist/src/address_space.js +8 -8
- package/dist/src/address_space.js.map +1 -1
- package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js +1 -1
- package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js.map +1 -1
- package/dist/src/alarms_and_conditions/ua_condition_impl.js +2 -2
- package/dist/src/alarms_and_conditions/ua_condition_impl.js.map +1 -1
- package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js +1 -1
- package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js.map +1 -1
- package/dist/src/base_node_impl.js +3 -3
- package/dist/src/base_node_impl.js.map +1 -1
- package/dist/src/base_node_private.js +4 -4
- package/dist/src/base_node_private.js.map +1 -1
- package/dist/src/check_value_rank_compatibility.d.ts +15 -0
- package/dist/src/check_value_rank_compatibility.js +82 -0
- package/dist/src/check_value_rank_compatibility.js.map +1 -0
- package/dist/src/extension_object_array_node.js +3 -3
- package/dist/src/extension_object_array_node.js.map +1 -1
- package/dist/src/index_current.d.ts +1 -1
- package/dist/src/index_current.js +2 -1
- package/dist/src/index_current.js.map +1 -1
- package/dist/src/namespace_impl.js +0 -2
- package/dist/src/namespace_impl.js.map +1 -1
- package/dist/src/nodeset_tools/nodeset_to_xml.js +9 -9
- package/dist/src/nodeset_tools/nodeset_to_xml.js.map +1 -1
- package/dist/src/state_machine/finite_state_machine.d.ts +16 -2
- package/dist/src/state_machine/finite_state_machine.js +83 -44
- package/dist/src/state_machine/finite_state_machine.js.map +1 -1
- package/dist/src/tool_isSubtypeOf.d.ts +18 -0
- package/dist/src/tool_isSubtypeOf.js +125 -0
- package/dist/src/tool_isSubtypeOf.js.map +1 -0
- package/dist/src/tool_isSupertypeOf.d.ts +4 -4
- package/dist/src/ua_data_type_impl.d.ts +6 -4
- package/dist/src/ua_data_type_impl.js +13 -11
- package/dist/src/ua_data_type_impl.js.map +1 -1
- package/dist/src/ua_object_type_impl.d.ts +4 -2
- package/dist/src/ua_object_type_impl.js +7 -5
- package/dist/src/ua_object_type_impl.js.map +1 -1
- package/dist/src/ua_reference_type_impl.d.ts +5 -3
- package/dist/src/ua_reference_type_impl.js +8 -6
- package/dist/src/ua_reference_type_impl.js.map +1 -1
- package/dist/src/ua_variable_impl.d.ts +19 -7
- package/dist/src/ua_variable_impl.js +38 -23
- package/dist/src/ua_variable_impl.js.map +1 -1
- package/dist/src/ua_variable_impl_ext_obj.js +22 -13
- package/dist/src/ua_variable_impl_ext_obj.js.map +1 -1
- package/dist/src/ua_variable_type_impl.d.ts +15 -3
- package/dist/src/ua_variable_type_impl.js +17 -6
- package/dist/src/ua_variable_type_impl.js.map +1 -1
- package/distHelpers/boiler_system.js +5 -5
- package/distHelpers/boiler_system.js.map +1 -1
- package/package.json +34 -34
- package/source/helpers/argument_list.ts +3 -3
- package/source/interfaces/state_machine/ua_state_machine_type.ts +19 -1
- package/source/loader/load_nodeset2.ts +11 -10
- package/src/address_space.ts +8 -8
- package/src/alarms_and_conditions/ua_alarm_condition_impl.ts +1 -1
- package/src/alarms_and_conditions/ua_condition_impl.ts +2 -2
- package/src/alarms_and_conditions/ua_discrete_alarm_impl.ts +1 -1
- package/src/base_node_impl.ts +3 -3
- package/src/base_node_private.ts +3 -3
- package/src/check_value_rank_compatibility.ts +79 -0
- package/src/extension_object_array_node.ts +3 -3
- package/src/index_current.ts +1 -1
- package/src/namespace_impl.ts +0 -4
- package/src/nodeset_tools/nodeset_to_xml.ts +9 -9
- package/src/state_machine/finite_state_machine.ts +105 -60
- package/src/{tool_isSupertypeOf.ts → tool_isSubtypeOf.ts} +9 -9
- package/src/ua_data_type_impl.ts +21 -19
- package/src/ua_object_type_impl.ts +9 -3
- package/src/ua_reference_type_impl.ts +7 -4
- package/src/ua_variable_impl.ts +2033 -2006
- package/src/ua_variable_impl_ext_obj.ts +28 -15
- package/src/ua_variable_type_impl.ts +31 -5
- package/test_helpers/boiler_system.ts +5 -5
- package/test_helpers/test_fixtures/eurange_issue.xml +3 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nodeset_to_xml.js","sourceRoot":"","sources":["../../../src/nodeset_tools/nodeset_to_xml.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"nodeset_to_xml.js","sourceRoot":"","sources":["../../../src/nodeset_tools/nodeset_to_xml.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import { UAState, UAStateVariable, UATransition, UATransitionVariable } from "node-opcua-nodeset-ua";
|
|
2
2
|
import { LocalizedText } from "node-opcua-data-model";
|
|
3
3
|
import { NodeId } from "node-opcua-nodeid";
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
4
|
+
import { DataType } from "node-opcua-variant";
|
|
5
|
+
import { UAString } from "node-opcua-basic-types";
|
|
6
|
+
import { BaseNode, UAObject, UAObjectType, UAVariableT } from "node-opcua-address-space-base";
|
|
7
|
+
import { UAStateMachineEx, TransitionSelector, UAStateMachineTypeHelper } from "../../source/interfaces/state_machine/ua_state_machine_type";
|
|
6
8
|
import { UAObjectImpl } from "../ua_object_impl";
|
|
7
9
|
import { UATransitionEx } from "../../source/interfaces/state_machine/ua_transition_ex";
|
|
10
|
+
import { UAObjectTypeImpl } from "../ua_object_type_impl";
|
|
8
11
|
export declare interface UATransitionImpl extends UATransition, UATransitionEx {
|
|
9
12
|
}
|
|
10
13
|
export declare class UATransitionImpl implements UATransition, UATransitionEx {
|
|
@@ -14,6 +17,9 @@ export interface UAStateMachineImpl {
|
|
|
14
17
|
lastTransition?: UATransitionVariable<LocalizedText>;
|
|
15
18
|
_currentStateNode: UAState | null;
|
|
16
19
|
}
|
|
20
|
+
export declare function getFiniteStateMachineTypeStates(uaFiniteStateMachineType: UAObjectType): UAState[];
|
|
21
|
+
export declare function getFiniteStateMachineTypeTransitions(uaFiniteStateMachineType: UAObjectType): UATransitionEx[];
|
|
22
|
+
export declare function getFiniteStateMachineTypeStateByName(uaFiniteStateMachineType: UAObjectType, stateName: string): UAState | null;
|
|
17
23
|
export declare class UAStateMachineImpl extends UAObjectImpl implements UAStateMachineEx {
|
|
18
24
|
getStates(): UAState[];
|
|
19
25
|
get states(): UAState[];
|
|
@@ -65,3 +71,11 @@ export declare class UAStateMachineImpl extends UAObjectImpl implements UAStateM
|
|
|
65
71
|
_post_initialize(): void;
|
|
66
72
|
}
|
|
67
73
|
export declare function promoteToStateMachine(node: UAObject): UAStateMachineEx;
|
|
74
|
+
export declare class UAStateMachineTypeImpl extends UAObjectTypeImpl implements UAStateMachineTypeHelper {
|
|
75
|
+
getStateByName(name: string): UAState | null;
|
|
76
|
+
getStates(): UAState[];
|
|
77
|
+
getTransitions(): UATransitionEx[];
|
|
78
|
+
nodeVersion?: UAVariableT<UAString, DataType.String> | undefined;
|
|
79
|
+
_post_initialize(): void;
|
|
80
|
+
}
|
|
81
|
+
export declare function promoteToStateMachineType(node: UAObject): UAStateMachineTypeHelper;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.promoteToStateMachine = exports.UAStateMachineImpl = exports.UATransitionImpl = void 0;
|
|
3
|
+
exports.promoteToStateMachineType = exports.UAStateMachineTypeImpl = exports.promoteToStateMachine = exports.UAStateMachineImpl = exports.getFiniteStateMachineTypeStateByName = exports.getFiniteStateMachineTypeTransitions = exports.getFiniteStateMachineTypeStates = exports.UATransitionImpl = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* @module node-opcua-address-space
|
|
6
6
|
*/
|
|
@@ -15,6 +15,7 @@ const node_opcua_variant_1 = require("node-opcua-variant");
|
|
|
15
15
|
const register_node_promoter_1 = require("../../source/loader/register_node_promoter");
|
|
16
16
|
const ua_object_impl_1 = require("../ua_object_impl");
|
|
17
17
|
const base_node_impl_1 = require("../base_node_impl");
|
|
18
|
+
const ua_object_type_impl_1 = require("../ua_object_type_impl");
|
|
18
19
|
const doDebug = false;
|
|
19
20
|
class UATransitionImpl {
|
|
20
21
|
}
|
|
@@ -49,6 +50,55 @@ const defaultPredicate = (transitions, fromState, toState) => {
|
|
|
49
50
|
console.log("fromStateNode: ", fromState.toString());
|
|
50
51
|
return transitions[0];
|
|
51
52
|
};
|
|
53
|
+
function getFiniteStateMachineTypeStates(uaFiniteStateMachineType) {
|
|
54
|
+
const addressSpace = uaFiniteStateMachineType.addressSpace;
|
|
55
|
+
const initialStateType = addressSpace.findObjectType("InitialStateType");
|
|
56
|
+
// istanbul ignore next
|
|
57
|
+
if (!initialStateType) {
|
|
58
|
+
throw new Error("cannot find InitialStateType");
|
|
59
|
+
}
|
|
60
|
+
const stateType = addressSpace.findObjectType("StateType");
|
|
61
|
+
// istanbul ignore next
|
|
62
|
+
if (!stateType) {
|
|
63
|
+
throw new Error("cannot find StateType");
|
|
64
|
+
}
|
|
65
|
+
(0, node_opcua_assert_1.assert)(initialStateType.isSubtypeOf(stateType));
|
|
66
|
+
let comp = getComponentFromTypeAndSubtype(uaFiniteStateMachineType);
|
|
67
|
+
comp = comp.filter((c) => {
|
|
68
|
+
if (!c.typeDefinitionObj || c.typeDefinitionObj.nodeClass !== node_opcua_data_model_1.NodeClass.ObjectType) {
|
|
69
|
+
return false;
|
|
70
|
+
}
|
|
71
|
+
return c.typeDefinitionObj.isSubtypeOf(stateType);
|
|
72
|
+
});
|
|
73
|
+
return comp;
|
|
74
|
+
}
|
|
75
|
+
exports.getFiniteStateMachineTypeStates = getFiniteStateMachineTypeStates;
|
|
76
|
+
function getFiniteStateMachineTypeTransitions(uaFiniteStateMachineType) {
|
|
77
|
+
const addressSpace = uaFiniteStateMachineType.addressSpace;
|
|
78
|
+
const transitionType = addressSpace.findObjectType("TransitionType");
|
|
79
|
+
// istanbul ignore next
|
|
80
|
+
if (!transitionType) {
|
|
81
|
+
throw new Error("cannot find TransitionType");
|
|
82
|
+
}
|
|
83
|
+
let comp = getComponentFromTypeAndSubtype(uaFiniteStateMachineType);
|
|
84
|
+
comp = comp.filter((c) => {
|
|
85
|
+
if (!c.typeDefinitionObj || c.typeDefinitionObj.nodeClass !== node_opcua_data_model_1.NodeClass.ObjectType) {
|
|
86
|
+
return false;
|
|
87
|
+
}
|
|
88
|
+
return c.typeDefinitionObj.isSubtypeOf(transitionType);
|
|
89
|
+
});
|
|
90
|
+
return comp;
|
|
91
|
+
}
|
|
92
|
+
exports.getFiniteStateMachineTypeTransitions = getFiniteStateMachineTypeTransitions;
|
|
93
|
+
function getFiniteStateMachineTypeStateByName(uaFiniteStateMachineType, stateName) {
|
|
94
|
+
let states = getFiniteStateMachineTypeStates(uaFiniteStateMachineType);
|
|
95
|
+
states = states.filter((s) => {
|
|
96
|
+
return s.browseName.name === stateName;
|
|
97
|
+
});
|
|
98
|
+
(0, node_opcua_assert_1.assert)(states.length <= 1);
|
|
99
|
+
return states.length === 1 ? states[0] : null;
|
|
100
|
+
}
|
|
101
|
+
exports.getFiniteStateMachineTypeStateByName = getFiniteStateMachineTypeStateByName;
|
|
52
102
|
/*
|
|
53
103
|
*
|
|
54
104
|
* @class StateMachine
|
|
@@ -59,27 +109,8 @@ const defaultPredicate = (transitions, fromState, toState) => {
|
|
|
59
109
|
*/
|
|
60
110
|
class UAStateMachineImpl extends ua_object_impl_1.UAObjectImpl {
|
|
61
111
|
getStates() {
|
|
62
|
-
const addressSpace = this.addressSpace;
|
|
63
|
-
const initialStateType = addressSpace.findObjectType("InitialStateType");
|
|
64
|
-
// istanbul ignore next
|
|
65
|
-
if (!initialStateType) {
|
|
66
|
-
throw new Error("cannot find InitialStateType");
|
|
67
|
-
}
|
|
68
|
-
const stateType = addressSpace.findObjectType("StateType");
|
|
69
|
-
// istanbul ignore next
|
|
70
|
-
if (!stateType) {
|
|
71
|
-
throw new Error("cannot find StateType");
|
|
72
|
-
}
|
|
73
|
-
(0, node_opcua_assert_1.assert)(initialStateType.isSupertypeOf(stateType));
|
|
74
112
|
const typeDef = this.typeDefinitionObj;
|
|
75
|
-
|
|
76
|
-
comp = comp.filter((c) => {
|
|
77
|
-
if (!c.typeDefinitionObj || c.typeDefinitionObj.nodeClass !== node_opcua_data_model_1.NodeClass.ObjectType) {
|
|
78
|
-
return false;
|
|
79
|
-
}
|
|
80
|
-
return c.typeDefinitionObj.isSupertypeOf(stateType);
|
|
81
|
-
});
|
|
82
|
-
return comp;
|
|
113
|
+
return getFiniteStateMachineTypeStates(typeDef);
|
|
83
114
|
}
|
|
84
115
|
get states() {
|
|
85
116
|
return this.getStates();
|
|
@@ -90,29 +121,11 @@ class UAStateMachineImpl extends ua_object_impl_1.UAObjectImpl {
|
|
|
90
121
|
* @return the state with the given name
|
|
91
122
|
*/
|
|
92
123
|
getStateByName(name) {
|
|
93
|
-
|
|
94
|
-
states = states.filter((s) => {
|
|
95
|
-
return s.browseName.name === name;
|
|
96
|
-
});
|
|
97
|
-
(0, node_opcua_assert_1.assert)(states.length <= 1);
|
|
98
|
-
return states.length === 1 ? states[0] : null;
|
|
124
|
+
return getFiniteStateMachineTypeStateByName(this.typeDefinitionObj, name);
|
|
99
125
|
}
|
|
100
126
|
getTransitions() {
|
|
101
|
-
const addressSpace = this.addressSpace;
|
|
102
|
-
const transitionType = addressSpace.findObjectType("TransitionType");
|
|
103
|
-
// istanbul ignore next
|
|
104
|
-
if (!transitionType) {
|
|
105
|
-
throw new Error("cannot find TransitionType");
|
|
106
|
-
}
|
|
107
127
|
const typeDef = this.typeDefinitionObj;
|
|
108
|
-
|
|
109
|
-
comp = comp.filter((c) => {
|
|
110
|
-
if (!c.typeDefinitionObj || c.typeDefinitionObj.nodeClass !== node_opcua_data_model_1.NodeClass.ObjectType) {
|
|
111
|
-
return false;
|
|
112
|
-
}
|
|
113
|
-
return c.typeDefinitionObj.isSupertypeOf(transitionType);
|
|
114
|
-
});
|
|
115
|
-
return comp;
|
|
128
|
+
return getFiniteStateMachineTypeTransitions(typeDef);
|
|
116
129
|
}
|
|
117
130
|
get transitions() {
|
|
118
131
|
return this.getTransitions();
|
|
@@ -199,8 +212,8 @@ class UAStateMachineImpl extends ua_object_impl_1.UAObjectImpl {
|
|
|
199
212
|
if (!stateType) {
|
|
200
213
|
throw new Error("Cannot find StateType");
|
|
201
214
|
}
|
|
202
|
-
(0, node_opcua_assert_1.assert)(_fromStateNode.typeDefinitionObj.
|
|
203
|
-
(0, node_opcua_assert_1.assert)(_toStateNode.typeDefinitionObj.
|
|
215
|
+
(0, node_opcua_assert_1.assert)(_fromStateNode.typeDefinitionObj.isSubtypeOf(stateType));
|
|
216
|
+
(0, node_opcua_assert_1.assert)(_toStateNode.typeDefinitionObj.isSubtypeOf(stateType));
|
|
204
217
|
let transitions = _fromStateNode.findReferencesAsObject("FromState", false);
|
|
205
218
|
transitions = transitions.filter((transition) => {
|
|
206
219
|
(0, node_opcua_assert_1.assert)(transition.toStateNode.nodeClass === node_opcua_data_model_1.NodeClass.Object);
|
|
@@ -326,7 +339,7 @@ class UAStateMachineImpl extends ua_object_impl_1.UAObjectImpl {
|
|
|
326
339
|
throw new Error("cannot find FiniteStateMachineType");
|
|
327
340
|
}
|
|
328
341
|
// xx assert(this.typeDefinitionObj && !this.subtypeOfObj);
|
|
329
|
-
// xx assert(!this.typeDefinitionObj || this.typeDefinitionObj.
|
|
342
|
+
// xx assert(!this.typeDefinitionObj || this.typeDefinitionObj.isSubtypeOf(finiteStateMachineType));
|
|
330
343
|
// get current Status
|
|
331
344
|
const d = this.currentState.readValue();
|
|
332
345
|
if (d.statusCode.isNotGood()) {
|
|
@@ -351,4 +364,30 @@ function promoteToStateMachine(node) {
|
|
|
351
364
|
}
|
|
352
365
|
exports.promoteToStateMachine = promoteToStateMachine;
|
|
353
366
|
(0, register_node_promoter_1.registerNodePromoter)(node_opcua_constants_1.ObjectTypeIds.FiniteStateMachineType, promoteToStateMachine);
|
|
367
|
+
class UAStateMachineTypeImpl extends ua_object_type_impl_1.UAObjectTypeImpl {
|
|
368
|
+
getStateByName(name) {
|
|
369
|
+
return getFiniteStateMachineTypeStateByName(this, name);
|
|
370
|
+
}
|
|
371
|
+
getStates() {
|
|
372
|
+
return getFiniteStateMachineTypeStates(this);
|
|
373
|
+
}
|
|
374
|
+
getTransitions() {
|
|
375
|
+
return getFiniteStateMachineTypeTransitions(this);
|
|
376
|
+
}
|
|
377
|
+
_post_initialize() {
|
|
378
|
+
/** */
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
exports.UAStateMachineTypeImpl = UAStateMachineTypeImpl;
|
|
382
|
+
function promoteToStateMachineType(node) {
|
|
383
|
+
if (node instanceof UAStateMachineTypeImpl) {
|
|
384
|
+
return node; // already promoted
|
|
385
|
+
}
|
|
386
|
+
Object.setPrototypeOf(node, UAStateMachineTypeImpl.prototype);
|
|
387
|
+
(0, node_opcua_assert_1.assert)(node instanceof UAStateMachineTypeImpl, "should now be a State Machine");
|
|
388
|
+
const _node = node;
|
|
389
|
+
_node._post_initialize();
|
|
390
|
+
return _node;
|
|
391
|
+
}
|
|
392
|
+
exports.promoteToStateMachineType = promoteToStateMachineType;
|
|
354
393
|
//# sourceMappingURL=finite_state_machine.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"finite_state_machine.js","sourceRoot":"","sources":["../../../src/state_machine/finite_state_machine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"finite_state_machine.js","sourceRoot":"","sources":["../../../src/state_machine/finite_state_machine.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module node-opcua-address-space
|
|
3
|
+
*/
|
|
4
|
+
import { NodeId, NodeIdLike } from "node-opcua-nodeid";
|
|
5
|
+
import { BaseNode, UADataType, UAObjectType, UAReferenceType, UAVariableType } from "node-opcua-address-space-base";
|
|
6
|
+
import { BaseNodeImpl } from "./base_node_impl";
|
|
7
|
+
export declare type BaseNodeConstructor<T extends BaseNode> = new () => T;
|
|
8
|
+
export declare type MemberFuncValue<T, P, R> = (this: T, param: P) => R;
|
|
9
|
+
export declare function wipeMemorizedStuff(node: any): void;
|
|
10
|
+
export declare type IsSubtypeOfFunc<T extends UAType> = (this: T, baseType: T) => boolean;
|
|
11
|
+
export declare type UAType = UAReferenceType | UADataType | UAObjectType | UAVariableType;
|
|
12
|
+
export declare function construct_isSubtypeOf<T extends UAType>(Class: typeof BaseNodeImpl): IsSubtypeOfFunc<T>;
|
|
13
|
+
export declare function construct_slow_isSubtypeOf<T extends UAType>(Class: typeof BaseNodeImpl): (this: T, baseType: T | NodeIdLike) => boolean;
|
|
14
|
+
/**
|
|
15
|
+
* returns the nodeId of the Type which is the super type of this
|
|
16
|
+
*/
|
|
17
|
+
export declare function get_subtypeOf<T extends BaseNode>(this: T): NodeId | null;
|
|
18
|
+
export declare function get_subtypeOfObj(this: BaseNode): BaseNode | null;
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @module node-opcua-address-space
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.get_subtypeOfObj = exports.get_subtypeOf = exports.construct_slow_isSubtypeOf = exports.construct_isSubtypeOf = exports.wipeMemorizedStuff = void 0;
|
|
7
|
+
const node_opcua_assert_1 = require("node-opcua-assert");
|
|
8
|
+
const node_opcua_nodeid_1 = require("node-opcua-nodeid");
|
|
9
|
+
const node_opcua_nodeid_2 = require("node-opcua-nodeid");
|
|
10
|
+
const node_opcua_data_model_1 = require("node-opcua-data-model");
|
|
11
|
+
const base_node_private_1 = require("./base_node_private");
|
|
12
|
+
const reference_impl_1 = require("./reference_impl");
|
|
13
|
+
const HasSubTypeNodeId = (0, node_opcua_nodeid_1.resolveNodeId)("HasSubtype");
|
|
14
|
+
function _filterSubType(reference) {
|
|
15
|
+
return (0, node_opcua_nodeid_2.sameNodeId)(reference.referenceType, HasSubTypeNodeId) && !reference.isForward;
|
|
16
|
+
}
|
|
17
|
+
function _slow_isSubtypeOf(Class, baseType) {
|
|
18
|
+
if (!(baseType instanceof Class)) {
|
|
19
|
+
const node = this.addressSpace.findNode(baseType);
|
|
20
|
+
if (!node || !(node instanceof Class)) {
|
|
21
|
+
throw new Error("Invalid argument");
|
|
22
|
+
}
|
|
23
|
+
return _slow_isSubtypeOf.call(this, Class, node);
|
|
24
|
+
}
|
|
25
|
+
(0, node_opcua_assert_1.assert)(this instanceof Class);
|
|
26
|
+
(0, node_opcua_assert_1.assert)(baseType instanceof Class, " Object must have same type");
|
|
27
|
+
(0, node_opcua_assert_1.assert)(this.addressSpace);
|
|
28
|
+
if ((0, node_opcua_nodeid_2.sameNodeId)(this.nodeId, baseType.nodeId)) {
|
|
29
|
+
return true;
|
|
30
|
+
}
|
|
31
|
+
const references = this.allReferences();
|
|
32
|
+
const subTypes = references.filter(_filterSubType);
|
|
33
|
+
(0, node_opcua_assert_1.assert)(subTypes.length <= 1, "should have zero or one subtype no more");
|
|
34
|
+
for (const subType1 of subTypes) {
|
|
35
|
+
const subTypeId = subType1.nodeId;
|
|
36
|
+
const subTypeNode = this.addressSpace.findNode(subTypeId);
|
|
37
|
+
// istanbul ignore next
|
|
38
|
+
if (!subTypeNode) {
|
|
39
|
+
throw new Error("Cannot find object with nodeId " + subTypeId.toString());
|
|
40
|
+
}
|
|
41
|
+
if ((0, node_opcua_nodeid_2.sameNodeId)(subTypeNode.nodeId, baseType.nodeId)) {
|
|
42
|
+
return true;
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
if (_slow_isSubtypeOf.call(subTypeNode, Class, baseType)) {
|
|
46
|
+
return true;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return false;
|
|
51
|
+
}
|
|
52
|
+
function wipeMemorizedStuff(node) {
|
|
53
|
+
if (!node.__cache) {
|
|
54
|
+
node.__cache = undefined;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
exports.wipeMemorizedStuff = wipeMemorizedStuff;
|
|
58
|
+
// http://jsperf.com/underscore-js-memoize-refactor-test
|
|
59
|
+
// http://addyosmani.com/blog/faster-javascript-memoization/
|
|
60
|
+
function wrap_memoize(func, hashFunc) {
|
|
61
|
+
if (undefined === hashFunc) {
|
|
62
|
+
hashFunc = (_p) => _p.toString();
|
|
63
|
+
}
|
|
64
|
+
return function memoize(param) {
|
|
65
|
+
if (!this.__cache) {
|
|
66
|
+
this.__cache = {};
|
|
67
|
+
}
|
|
68
|
+
const hash = hashFunc.call(this, param);
|
|
69
|
+
let cache_value = this.__cache[hash];
|
|
70
|
+
if (cache_value === undefined) {
|
|
71
|
+
cache_value = func.call(this, param);
|
|
72
|
+
this.__cache[hash] = cache_value;
|
|
73
|
+
}
|
|
74
|
+
return cache_value;
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
function hashBaseNode(e) {
|
|
78
|
+
return e.nodeId.value.toString();
|
|
79
|
+
}
|
|
80
|
+
function construct_isSubtypeOf(Class) {
|
|
81
|
+
return wrap_memoize(function (baseType) {
|
|
82
|
+
if (!(baseType instanceof Class)) {
|
|
83
|
+
throw new Error("expecting baseType to be " +
|
|
84
|
+
Class.name +
|
|
85
|
+
" but got " +
|
|
86
|
+
baseType.constructor.name +
|
|
87
|
+
" " +
|
|
88
|
+
node_opcua_data_model_1.NodeClass[baseType.nodeClass]);
|
|
89
|
+
}
|
|
90
|
+
if (!(this instanceof Class)) {
|
|
91
|
+
throw new Error("expecting this to be " + Class.name + " but got " + baseType.constructor.name);
|
|
92
|
+
}
|
|
93
|
+
return _slow_isSubtypeOf.call(this, Class, baseType);
|
|
94
|
+
}, hashBaseNode);
|
|
95
|
+
}
|
|
96
|
+
exports.construct_isSubtypeOf = construct_isSubtypeOf;
|
|
97
|
+
function construct_slow_isSubtypeOf(Class) {
|
|
98
|
+
return function (baseType) {
|
|
99
|
+
return _slow_isSubtypeOf.call(this, Class, baseType);
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
exports.construct_slow_isSubtypeOf = construct_slow_isSubtypeOf;
|
|
103
|
+
/**
|
|
104
|
+
* returns the nodeId of the Type which is the super type of this
|
|
105
|
+
*/
|
|
106
|
+
function get_subtypeOf() {
|
|
107
|
+
const s = get_subtypeOfObj.call(this);
|
|
108
|
+
return s ? s.nodeId : null;
|
|
109
|
+
}
|
|
110
|
+
exports.get_subtypeOf = get_subtypeOf;
|
|
111
|
+
function get_subtypeOfObj() {
|
|
112
|
+
const _cache = (0, base_node_private_1.BaseNode_getCache)(this);
|
|
113
|
+
if (!_cache._subtypeOfObj) {
|
|
114
|
+
const is_subtype_of_ref = this.findReference("HasSubtype", false);
|
|
115
|
+
if (is_subtype_of_ref) {
|
|
116
|
+
_cache._subtypeOfObj = reference_impl_1.ReferenceImpl.resolveReferenceNode(this.addressSpace, is_subtype_of_ref);
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
_cache._subtypeOfObj = null;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
return _cache._subtypeOfObj;
|
|
123
|
+
}
|
|
124
|
+
exports.get_subtypeOfObj = get_subtypeOfObj;
|
|
125
|
+
//# sourceMappingURL=tool_isSubtypeOf.js.map
|