node-opcua-file-transfer 2.79.0 → 2.80.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/client/client_file.d.ts +3 -2
- package/dist/client/client_file.js +23 -11
- package/dist/client/client_file.js.map +1 -1
- package/dist/server/file_type_helpers.d.ts +4 -2
- package/dist/server/file_type_helpers.js +8 -8
- package/dist/server/file_type_helpers.js.map +1 -1
- package/package.json +4 -4
- package/source/client/client_file.ts +18 -16
- package/source/server/file_type_helpers.ts +24 -18
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* @module node-opcua-file-transfer
|
|
4
4
|
*/
|
|
5
|
-
import { Int32, UInt16, UInt32, UInt64 } from "node-opcua-basic-types";
|
|
5
|
+
import { Int32, Int64, UInt16, UInt32, UInt64 } from "node-opcua-basic-types";
|
|
6
6
|
import { NodeId } from "node-opcua-nodeid";
|
|
7
7
|
import { IBasicSession } from "node-opcua-pseudo-session";
|
|
8
8
|
import { OpenFileMode } from "../open_mode";
|
|
@@ -29,13 +29,14 @@ export declare class ClientFile {
|
|
|
29
29
|
close(): Promise<void>;
|
|
30
30
|
getPosition(): Promise<UInt64>;
|
|
31
31
|
setPosition(position: UInt64 | UInt32): Promise<void>;
|
|
32
|
-
read(bytesToRead: Int32): Promise<Buffer>;
|
|
32
|
+
read(bytesToRead: UInt32 | Int32 | Int64 | UInt64): Promise<Buffer>;
|
|
33
33
|
write(data: Buffer): Promise<void>;
|
|
34
34
|
openCount(): Promise<UInt16>;
|
|
35
35
|
size(): Promise<UInt64>;
|
|
36
36
|
protected extractMethodsIds(): Promise<void>;
|
|
37
37
|
protected ensureInitialized(): Promise<void>;
|
|
38
38
|
}
|
|
39
|
+
export declare function readFile(clientFile: ClientFile): Promise<Buffer>;
|
|
39
40
|
/**
|
|
40
41
|
* 5.2.10 UserRolePermissions
|
|
41
42
|
*
|
|
@@ -9,7 +9,11 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.ClientFile = exports.OpenFileMode = void 0;
|
|
12
|
+
exports.readFile = exports.ClientFile = exports.OpenFileMode = void 0;
|
|
13
|
+
/**
|
|
14
|
+
* @module node-opcua-file-transfer
|
|
15
|
+
*/
|
|
16
|
+
const node_opcua_basic_types_1 = require("node-opcua-basic-types");
|
|
13
17
|
const node_opcua_data_model_1 = require("node-opcua-data-model");
|
|
14
18
|
const node_opcua_nodeid_1 = require("node-opcua-nodeid");
|
|
15
19
|
const node_opcua_service_translate_browse_path_1 = require("node-opcua-service-translate-browse-path");
|
|
@@ -43,9 +47,7 @@ class ClientFile {
|
|
|
43
47
|
}
|
|
44
48
|
yield this.ensureInitialized();
|
|
45
49
|
const result = yield this.session.call({
|
|
46
|
-
inputArguments: [
|
|
47
|
-
{ dataType: node_opcua_variant_1.DataType.Byte, value: mode }
|
|
48
|
-
],
|
|
50
|
+
inputArguments: [{ dataType: node_opcua_variant_1.DataType.Byte, value: mode }],
|
|
49
51
|
methodId: this.openMethodNodeId,
|
|
50
52
|
objectId: this.fileNodeId
|
|
51
53
|
});
|
|
@@ -64,9 +66,7 @@ class ClientFile {
|
|
|
64
66
|
}
|
|
65
67
|
yield this.ensureInitialized();
|
|
66
68
|
const result = yield this.session.call({
|
|
67
|
-
inputArguments: [
|
|
68
|
-
{ dataType: node_opcua_variant_1.DataType.UInt32, value: this.fileHandle }
|
|
69
|
-
],
|
|
69
|
+
inputArguments: [{ dataType: node_opcua_variant_1.DataType.UInt32, value: this.fileHandle }],
|
|
70
70
|
methodId: this.closeMethodNodeId,
|
|
71
71
|
objectId: this.fileNodeId
|
|
72
72
|
});
|
|
@@ -84,9 +84,7 @@ class ClientFile {
|
|
|
84
84
|
throw new Error("File has not been opened yet");
|
|
85
85
|
}
|
|
86
86
|
const result = yield this.session.call({
|
|
87
|
-
inputArguments: [
|
|
88
|
-
{ dataType: node_opcua_variant_1.DataType.UInt32, value: this.fileHandle }
|
|
89
|
-
],
|
|
87
|
+
inputArguments: [{ dataType: node_opcua_variant_1.DataType.UInt32, value: this.fileHandle }],
|
|
90
88
|
methodId: this.getPositionNodeId,
|
|
91
89
|
objectId: this.fileNodeId
|
|
92
90
|
});
|
|
@@ -135,7 +133,7 @@ class ClientFile {
|
|
|
135
133
|
{
|
|
136
134
|
arrayType: node_opcua_variant_1.VariantArrayType.Scalar,
|
|
137
135
|
dataType: node_opcua_variant_1.DataType.Int32,
|
|
138
|
-
value: bytesToRead
|
|
136
|
+
value: (0, node_opcua_basic_types_1.coerceInt32)(bytesToRead)
|
|
139
137
|
}
|
|
140
138
|
],
|
|
141
139
|
methodId: this.readNodeId,
|
|
@@ -277,6 +275,20 @@ class ClientFile {
|
|
|
277
275
|
}
|
|
278
276
|
exports.ClientFile = ClientFile;
|
|
279
277
|
ClientFile.useGlobalMethod = false;
|
|
278
|
+
function readFile(clientFile) {
|
|
279
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
280
|
+
yield clientFile.open(open_mode_1.OpenFileMode.Read);
|
|
281
|
+
try {
|
|
282
|
+
const fileSize = yield clientFile.size();
|
|
283
|
+
const data = yield clientFile.read(fileSize);
|
|
284
|
+
return data;
|
|
285
|
+
}
|
|
286
|
+
finally {
|
|
287
|
+
yield clientFile.close();
|
|
288
|
+
}
|
|
289
|
+
});
|
|
290
|
+
}
|
|
291
|
+
exports.readFile = readFile;
|
|
280
292
|
/**
|
|
281
293
|
* 5.2.10 UserRolePermissions
|
|
282
294
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client_file.js","sourceRoot":"","sources":["../../source/client/client_file.ts"],"names":[],"mappings":";;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"client_file.js","sourceRoot":"","sources":["../../source/client/client_file.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
/// <reference types="node" />
|
|
4
4
|
import { Stats, PathLike, OpenMode, NoParamCallback, WriteFileOptions } from "fs";
|
|
5
5
|
import { UAFile, UAFile_Base, UAObjectType } from "node-opcua-address-space";
|
|
6
|
+
import { NodeIdLike } from "node-opcua-nodeid";
|
|
6
7
|
export interface AbstractFs {
|
|
7
8
|
stat(path: PathLike, callback: (err: NodeJS.ErrnoException | null, stats: Stats) => void): void;
|
|
8
9
|
open(path: PathLike, flags: OpenMode, callback: (err: NodeJS.ErrnoException | null, fd: number) => void): void;
|
|
@@ -31,8 +32,9 @@ export interface FileOptions {
|
|
|
31
32
|
/**
|
|
32
33
|
* an optional mimeType
|
|
33
34
|
*/
|
|
34
|
-
|
|
35
|
+
mimeType?: string;
|
|
35
36
|
fileSystem?: AbstractFs;
|
|
37
|
+
nodeId?: NodeIdLike;
|
|
36
38
|
}
|
|
37
39
|
export interface UAFileType extends UAObjectType, UAFile_Base {
|
|
38
40
|
}
|
|
@@ -67,4 +69,4 @@ export declare const defaultMaxSize = 100000000;
|
|
|
67
69
|
* @param file the OPCUA Node that has a typeDefinition of FileType
|
|
68
70
|
* @param options the options
|
|
69
71
|
*/
|
|
70
|
-
export declare function installFileType(
|
|
72
|
+
export declare function installFileType(_file: UAFile, options: FileOptions): void;
|
|
@@ -39,17 +39,17 @@ class FileTypeData {
|
|
|
39
39
|
this._fs = options.fileSystem || fsOrig;
|
|
40
40
|
this.filename = options.filename;
|
|
41
41
|
this.maxSize = options.maxSize;
|
|
42
|
-
this.mimeType = options.
|
|
42
|
+
this.mimeType = options.mimeType || "";
|
|
43
43
|
// openCount indicates the number of currently valid file handles on the file.
|
|
44
44
|
this._openCount = 0;
|
|
45
45
|
file.openCount.bindVariable({
|
|
46
46
|
get: () => new node_opcua_variant_1.Variant({ dataType: node_opcua_variant_1.DataType.UInt16, value: this._openCount })
|
|
47
47
|
}, true);
|
|
48
|
-
file.openCount.minimumSamplingInterval = 0; //
|
|
48
|
+
file.openCount.minimumSamplingInterval = 0; // changes immediately
|
|
49
49
|
file.size.bindVariable({
|
|
50
50
|
get: () => new node_opcua_variant_1.Variant({ dataType: node_opcua_variant_1.DataType.UInt64, value: this._fileSize })
|
|
51
51
|
}, true);
|
|
52
|
-
file.size.minimumSamplingInterval = 0; //
|
|
52
|
+
file.size.minimumSamplingInterval = 0; // changes immediately
|
|
53
53
|
this.refresh();
|
|
54
54
|
}
|
|
55
55
|
set openCount(value) {
|
|
@@ -273,7 +273,7 @@ function _openFile(inputArguments, context) {
|
|
|
273
273
|
});
|
|
274
274
|
}
|
|
275
275
|
function _getFileSystem(context) {
|
|
276
|
-
const fs = context.object.$
|
|
276
|
+
const fs = context.object.$fileData._fs;
|
|
277
277
|
return fs;
|
|
278
278
|
}
|
|
279
279
|
/**
|
|
@@ -460,12 +460,12 @@ function install_method_handle_on_type(addressSpace) {
|
|
|
460
460
|
* @param file the OPCUA Node that has a typeDefinition of FileType
|
|
461
461
|
* @param options the options
|
|
462
462
|
*/
|
|
463
|
-
function installFileType(
|
|
463
|
+
function installFileType(_file, options) {
|
|
464
|
+
const file = _file;
|
|
464
465
|
if (file.$fileData) {
|
|
465
466
|
errorLog("File already installed ", file.nodeId.toString(), file.browseName.toString());
|
|
466
467
|
return;
|
|
467
468
|
}
|
|
468
|
-
file.$fs = options.fileSystem || fsOrig;
|
|
469
469
|
// make sure that FileType methods are also bound.
|
|
470
470
|
install_method_handle_on_type(file.addressSpace);
|
|
471
471
|
// to protect the server we setup a maximum limit in bytes on the file
|
|
@@ -475,10 +475,10 @@ function installFileType(file, options) {
|
|
|
475
475
|
const $fileData = new FileTypeData(options, file);
|
|
476
476
|
file.$fileData = $fileData;
|
|
477
477
|
// ----- install mime type
|
|
478
|
-
if (options.
|
|
478
|
+
if (options.mimeType) {
|
|
479
479
|
if (file.mimeType) {
|
|
480
480
|
file.mimeType.bindVariable({
|
|
481
|
-
get: () => file.$
|
|
481
|
+
get: () => new node_opcua_variant_1.Variant({ dataType: node_opcua_variant_1.DataType.String, value: file.$fileData.mimeType })
|
|
482
482
|
});
|
|
483
483
|
}
|
|
484
484
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file_type_helpers.js","sourceRoot":"","sources":["../../source/server/file_type_helpers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"file_type_helpers.js","sourceRoot":"","sources":["../../source/server/file_type_helpers.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "node-opcua-file-transfer",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.80.0",
|
|
4
4
|
"description": "pure nodejs OPCUA SDK - module -server",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"build": "tsc -b",
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"main": "./dist/index.js",
|
|
12
12
|
"types": "./dist/index.d.ts",
|
|
13
13
|
"dependencies": {
|
|
14
|
-
"node-opcua-address-space": "2.
|
|
14
|
+
"node-opcua-address-space": "2.80.0",
|
|
15
15
|
"node-opcua-assert": "2.77.0",
|
|
16
16
|
"node-opcua-basic-types": "2.79.0",
|
|
17
17
|
"node-opcua-constants": "2.77.0",
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"memfs": "^3.4.7",
|
|
30
|
-
"node-opcua-client": "2.
|
|
30
|
+
"node-opcua-client": "2.80.0",
|
|
31
31
|
"node-opcua-leak-detector": "2.77.0",
|
|
32
32
|
"node-opcua-nodesets": "2.77.0",
|
|
33
33
|
"should": "^13.2.3"
|
|
@@ -47,5 +47,5 @@
|
|
|
47
47
|
"internet of things"
|
|
48
48
|
],
|
|
49
49
|
"homepage": "http://node-opcua.github.io/",
|
|
50
|
-
"gitHead": "
|
|
50
|
+
"gitHead": "bd0e2d787142e2e76de7795990f942ab7ea80e1b"
|
|
51
51
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @module node-opcua-file-transfer
|
|
3
3
|
*/
|
|
4
|
-
import { Byte, Int32, UInt16, UInt32, UInt64 } from "node-opcua-basic-types";
|
|
4
|
+
import { Byte, coerceInt32, Int32, Int64, UInt16, UInt32, UInt64 } from "node-opcua-basic-types";
|
|
5
5
|
import { AttributeIds } from "node-opcua-data-model";
|
|
6
6
|
import { NodeId, resolveNodeId } from "node-opcua-nodeid";
|
|
7
7
|
import { IBasicSession } from "node-opcua-pseudo-session";
|
|
@@ -25,10 +25,9 @@ export { OpenFileMode } from "../open_mode";
|
|
|
25
25
|
*
|
|
26
26
|
*/
|
|
27
27
|
export class ClientFile {
|
|
28
|
-
|
|
29
28
|
public static useGlobalMethod = false;
|
|
30
29
|
|
|
31
|
-
public
|
|
30
|
+
public fileHandle = 0;
|
|
32
31
|
protected session: IBasicSession;
|
|
33
32
|
protected readonly fileNodeId: NodeId;
|
|
34
33
|
|
|
@@ -47,7 +46,6 @@ export class ClientFile {
|
|
|
47
46
|
}
|
|
48
47
|
|
|
49
48
|
public async open(mode: OpenFileMode): Promise<number> {
|
|
50
|
-
|
|
51
49
|
if (mode === null || mode === undefined) {
|
|
52
50
|
throw new Error("expecting a validMode " + OpenFileMode[mode]);
|
|
53
51
|
}
|
|
@@ -57,9 +55,7 @@ export class ClientFile {
|
|
|
57
55
|
await this.ensureInitialized();
|
|
58
56
|
|
|
59
57
|
const result = await this.session.call({
|
|
60
|
-
inputArguments: [
|
|
61
|
-
{ dataType: DataType.Byte, value: mode as Byte }
|
|
62
|
-
],
|
|
58
|
+
inputArguments: [{ dataType: DataType.Byte, value: mode as Byte }],
|
|
63
59
|
methodId: this.openMethodNodeId,
|
|
64
60
|
objectId: this.fileNodeId
|
|
65
61
|
});
|
|
@@ -80,9 +76,7 @@ export class ClientFile {
|
|
|
80
76
|
await this.ensureInitialized();
|
|
81
77
|
|
|
82
78
|
const result = await this.session.call({
|
|
83
|
-
inputArguments: [
|
|
84
|
-
{ dataType: DataType.UInt32, value: this.fileHandle }
|
|
85
|
-
],
|
|
79
|
+
inputArguments: [{ dataType: DataType.UInt32, value: this.fileHandle }],
|
|
86
80
|
methodId: this.closeMethodNodeId,
|
|
87
81
|
objectId: this.fileNodeId
|
|
88
82
|
});
|
|
@@ -101,9 +95,7 @@ export class ClientFile {
|
|
|
101
95
|
}
|
|
102
96
|
|
|
103
97
|
const result = await this.session.call({
|
|
104
|
-
inputArguments: [
|
|
105
|
-
{ dataType: DataType.UInt32, value: this.fileHandle }
|
|
106
|
-
],
|
|
98
|
+
inputArguments: [{ dataType: DataType.UInt32, value: this.fileHandle }],
|
|
107
99
|
methodId: this.getPositionNodeId,
|
|
108
100
|
objectId: this.fileNodeId
|
|
109
101
|
});
|
|
@@ -139,7 +131,7 @@ export class ClientFile {
|
|
|
139
131
|
return;
|
|
140
132
|
}
|
|
141
133
|
|
|
142
|
-
public async read(bytesToRead: Int32): Promise<Buffer> {
|
|
134
|
+
public async read(bytesToRead: UInt32 | Int32 | Int64 | UInt64): Promise<Buffer> {
|
|
143
135
|
await this.ensureInitialized();
|
|
144
136
|
if (!this.fileHandle) {
|
|
145
137
|
throw new Error("File has not been opened yet");
|
|
@@ -150,7 +142,7 @@ export class ClientFile {
|
|
|
150
142
|
{
|
|
151
143
|
arrayType: VariantArrayType.Scalar,
|
|
152
144
|
dataType: DataType.Int32,
|
|
153
|
-
value: bytesToRead
|
|
145
|
+
value: coerceInt32(bytesToRead)
|
|
154
146
|
}
|
|
155
147
|
],
|
|
156
148
|
methodId: this.readNodeId,
|
|
@@ -208,7 +200,6 @@ export class ClientFile {
|
|
|
208
200
|
|
|
209
201
|
// eslint-disable-next-line max-statements
|
|
210
202
|
protected async extractMethodsIds(): Promise<void> {
|
|
211
|
-
|
|
212
203
|
if (ClientFile.useGlobalMethod) {
|
|
213
204
|
debugLog("Using GlobalMethodId");
|
|
214
205
|
this.openMethodNodeId = resolveNodeId(MethodIds.FileType_Open);
|
|
@@ -290,6 +281,17 @@ export class ClientFile {
|
|
|
290
281
|
}
|
|
291
282
|
}
|
|
292
283
|
|
|
284
|
+
export async function readFile(clientFile: ClientFile): Promise<Buffer> {
|
|
285
|
+
await clientFile.open(OpenFileMode.Read);
|
|
286
|
+
try {
|
|
287
|
+
const fileSize = await clientFile.size();
|
|
288
|
+
const data = await clientFile.read(fileSize);
|
|
289
|
+
return data;
|
|
290
|
+
} finally {
|
|
291
|
+
await clientFile.close();
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
|
|
293
295
|
/**
|
|
294
296
|
* 5.2.10 UserRolePermissions
|
|
295
297
|
*
|
|
@@ -18,7 +18,7 @@ import {
|
|
|
18
18
|
} from "node-opcua-address-space";
|
|
19
19
|
import { Byte, Int32, UInt32, UInt64 } from "node-opcua-basic-types";
|
|
20
20
|
import { checkDebugFlag, make_debugLog, make_errorLog, make_warningLog } from "node-opcua-debug";
|
|
21
|
-
import { NodeId, sameNodeId } from "node-opcua-nodeid";
|
|
21
|
+
import { NodeId, NodeIdLike, sameNodeId } from "node-opcua-nodeid";
|
|
22
22
|
import { CallMethodResultOptions } from "node-opcua-service-call";
|
|
23
23
|
import { StatusCodes } from "node-opcua-status-code";
|
|
24
24
|
import { DataType, Variant, VariantArrayType } from "node-opcua-variant";
|
|
@@ -87,9 +87,11 @@ export interface FileOptions {
|
|
|
87
87
|
/**
|
|
88
88
|
* an optional mimeType
|
|
89
89
|
*/
|
|
90
|
-
|
|
90
|
+
mimeType?: string;
|
|
91
91
|
|
|
92
92
|
fileSystem?: AbstractFs;
|
|
93
|
+
|
|
94
|
+
nodeId?: NodeIdLike;
|
|
93
95
|
}
|
|
94
96
|
|
|
95
97
|
export interface UAFileType extends UAObjectType, UAFile_Base {}
|
|
@@ -112,7 +114,7 @@ export class FileTypeData {
|
|
|
112
114
|
|
|
113
115
|
this.filename = options.filename;
|
|
114
116
|
this.maxSize = options.maxSize!;
|
|
115
|
-
this.mimeType = options.
|
|
117
|
+
this.mimeType = options.mimeType || "";
|
|
116
118
|
// openCount indicates the number of currently valid file handles on the file.
|
|
117
119
|
this._openCount = 0;
|
|
118
120
|
file.openCount.bindVariable(
|
|
@@ -121,7 +123,7 @@ export class FileTypeData {
|
|
|
121
123
|
},
|
|
122
124
|
true
|
|
123
125
|
);
|
|
124
|
-
file.openCount.minimumSamplingInterval = 0; //
|
|
126
|
+
file.openCount.minimumSamplingInterval = 0; // changes immediately
|
|
125
127
|
|
|
126
128
|
file.size.bindVariable(
|
|
127
129
|
{
|
|
@@ -130,7 +132,7 @@ export class FileTypeData {
|
|
|
130
132
|
true
|
|
131
133
|
);
|
|
132
134
|
|
|
133
|
-
file.size.minimumSamplingInterval = 0; //
|
|
135
|
+
file.size.minimumSamplingInterval = 0; // changes immediately
|
|
134
136
|
|
|
135
137
|
this.refresh();
|
|
136
138
|
}
|
|
@@ -182,8 +184,12 @@ export class FileTypeData {
|
|
|
182
184
|
}
|
|
183
185
|
}
|
|
184
186
|
|
|
187
|
+
interface UAFileEx extends UAFile {
|
|
188
|
+
$fileData: FileTypeData;
|
|
189
|
+
}
|
|
190
|
+
|
|
185
191
|
export function getFileData(opcuaFile2: UAFile): FileTypeData {
|
|
186
|
-
return (opcuaFile2 as
|
|
192
|
+
return (opcuaFile2 as UAFileEx).$fileData;
|
|
187
193
|
}
|
|
188
194
|
|
|
189
195
|
interface FileAccessData {
|
|
@@ -343,7 +349,7 @@ async function _openFile(this: UAMethod, inputArguments: Variant[], context: ISe
|
|
|
343
349
|
return { statusCode: StatusCodes.BadInvalidArgument };
|
|
344
350
|
}
|
|
345
351
|
|
|
346
|
-
const fileData = (context.object as
|
|
352
|
+
const fileData = (context.object as UAFileEx).$fileData;
|
|
347
353
|
|
|
348
354
|
const filename = fileData.filename;
|
|
349
355
|
|
|
@@ -389,8 +395,8 @@ async function _openFile(this: UAMethod, inputArguments: Variant[], context: ISe
|
|
|
389
395
|
return callMethodResult;
|
|
390
396
|
}
|
|
391
397
|
|
|
392
|
-
function _getFileSystem(context: ISessionContext) {
|
|
393
|
-
const fs: AbstractFs = (context.object as
|
|
398
|
+
function _getFileSystem(context: ISessionContext): AbstractFs {
|
|
399
|
+
const fs: AbstractFs = (context.object as UAFileEx).$fileData._fs;
|
|
394
400
|
return fs;
|
|
395
401
|
}
|
|
396
402
|
|
|
@@ -414,7 +420,7 @@ async function _closeFile(this: UAMethod, inputArguments: Variant[], context: IS
|
|
|
414
420
|
return { statusCode: StatusCodes.BadInvalidArgument };
|
|
415
421
|
}
|
|
416
422
|
|
|
417
|
-
const data = (context.object as
|
|
423
|
+
const data = (context.object as UAFileEx).$fileData as FileTypeData;
|
|
418
424
|
|
|
419
425
|
debugLog("Closing file handle ", fileHandle, "filename: ", data.filename, "openCount: ", data.openCount);
|
|
420
426
|
|
|
@@ -531,7 +537,7 @@ async function _writeFile(this: UAMethod, inputArguments: Variant[], context: IS
|
|
|
531
537
|
_fileInfo.position[1] += ret.bytesWritten;
|
|
532
538
|
_fileInfo.size = Math.max(_fileInfo.size, _fileInfo.position[1]);
|
|
533
539
|
|
|
534
|
-
const fileTypeData = (context.object as
|
|
540
|
+
const fileTypeData = (context.object as UAFileEx).$fileData as FileTypeData;
|
|
535
541
|
debugLog(fileTypeData.fileSize);
|
|
536
542
|
fileTypeData.fileSize = Math.max(fileTypeData.fileSize, _fileInfo.position[1]);
|
|
537
543
|
debugLog(fileTypeData.fileSize);
|
|
@@ -595,7 +601,7 @@ async function _getPositionFile(
|
|
|
595
601
|
export const defaultMaxSize = 100000000;
|
|
596
602
|
|
|
597
603
|
function install_method_handle_on_type(addressSpace: IAddressSpace): void {
|
|
598
|
-
const fileType = addressSpace.findObjectType("FileType") as
|
|
604
|
+
const fileType = addressSpace.findObjectType("FileType") as unknown as UAFile;
|
|
599
605
|
if (fileType.open.isBound()) {
|
|
600
606
|
return;
|
|
601
607
|
}
|
|
@@ -612,12 +618,12 @@ function install_method_handle_on_type(addressSpace: IAddressSpace): void {
|
|
|
612
618
|
* @param file the OPCUA Node that has a typeDefinition of FileType
|
|
613
619
|
* @param options the options
|
|
614
620
|
*/
|
|
615
|
-
export function installFileType(
|
|
616
|
-
|
|
621
|
+
export function installFileType(_file: UAFile, options: FileOptions): void {
|
|
622
|
+
const file = _file as UAFileEx;
|
|
623
|
+
if (file.$fileData) {
|
|
617
624
|
errorLog("File already installed ", file.nodeId.toString(), file.browseName.toString());
|
|
618
625
|
return;
|
|
619
626
|
}
|
|
620
|
-
(file as any).$fs = options.fileSystem || fsOrig;
|
|
621
627
|
|
|
622
628
|
// make sure that FileType methods are also bound.
|
|
623
629
|
install_method_handle_on_type(file.addressSpace);
|
|
@@ -628,13 +634,13 @@ export function installFileType(file: UAFile, options: FileOptions): void {
|
|
|
628
634
|
options.maxSize = options.maxSize === undefined ? defaultMaxSize : options.maxSize;
|
|
629
635
|
|
|
630
636
|
const $fileData = new FileTypeData(options, file);
|
|
631
|
-
|
|
637
|
+
file.$fileData = $fileData;
|
|
632
638
|
|
|
633
639
|
// ----- install mime type
|
|
634
|
-
if (options.
|
|
640
|
+
if (options.mimeType) {
|
|
635
641
|
if (file.mimeType) {
|
|
636
642
|
file.mimeType.bindVariable({
|
|
637
|
-
get: () => (
|
|
643
|
+
get: () => new Variant({ dataType: DataType.String, value: file.$fileData.mimeType })
|
|
638
644
|
});
|
|
639
645
|
}
|
|
640
646
|
}
|