node-opcua-utils 2.153.0 → 2.164.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/check_file_exists.d.ts +7 -0
- package/dist/check_file_exists.js +23 -0
- package/dist/check_file_exists.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/line_file.js +1 -0
- package/dist/line_file.js.map +1 -1
- package/dist/set_deprecated.js +1 -1
- package/dist/set_deprecated.js.map +1 -1
- package/dist/watchdog.js +9 -4
- package/dist/watchdog.js.map +1 -1
- package/package.json +7 -4
- package/source/check_file_exists.ts +16 -0
- package/source/index.ts +2 -1
- package/source/set_deprecated.ts +1 -1
- package/source/watchdog.ts +1 -1
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Checks if a file exists and is strictly greater than 0 bytes.
|
|
3
|
+
* This is useful for guarding against race conditions where a lockfile
|
|
4
|
+
* system touch-creates a file just before writing to it, preventing
|
|
5
|
+
* clients from reading an intermediate 0-byte state.
|
|
6
|
+
*/
|
|
7
|
+
export declare function checkFileExistsAndIsNotEmpty(filename: string): boolean;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.checkFileExistsAndIsNotEmpty = checkFileExistsAndIsNotEmpty;
|
|
7
|
+
const fs_1 = __importDefault(require("fs"));
|
|
8
|
+
/**
|
|
9
|
+
* Checks if a file exists and is strictly greater than 0 bytes.
|
|
10
|
+
* This is useful for guarding against race conditions where a lockfile
|
|
11
|
+
* system touch-creates a file just before writing to it, preventing
|
|
12
|
+
* clients from reading an intermediate 0-byte state.
|
|
13
|
+
*/
|
|
14
|
+
function checkFileExistsAndIsNotEmpty(filename) {
|
|
15
|
+
try {
|
|
16
|
+
return fs_1.default.statSync(filename).size > 0;
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
// file may not exist
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=check_file_exists.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check_file_exists.js","sourceRoot":"","sources":["../source/check_file_exists.ts"],"names":[],"mappings":";;;;;AAQA,oEAOC;AAfD,4CAAoB;AAEpB;;;;;GAKG;AACH,SAAgB,4BAA4B,CAAC,QAAgB;IACzD,IAAI,CAAC;QACD,OAAO,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACL,qBAAqB;QACrB,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.hrtime = exports.replaceBufferWithHexDump = exports.setDeprecated = exports.getFunctionParameterNames = exports.compare_buffers = exports.get_clock_tick = exports.getObjectClassName = exports.lowerFirstLetter = exports.capitalizeFirstLetter = exports.buffer_ellipsis = void 0;
|
|
17
|
+
exports.checkFileExistsAndIsNotEmpty = exports.hrtime = exports.replaceBufferWithHexDump = exports.setDeprecated = exports.getFunctionParameterNames = exports.compare_buffers = exports.get_clock_tick = exports.getObjectClassName = exports.lowerFirstLetter = exports.capitalizeFirstLetter = exports.buffer_ellipsis = void 0;
|
|
18
18
|
exports.set_flag = set_flag;
|
|
19
19
|
exports.check_flag = check_flag;
|
|
20
20
|
exports.isNullOrUndefined = isNullOrUndefined;
|
|
@@ -72,4 +72,6 @@ __exportStar(require("./line_file"), exports);
|
|
|
72
72
|
__exportStar(require("./match_uri"), exports);
|
|
73
73
|
var hrtime_1 = require("./hrtime");
|
|
74
74
|
Object.defineProperty(exports, "hrtime", { enumerable: true, get: function () { return hrtime_1.hrtime; } });
|
|
75
|
+
var check_file_exists_1 = require("./check_file_exists");
|
|
76
|
+
Object.defineProperty(exports, "checkFileExistsAndIsNotEmpty", { enumerable: true, get: function () { return check_file_exists_1.checkFileExistsAndIsNotEmpty; } });
|
|
75
77
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../source/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAUA,4BAOC;AAKD,gCAMC;AAED,8CAEC;AAhCD;;GAEG;AACH,4BAA4B;AAC5B,yDAA2C;AAE3C;;;GAGG;AACH,SAAgB,QAAQ,CAAC,KAAa,EAAE,IAAgC;IACpE,IAAK,IAAY,CAAC,KAAK,EAAE,CAAC;QACtB,IAAI,GAAI,IAAY,CAAC,KAAK,CAAC;IAC/B,CAAC;IACD,IAAA,0BAAM,EAAC,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IAC7D,IAAA,0BAAM,EAAC,IAAI,KAAK,SAAS,CAAC,CAAC;IAC3B,OAAO,KAAK,GAAI,IAAe,CAAC;AACpC,CAAC;AACD;;;GAGG;AACH,SAAgB,UAAU,CAAC,KAAa,EAAE,IAAgC;IACtE,IAAK,IAAY,CAAC,KAAK,EAAE,CAAC;QACtB,IAAI,GAAI,IAAY,CAAC,KAAK,CAAC;IAC/B,CAAC;IACD,IAAA,0BAAM,EAAC,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IAC7D,OAAO,CAAC,KAAK,GAAI,IAAe,CAAC,KAAM,IAAe,CAAC;AAC3D,CAAC;AAED,SAAgB,iBAAiB,CAAC,KAA0B;IACxD,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC;AACjD,CAAC;AAED,qDAAoD;AAA3C,kHAAA,eAAe,OAAA;AACxB,+CAAyE;AAAhE,qHAAA,qBAAqB,OAAA;AAAE,gHAAA,gBAAgB,OAAA;AAChD,uDAAwD;AAA/C,sHAAA,kBAAkB,OAAA;AAC3B,mDAAkD;AAAzC,gHAAA,cAAc,OAAA;AACvB,qDAAoD;AAA3C,kHAAA,eAAe,OAAA;AACxB,+EAA2E;AAAlE,yIAAA,yBAAyB,OAAA;AAClC,6CAA2B;AAC3B,mDAAiD;AAAxC,+GAAA,aAAa,OAAA;AACtB,+EAA0E;AAAjE,wIAAA,wBAAwB,OAAA;AACjC,8CAA4B;AAC5B,8CAA4B;AAC5B,8CAA4B;AAC5B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../source/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAUA,4BAOC;AAKD,gCAMC;AAED,8CAEC;AAhCD;;GAEG;AACH,4BAA4B;AAC5B,yDAA2C;AAE3C;;;GAGG;AACH,SAAgB,QAAQ,CAAC,KAAa,EAAE,IAAgC;IACpE,IAAK,IAAY,CAAC,KAAK,EAAE,CAAC;QACtB,IAAI,GAAI,IAAY,CAAC,KAAK,CAAC;IAC/B,CAAC;IACD,IAAA,0BAAM,EAAC,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IAC7D,IAAA,0BAAM,EAAC,IAAI,KAAK,SAAS,CAAC,CAAC;IAC3B,OAAO,KAAK,GAAI,IAAe,CAAC;AACpC,CAAC;AACD;;;GAGG;AACH,SAAgB,UAAU,CAAC,KAAa,EAAE,IAAgC;IACtE,IAAK,IAAY,CAAC,KAAK,EAAE,CAAC;QACtB,IAAI,GAAI,IAAY,CAAC,KAAK,CAAC;IAC/B,CAAC;IACD,IAAA,0BAAM,EAAC,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IAC7D,OAAO,CAAC,KAAK,GAAI,IAAe,CAAC,KAAM,IAAe,CAAC;AAC3D,CAAC;AAED,SAAgB,iBAAiB,CAAC,KAA0B;IACxD,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC;AACjD,CAAC;AAED,qDAAoD;AAA3C,kHAAA,eAAe,OAAA;AACxB,+CAAyE;AAAhE,qHAAA,qBAAqB,OAAA;AAAE,gHAAA,gBAAgB,OAAA;AAChD,uDAAwD;AAA/C,sHAAA,kBAAkB,OAAA;AAC3B,mDAAkD;AAAzC,gHAAA,cAAc,OAAA;AACvB,qDAAoD;AAA3C,kHAAA,eAAe,OAAA;AACxB,+EAA2E;AAAlE,yIAAA,yBAAyB,OAAA;AAClC,6CAA2B;AAC3B,mDAAiD;AAAxC,+GAAA,aAAa,OAAA;AACtB,+EAA0E;AAAjE,wIAAA,wBAAwB,OAAA;AACjC,8CAA4B;AAC5B,8CAA4B;AAC5B,8CAA4B;AAC5B,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AACf,yDAAmE;AAA1D,iIAAA,4BAA4B,OAAA"}
|
package/dist/line_file.js
CHANGED
package/dist/line_file.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"line_file.js","sourceRoot":"","sources":["../source/line_file.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,MAAa,QAAQ;
|
|
1
|
+
{"version":3,"file":"line_file.js","sourceRoot":"","sources":["../source/line_file.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,MAAa,QAAQ;IACT,KAAK,CAAW;IAExB;QACI,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;IACpB,CAAC;IAEM,KAAK,CAAC,GAAG,IAAc;QAC1B,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,+BAA+B;QAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACnC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAEM,QAAQ,CAAC,YAAyB,IAAI;QACzC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC;CACJ;AAnBD,4BAmBC"}
|
package/dist/set_deprecated.js
CHANGED
|
@@ -10,7 +10,7 @@ exports.setDeprecated = setDeprecated;
|
|
|
10
10
|
// tslint:disable:ban-types
|
|
11
11
|
const chalk_1 = __importDefault(require("chalk"));
|
|
12
12
|
const node_opcua_assert_1 = require("node-opcua-assert");
|
|
13
|
-
/*
|
|
13
|
+
/* c8 ignore next */
|
|
14
14
|
function setDeprecated(constructor, methodName, helpString) {
|
|
15
15
|
const oldMethod = constructor.prototype[methodName];
|
|
16
16
|
(0, node_opcua_assert_1.assert)(oldMethod instanceof Function, "expecting a valid " + methodName + "method on class " + constructor.constructor.name);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set_deprecated.js","sourceRoot":"","sources":["../source/set_deprecated.ts"],"names":[],"mappings":";;;;;AAUA,sCAkBC;AA5BD;;GAEG;AACH,2BAA2B;AAC3B,kDAA0B;AAC1B,yDAA2C;AAI3C,
|
|
1
|
+
{"version":3,"file":"set_deprecated.js","sourceRoot":"","sources":["../source/set_deprecated.ts"],"names":[],"mappings":";;;;;AAUA,sCAkBC;AA5BD;;GAEG;AACH,2BAA2B;AAC3B,kDAA0B;AAC1B,yDAA2C;AAI3C,oBAAoB;AACpB,SAAgB,aAAa,CAAC,WAA6B,EAAE,UAAkB,EAAE,UAAkB;IAC/F,MAAM,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAEpD,IAAA,0BAAM,EAAC,SAAS,YAAY,QAAQ,EAAE,oBAAoB,GAAG,UAAU,GAAG,kBAAkB,GAAG,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAE7H,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,UAAU,GAAG,IAAW;QACxD,IAAI,OAAO,GAAG,IAAI,KAAK,CAAC,EAAE,CAAC;YACvB,4BAA4B;YAC5B,OAAO,CAAC,GAAG,CACP,eAAK,CAAC,KAAK,CAAC,WAAW,CAAC,EACxB,eAAK,CAAC,KAAK,CAAC,eAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,GAAG,GAAG,UAAU,CAAC,EAAE,oBAAoB,CAAC,CACrF,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,EAAE,CAAC;QACV,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;IACzC,CAAC,CAAC;AACN,CAAC"}
|
package/dist/watchdog.js
CHANGED
|
@@ -13,7 +13,7 @@ function hasExpired(watchDogData, currentTime) {
|
|
|
13
13
|
}
|
|
14
14
|
function keepAliveFunc() {
|
|
15
15
|
(0, node_opcua_assert_1.assert)(this._watchDog instanceof WatchDog);
|
|
16
|
-
//
|
|
16
|
+
// c8 ignore next
|
|
17
17
|
if (!this._watchDogData || !this._watchDog) {
|
|
18
18
|
throw new Error("Internal error");
|
|
19
19
|
}
|
|
@@ -27,12 +27,20 @@ class WatchDog extends events_1.EventEmitter {
|
|
|
27
27
|
static lastSeenToDuration(lastSeen) {
|
|
28
28
|
return (0, get_clock_tick_1.get_clock_tick)() - lastSeen;
|
|
29
29
|
}
|
|
30
|
+
static emptyKeepAlive = () => {
|
|
31
|
+
/* */
|
|
32
|
+
};
|
|
30
33
|
/**
|
|
31
34
|
* returns the number of subscribers using the WatchDog object.
|
|
32
35
|
*/
|
|
33
36
|
get subscriberCount() {
|
|
34
37
|
return Object.keys(this._watchdogDataMap).length;
|
|
35
38
|
}
|
|
39
|
+
_watchdogDataMap;
|
|
40
|
+
_counter;
|
|
41
|
+
_currentTime;
|
|
42
|
+
_timer;
|
|
43
|
+
_visitSubscriberB;
|
|
36
44
|
constructor() {
|
|
37
45
|
super();
|
|
38
46
|
this._watchdogDataMap = {};
|
|
@@ -137,7 +145,4 @@ class WatchDog extends events_1.EventEmitter {
|
|
|
137
145
|
}
|
|
138
146
|
}
|
|
139
147
|
exports.WatchDog = WatchDog;
|
|
140
|
-
WatchDog.emptyKeepAlive = () => {
|
|
141
|
-
/* */
|
|
142
|
-
};
|
|
143
148
|
//# sourceMappingURL=watchdog.js.map
|
package/dist/watchdog.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchdog.js","sourceRoot":"","sources":["../source/watchdog.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,mCAAsC;AACtC,yDAA2C;AAC3C,qDAAkD;AAuBlD,SAAS,UAAU,CAAC,YAA4B,EAAE,WAA+B;IAC7E,MAAM,WAAW,GAAG,WAAW,GAAG,YAAY,CAAC,QAAQ,CAAC;IACxD,OAAO,WAAW,GAAG,YAAY,CAAC,OAAO,CAAC;AAC9C,CAAC;AAED,SAAS,aAAa;IAClB,IAAA,0BAAM,EAAC,IAAI,CAAC,SAAS,YAAY,QAAQ,CAAC,CAAC;IAC3C,
|
|
1
|
+
{"version":3,"file":"watchdog.js","sourceRoot":"","sources":["../source/watchdog.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "node-opcua-utils",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.164.0",
|
|
4
4
|
"description": "pure nodejs OPCUA SDK - module utils",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
15
|
"chalk": "4.1.2",
|
|
16
|
-
"node-opcua-assert": "2.
|
|
16
|
+
"node-opcua-assert": "2.164.0"
|
|
17
17
|
},
|
|
18
18
|
"author": "Etienne Rossignon",
|
|
19
19
|
"license": "MIT",
|
|
@@ -30,9 +30,12 @@
|
|
|
30
30
|
"internet of things"
|
|
31
31
|
],
|
|
32
32
|
"homepage": "http://node-opcua.github.io/",
|
|
33
|
-
"gitHead": "
|
|
33
|
+
"gitHead": "eb76d34b885c7584785d8eff69ada66f95b55c2e",
|
|
34
34
|
"files": [
|
|
35
35
|
"dist",
|
|
36
36
|
"source"
|
|
37
|
-
]
|
|
37
|
+
],
|
|
38
|
+
"devDependencies": {
|
|
39
|
+
"node-opcua-leak-detector": "2.164.0"
|
|
40
|
+
}
|
|
38
41
|
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import fs from "fs";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Checks if a file exists and is strictly greater than 0 bytes.
|
|
5
|
+
* This is useful for guarding against race conditions where a lockfile
|
|
6
|
+
* system touch-creates a file just before writing to it, preventing
|
|
7
|
+
* clients from reading an intermediate 0-byte state.
|
|
8
|
+
*/
|
|
9
|
+
export function checkFileExistsAndIsNotEmpty(filename: string): boolean {
|
|
10
|
+
try {
|
|
11
|
+
return fs.statSync(filename).size > 0;
|
|
12
|
+
} catch {
|
|
13
|
+
// file may not exist
|
|
14
|
+
return false;
|
|
15
|
+
}
|
|
16
|
+
}
|
package/source/index.ts
CHANGED
|
@@ -44,4 +44,5 @@ export { replaceBufferWithHexDump } from "./replace_buffer_with_hex_dump";
|
|
|
44
44
|
export * from "./timestamp";
|
|
45
45
|
export * from "./line_file";
|
|
46
46
|
export * from "./match_uri";
|
|
47
|
-
export {hrtime} from "./hrtime";
|
|
47
|
+
export { hrtime } from "./hrtime";
|
|
48
|
+
export { checkFileExistsAndIsNotEmpty } from "./check_file_exists";
|
package/source/set_deprecated.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { assert } from "node-opcua-assert";
|
|
|
7
7
|
|
|
8
8
|
import { FunctionVariadic } from "./function_variadic";
|
|
9
9
|
|
|
10
|
-
/*
|
|
10
|
+
/* c8 ignore next */
|
|
11
11
|
export function setDeprecated(constructor: FunctionVariadic, methodName: string, helpString: string): void {
|
|
12
12
|
const oldMethod = constructor.prototype[methodName];
|
|
13
13
|
|
package/source/watchdog.ts
CHANGED
|
@@ -33,7 +33,7 @@ function hasExpired(watchDogData: IWatchdogData2, currentTime: ArbitraryClockTic
|
|
|
33
33
|
|
|
34
34
|
function keepAliveFunc(this: ISubscriber) {
|
|
35
35
|
assert(this._watchDog instanceof WatchDog);
|
|
36
|
-
//
|
|
36
|
+
// c8 ignore next
|
|
37
37
|
if (!this._watchDogData || !this._watchDog) {
|
|
38
38
|
throw new Error("Internal error");
|
|
39
39
|
}
|