node-opcua-server 2.73.0 → 2.75.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/LICENSE +3 -1
- package/dist/filter/check_where_clause_on_address_space.d.ts +3 -0
- package/dist/filter/check_where_clause_on_address_space.js +23 -0
- package/dist/filter/check_where_clause_on_address_space.js.map +1 -0
- package/dist/filter/extract_event_fields.d.ts +10 -0
- package/dist/filter/extract_event_fields.js +18 -0
- package/dist/filter/extract_event_fields.js.map +1 -0
- package/dist/monitored_item.js +6 -4
- package/dist/monitored_item.js.map +1 -1
- package/dist/opcua_server.js +21 -19
- package/dist/opcua_server.js.map +1 -1
- package/dist/server_publish_engine.d.ts +5 -4
- package/dist/server_publish_engine.js +14 -8
- package/dist/server_publish_engine.js.map +1 -1
- package/dist/server_subscription.js +9 -8
- package/dist/server_subscription.js.map +1 -1
- package/package.json +49 -48
- package/source/filter/check_where_clause_on_address_space.ts +29 -0
- package/source/filter/extract_event_fields.ts +21 -0
- package/source/monitored_item.ts +5 -11
- package/source/opcua_server.ts +22 -23
- package/source/server_publish_engine.ts +24 -19
- package/source/server_subscription.ts +11 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server_subscription.js","sourceRoot":"","sources":["../source/server_subscription.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server_subscription.js","sourceRoot":"","sources":["../source/server_subscription.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "node-opcua-server",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.75.0",
|
|
4
4
|
"description": "pure nodejs OPCUA SDK - module -server",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"build": "tsc -b",
|
|
@@ -17,56 +17,57 @@
|
|
|
17
17
|
"async": "^3.2.4",
|
|
18
18
|
"dequeue": "^1.0.5",
|
|
19
19
|
"lodash": "4.17.21",
|
|
20
|
-
"node-opcua-address-space": "2.
|
|
21
|
-
"node-opcua-
|
|
22
|
-
"node-opcua-
|
|
23
|
-
"node-opcua-
|
|
24
|
-
"node-opcua-
|
|
25
|
-
"node-opcua-
|
|
26
|
-
"node-opcua-client
|
|
27
|
-
"node-opcua-
|
|
28
|
-
"node-opcua-
|
|
20
|
+
"node-opcua-address-space": "2.75.0",
|
|
21
|
+
"node-opcua-address-space-base": "2.75.0",
|
|
22
|
+
"node-opcua-assert": "2.74.0",
|
|
23
|
+
"node-opcua-basic-types": "2.74.0",
|
|
24
|
+
"node-opcua-binary-stream": "2.74.0",
|
|
25
|
+
"node-opcua-certificate-manager": "2.74.0",
|
|
26
|
+
"node-opcua-client": "2.75.0",
|
|
27
|
+
"node-opcua-client-dynamic-extension-object": "2.75.0",
|
|
28
|
+
"node-opcua-common": "2.75.0",
|
|
29
|
+
"node-opcua-constants": "2.74.0",
|
|
29
30
|
"node-opcua-crypto": "^1.11.0",
|
|
30
|
-
"node-opcua-data-access": "2.
|
|
31
|
-
"node-opcua-data-model": "2.
|
|
32
|
-
"node-opcua-data-value": "2.
|
|
33
|
-
"node-opcua-date-time": "2.
|
|
34
|
-
"node-opcua-debug": "2.
|
|
35
|
-
"node-opcua-enum": "2.
|
|
36
|
-
"node-opcua-extension-object": "2.
|
|
37
|
-
"node-opcua-factory": "2.
|
|
38
|
-
"node-opcua-hostname": "2.
|
|
39
|
-
"node-opcua-nodeid": "2.
|
|
40
|
-
"node-opcua-nodeset-ua": "2.
|
|
41
|
-
"node-opcua-nodesets": "2.
|
|
42
|
-
"node-opcua-numeric-range": "2.
|
|
43
|
-
"node-opcua-object-registry": "2.
|
|
31
|
+
"node-opcua-data-access": "2.75.0",
|
|
32
|
+
"node-opcua-data-model": "2.75.0",
|
|
33
|
+
"node-opcua-data-value": "2.75.0",
|
|
34
|
+
"node-opcua-date-time": "2.74.0",
|
|
35
|
+
"node-opcua-debug": "2.74.0",
|
|
36
|
+
"node-opcua-enum": "2.74.0",
|
|
37
|
+
"node-opcua-extension-object": "2.75.0",
|
|
38
|
+
"node-opcua-factory": "2.75.0",
|
|
39
|
+
"node-opcua-hostname": "2.74.0",
|
|
40
|
+
"node-opcua-nodeid": "2.74.0",
|
|
41
|
+
"node-opcua-nodeset-ua": "2.75.0",
|
|
42
|
+
"node-opcua-nodesets": "2.74.0",
|
|
43
|
+
"node-opcua-numeric-range": "2.75.0",
|
|
44
|
+
"node-opcua-object-registry": "2.74.0",
|
|
44
45
|
"node-opcua-pki": "^2.17.0",
|
|
45
|
-
"node-opcua-secure-channel": "2.
|
|
46
|
-
"node-opcua-service-browse": "2.
|
|
47
|
-
"node-opcua-service-call": "2.
|
|
48
|
-
"node-opcua-service-discovery": "2.
|
|
49
|
-
"node-opcua-service-endpoints": "2.
|
|
50
|
-
"node-opcua-service-filter": "2.
|
|
51
|
-
"node-opcua-service-history": "2.
|
|
52
|
-
"node-opcua-service-node-management": "2.
|
|
53
|
-
"node-opcua-service-query": "2.
|
|
54
|
-
"node-opcua-service-read": "2.
|
|
55
|
-
"node-opcua-service-register-node": "2.
|
|
56
|
-
"node-opcua-service-secure-channel": "2.
|
|
57
|
-
"node-opcua-service-session": "2.
|
|
58
|
-
"node-opcua-service-subscription": "2.
|
|
59
|
-
"node-opcua-service-translate-browse-path": "2.
|
|
60
|
-
"node-opcua-service-write": "2.
|
|
61
|
-
"node-opcua-status-code": "2.
|
|
62
|
-
"node-opcua-transport": "2.
|
|
63
|
-
"node-opcua-types": "2.
|
|
64
|
-
"node-opcua-utils": "2.
|
|
65
|
-
"node-opcua-variant": "2.
|
|
46
|
+
"node-opcua-secure-channel": "2.75.0",
|
|
47
|
+
"node-opcua-service-browse": "2.75.0",
|
|
48
|
+
"node-opcua-service-call": "2.75.0",
|
|
49
|
+
"node-opcua-service-discovery": "2.75.0",
|
|
50
|
+
"node-opcua-service-endpoints": "2.75.0",
|
|
51
|
+
"node-opcua-service-filter": "2.75.0",
|
|
52
|
+
"node-opcua-service-history": "2.75.0",
|
|
53
|
+
"node-opcua-service-node-management": "2.75.0",
|
|
54
|
+
"node-opcua-service-query": "2.75.0",
|
|
55
|
+
"node-opcua-service-read": "2.75.0",
|
|
56
|
+
"node-opcua-service-register-node": "2.75.0",
|
|
57
|
+
"node-opcua-service-secure-channel": "2.75.0",
|
|
58
|
+
"node-opcua-service-session": "2.75.0",
|
|
59
|
+
"node-opcua-service-subscription": "2.75.0",
|
|
60
|
+
"node-opcua-service-translate-browse-path": "2.75.0",
|
|
61
|
+
"node-opcua-service-write": "2.75.0",
|
|
62
|
+
"node-opcua-status-code": "2.74.0",
|
|
63
|
+
"node-opcua-transport": "2.75.0",
|
|
64
|
+
"node-opcua-types": "2.75.0",
|
|
65
|
+
"node-opcua-utils": "2.74.0",
|
|
66
|
+
"node-opcua-variant": "2.75.0"
|
|
66
67
|
},
|
|
67
68
|
"devDependencies": {
|
|
68
|
-
"node-opcua-leak-detector": "2.
|
|
69
|
-
"node-opcua-test-helpers": "2.
|
|
69
|
+
"node-opcua-leak-detector": "2.74.0",
|
|
70
|
+
"node-opcua-test-helpers": "2.74.0",
|
|
70
71
|
"should": "^13.2.3",
|
|
71
72
|
"sinon": "^14.0.0"
|
|
72
73
|
},
|
|
@@ -85,5 +86,5 @@
|
|
|
85
86
|
"internet of things"
|
|
86
87
|
],
|
|
87
88
|
"homepage": "http://node-opcua.github.io/",
|
|
88
|
-
"gitHead": "
|
|
89
|
+
"gitHead": "5ccb835ca480c2a8a591ae61b5949a9d8bad4017"
|
|
89
90
|
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { IAddressSpace, ISessionContext, IEventData } from "node-opcua-address-space-base";
|
|
2
|
+
import { checkFilter } from "node-opcua-service-filter";
|
|
3
|
+
import { FilterContextOnAddressSpace } from "node-opcua-service-filter";
|
|
4
|
+
import { ContentFilter } from "node-opcua-types";
|
|
5
|
+
|
|
6
|
+
export function checkWhereClauseOnAdressSpace(
|
|
7
|
+
addressSpace: IAddressSpace,
|
|
8
|
+
sessionContext: ISessionContext,
|
|
9
|
+
whereClause: ContentFilter,
|
|
10
|
+
eventData: IEventData
|
|
11
|
+
): boolean {
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
// const filterContext: FilterContext = {
|
|
15
|
+
// addressSpace,
|
|
16
|
+
// sessionContext,
|
|
17
|
+
// rootNode: eventData.$eventDataSource!,
|
|
18
|
+
// extractValue(operand: FilterOperand) {
|
|
19
|
+
// if (operand instanceof SimpleAttributeOperand) {
|
|
20
|
+
// return extractEventFields(filterContext.sessionContext, [operand], eventData)[0];
|
|
21
|
+
// } else {
|
|
22
|
+
// return new Variant({ dataType: DataType.Null });
|
|
23
|
+
// }
|
|
24
|
+
// }
|
|
25
|
+
// };
|
|
26
|
+
const filterContext = new FilterContextOnAddressSpace(sessionContext, eventData);
|
|
27
|
+
|
|
28
|
+
return checkFilter(filterContext, whereClause);
|
|
29
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { IEventData, ISessionContext } from "node-opcua-address-space-base";
|
|
2
|
+
import { extractEventFieldsBase } from "node-opcua-service-filter";
|
|
3
|
+
import { FilterContextOnAddressSpace } from "node-opcua-service-filter";
|
|
4
|
+
import { SimpleAttributeOperand } from "node-opcua-types";
|
|
5
|
+
import { Variant } from "node-opcua-variant";
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* @method extractEventFields
|
|
10
|
+
* extract a array of eventFields from a event node, matching the selectClauses
|
|
11
|
+
* @param selectClauses
|
|
12
|
+
* @param eventData : a pseudo Node that provides a browse Method and a readValue(nodeId)
|
|
13
|
+
*/
|
|
14
|
+
export function extractEventFields(
|
|
15
|
+
sessionContext: ISessionContext,
|
|
16
|
+
selectClauses: SimpleAttributeOperand[],
|
|
17
|
+
eventData: IEventData
|
|
18
|
+
): Variant[] {
|
|
19
|
+
const context = new FilterContextOnAddressSpace(sessionContext, eventData);
|
|
20
|
+
return extractEventFieldsBase(context, selectClauses);
|
|
21
|
+
}
|
package/source/monitored_item.ts
CHANGED
|
@@ -4,16 +4,9 @@
|
|
|
4
4
|
import { EventEmitter } from "events";
|
|
5
5
|
import * as chalk from "chalk";
|
|
6
6
|
import { assert } from "node-opcua-assert";
|
|
7
|
-
import {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
extractEventFields,
|
|
11
|
-
makeAttributeEventName,
|
|
12
|
-
SessionContext,
|
|
13
|
-
UAVariable,
|
|
14
|
-
checkWhereClause,
|
|
15
|
-
AddressSpace
|
|
16
|
-
} from "node-opcua-address-space";
|
|
7
|
+
import { BaseNode, IEventData, makeAttributeEventName, SessionContext, UAVariable, AddressSpace } from "node-opcua-address-space";
|
|
8
|
+
|
|
9
|
+
import { extractEventFields } from "node-opcua-service-filter";
|
|
17
10
|
import { DateTime, UInt32 } from "node-opcua-basic-types";
|
|
18
11
|
import { NodeClass, QualifiedNameOptions } from "node-opcua-data-model";
|
|
19
12
|
import { AttributeIds } from "node-opcua-data-model";
|
|
@@ -61,6 +54,7 @@ import { sameVariant, Variant } from "node-opcua-variant";
|
|
|
61
54
|
|
|
62
55
|
import { appendToTimer, removeFromTimer } from "./node_sampler";
|
|
63
56
|
import { validateFilter } from "./validate_filter";
|
|
57
|
+
import { checkWhereClauseOnAdressSpace } from "./filter/check_where_clause_on_address_space";
|
|
64
58
|
|
|
65
59
|
export type QueueItem = MonitoredItemNotification | EventFieldList;
|
|
66
60
|
|
|
@@ -925,7 +919,7 @@ export class MonitoredItem extends EventEmitter {
|
|
|
925
919
|
|
|
926
920
|
const addressSpace: AddressSpace = eventData.$eventDataSource?.addressSpace as AddressSpace;
|
|
927
921
|
|
|
928
|
-
if (!
|
|
922
|
+
if (!checkWhereClauseOnAdressSpace(addressSpace, SessionContext.defaultContext, this.filter.whereClause, eventData)) {
|
|
929
923
|
return;
|
|
930
924
|
}
|
|
931
925
|
|
package/source/opcua_server.ts
CHANGED
|
@@ -145,7 +145,8 @@ import {
|
|
|
145
145
|
BuildInfoOptions,
|
|
146
146
|
MonitoredItemCreateResult,
|
|
147
147
|
IssuedIdentityToken,
|
|
148
|
-
BrowseResultOptions
|
|
148
|
+
BrowseResultOptions,
|
|
149
|
+
ServiceFault
|
|
149
150
|
} from "node-opcua-types";
|
|
150
151
|
import { DataType } from "node-opcua-variant";
|
|
151
152
|
import { VariantArrayType } from "node-opcua-variant";
|
|
@@ -184,7 +185,7 @@ const warningLog = make_warningLog(__filename);
|
|
|
184
185
|
const default_maxConnectionsPerEndpoint = 10;
|
|
185
186
|
|
|
186
187
|
function g_sendError(channel: ServerSecureChannelLayer, message: Message, ResponseClass: any, statusCode: StatusCode): void {
|
|
187
|
-
const response = new
|
|
188
|
+
const response = new ServiceFault({
|
|
188
189
|
responseHeader: { serviceResult: statusCode }
|
|
189
190
|
});
|
|
190
191
|
return channel.send_response("MSG", response, message);
|
|
@@ -2233,7 +2234,7 @@ export class OPCUAServer extends OPCUABaseServer {
|
|
|
2233
2234
|
|
|
2234
2235
|
function sendResponse(response1: Response) {
|
|
2235
2236
|
try {
|
|
2236
|
-
assert(response1 instanceof ResponseClass);
|
|
2237
|
+
assert(response1 instanceof ResponseClass || response1 instanceof ServiceFault);
|
|
2237
2238
|
if (message.session) {
|
|
2238
2239
|
const counterName = ResponseClass.name.replace("Response", "");
|
|
2239
2240
|
message.session.incrementRequestTotalCounter(counterName);
|
|
@@ -3071,7 +3072,7 @@ export class OPCUAServer extends OPCUABaseServer {
|
|
|
3071
3072
|
(session: ServerSession, sendResponse: (response: Response) => void, sendError: (statusCode: StatusCode) => void) => {
|
|
3072
3073
|
assert(session);
|
|
3073
3074
|
assert(session.publishEngine); // server.publishEngine doesn't exists, OPCUAServer has probably shut down already
|
|
3074
|
-
session.publishEngine._on_PublishRequest(request, (
|
|
3075
|
+
session.publishEngine._on_PublishRequest(request, (_request1, response) => {
|
|
3075
3076
|
sendResponse(response);
|
|
3076
3077
|
});
|
|
3077
3078
|
}
|
|
@@ -3180,16 +3181,20 @@ export class OPCUAServer extends OPCUABaseServer {
|
|
|
3180
3181
|
linksToAdd,
|
|
3181
3182
|
linksToRemove
|
|
3182
3183
|
);
|
|
3183
|
-
|
|
3184
|
-
responseHeader: { serviceResult: statusCode }
|
|
3185
|
-
|
|
3186
|
-
|
|
3187
|
-
|
|
3188
|
-
|
|
3189
|
-
removeDiagnosticInfos: null
|
|
3190
|
-
});
|
|
3184
|
+
if (statusCode !== StatusCodes.Good) {
|
|
3185
|
+
const response = new ServiceFault({ responseHeader: { serviceResult: statusCode } });
|
|
3186
|
+
sendResponse(response);
|
|
3187
|
+
} else {
|
|
3188
|
+
const response = new SetTriggeringResponse({
|
|
3189
|
+
responseHeader: { serviceResult: statusCode },
|
|
3191
3190
|
|
|
3192
|
-
|
|
3191
|
+
addResults,
|
|
3192
|
+
removeResults,
|
|
3193
|
+
addDiagnosticInfos: null,
|
|
3194
|
+
removeDiagnosticInfos: null
|
|
3195
|
+
});
|
|
3196
|
+
sendResponse(response);
|
|
3197
|
+
}
|
|
3193
3198
|
}
|
|
3194
3199
|
);
|
|
3195
3200
|
}
|
|
@@ -3390,11 +3395,8 @@ export class OPCUAServer extends OPCUABaseServer {
|
|
|
3390
3395
|
message,
|
|
3391
3396
|
channel,
|
|
3392
3397
|
(session: ServerSession, sendResponse: (response: Response) => void, sendError: (statusCode: StatusCode) => void) => {
|
|
3393
|
-
let response;
|
|
3394
|
-
|
|
3395
3398
|
if (!request.nodesToRegister || request.nodesToRegister.length === 0) {
|
|
3396
|
-
|
|
3397
|
-
return sendResponse(response);
|
|
3399
|
+
return sendError(StatusCodes.BadNothingToDo);
|
|
3398
3400
|
}
|
|
3399
3401
|
if (this.engine.serverCapabilities.operationLimits.maxNodesPerRegisterNodes > 0) {
|
|
3400
3402
|
if (request.nodesToRegister.length > this.engine.serverCapabilities.operationLimits.maxNodesPerRegisterNodes) {
|
|
@@ -3410,7 +3412,7 @@ export class OPCUAServer extends OPCUABaseServer {
|
|
|
3410
3412
|
// NodeId from the request.
|
|
3411
3413
|
const registeredNodeIds = request.nodesToRegister.map((nodeId) => session.registerNode(nodeId));
|
|
3412
3414
|
|
|
3413
|
-
response = new RegisterNodesResponse({
|
|
3415
|
+
const response = new RegisterNodesResponse({
|
|
3414
3416
|
registeredNodeIds
|
|
3415
3417
|
});
|
|
3416
3418
|
sendResponse(response);
|
|
@@ -3427,13 +3429,10 @@ export class OPCUAServer extends OPCUABaseServer {
|
|
|
3427
3429
|
message,
|
|
3428
3430
|
channel,
|
|
3429
3431
|
(session: ServerSession, sendResponse: (response: Response) => void, sendError: (statusCode: StatusCode) => void) => {
|
|
3430
|
-
let response;
|
|
3431
|
-
|
|
3432
3432
|
request.nodesToUnregister = request.nodesToUnregister || [];
|
|
3433
3433
|
|
|
3434
3434
|
if (!request.nodesToUnregister || request.nodesToUnregister.length === 0) {
|
|
3435
|
-
|
|
3436
|
-
return sendResponse(response);
|
|
3435
|
+
return sendError(StatusCodes.BadNothingToDo);
|
|
3437
3436
|
}
|
|
3438
3437
|
|
|
3439
3438
|
if (this.engine.serverCapabilities.operationLimits.maxNodesPerRegisterNodes > 0) {
|
|
@@ -3446,7 +3445,7 @@ export class OPCUAServer extends OPCUABaseServer {
|
|
|
3446
3445
|
|
|
3447
3446
|
request.nodesToUnregister.map((nodeId: NodeId) => session.unRegisterNode(nodeId));
|
|
3448
3447
|
|
|
3449
|
-
response = new UnregisterNodesResponse({});
|
|
3448
|
+
const response = new UnregisterNodesResponse({});
|
|
3450
3449
|
sendResponse(response);
|
|
3451
3450
|
}
|
|
3452
3451
|
);
|
|
@@ -11,7 +11,7 @@ import { checkDebugFlag, make_debugLog } from "node-opcua-debug";
|
|
|
11
11
|
import { ObjectRegistry } from "node-opcua-object-registry";
|
|
12
12
|
import { StatusCode, StatusCodes } from "node-opcua-status-code";
|
|
13
13
|
|
|
14
|
-
import { PublishRequest, PublishResponse, SubscriptionAcknowledgement } from "node-opcua-types";
|
|
14
|
+
import { PublishRequest, PublishResponse, ServiceFault, SubscriptionAcknowledgement } from "node-opcua-types";
|
|
15
15
|
import { Subscription } from "./server_subscription";
|
|
16
16
|
import { SubscriptionState } from "./server_subscription";
|
|
17
17
|
import { IServerSidePublishEngine, INotifMsg, IClosedOrTransferredSubscription } from "./i_server_side_publish_engine";
|
|
@@ -36,7 +36,7 @@ interface PublishData {
|
|
|
36
36
|
request: PublishRequest;
|
|
37
37
|
serverTimeWhenReceived: number;
|
|
38
38
|
results: StatusCode[];
|
|
39
|
-
callback: (request: PublishRequest, response: PublishResponse) => void;
|
|
39
|
+
callback: (request: PublishRequest, response: PublishResponse | ServiceFault) => void;
|
|
40
40
|
}
|
|
41
41
|
|
|
42
42
|
function _assertValidPublishData(publishData: PublishData) {
|
|
@@ -137,7 +137,7 @@ export class ServerSidePublishEngine extends EventEmitter implements IServerSide
|
|
|
137
137
|
|
|
138
138
|
const tmp = srcPublishEngine.detach_subscription(subscription);
|
|
139
139
|
destPublishEngine.add_subscription(tmp);
|
|
140
|
-
|
|
140
|
+
|
|
141
141
|
subscription.resetLifeTimeCounter();
|
|
142
142
|
if (sendInitialValues) {
|
|
143
143
|
/* A Boolean parameter with the following values:
|
|
@@ -327,11 +327,12 @@ export class ServerSidePublishEngine extends EventEmitter implements IServerSide
|
|
|
327
327
|
public on_close_subscription(subscription: IClosedOrTransferredSubscription): void {
|
|
328
328
|
doDebug && debugLog("ServerSidePublishEngine#on_close_subscription", subscription.id);
|
|
329
329
|
if (subscription.hasPendingNotifications) {
|
|
330
|
-
doDebug &&
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
330
|
+
doDebug &&
|
|
331
|
+
debugLog(
|
|
332
|
+
"ServerSidePublishEngine#on_close_subscription storing subscription",
|
|
333
|
+
subscription.id,
|
|
334
|
+
" to _closed_subscriptions because it has pending notification"
|
|
335
|
+
);
|
|
335
336
|
this._closed_subscriptions.push(subscription);
|
|
336
337
|
} else {
|
|
337
338
|
doDebug && debugLog("ServerSidePublishEngine#on_close_subscription disposing subscription", subscription.id);
|
|
@@ -402,7 +403,7 @@ export class ServerSidePublishEngine extends EventEmitter implements IServerSide
|
|
|
402
403
|
*/
|
|
403
404
|
public _on_PublishRequest(
|
|
404
405
|
request: PublishRequest,
|
|
405
|
-
callback?: (request1: PublishRequest, response: PublishResponse) => void
|
|
406
|
+
callback?: (request1: PublishRequest, response: PublishResponse| ServiceFault) => void
|
|
406
407
|
): void {
|
|
407
408
|
callback = callback || dummy_function;
|
|
408
409
|
assert(typeof callback === "function");
|
|
@@ -483,9 +484,10 @@ export class ServerSidePublishEngine extends EventEmitter implements IServerSide
|
|
|
483
484
|
s.timeToKeepAlive +
|
|
484
485
|
" m?=" +
|
|
485
486
|
s.hasUncollectedMonitoredItemNotifications +
|
|
486
|
-
" " +
|
|
487
|
+
" " +
|
|
487
488
|
SubscriptionState[s.state] +
|
|
488
|
-
" " +
|
|
489
|
+
" " +
|
|
490
|
+
s.messageSent +
|
|
489
491
|
"]"
|
|
490
492
|
)
|
|
491
493
|
.join(" \n")
|
|
@@ -508,7 +510,8 @@ export class ServerSidePublishEngine extends EventEmitter implements IServerSide
|
|
|
508
510
|
}
|
|
509
511
|
const starving_subscription = this._find_starving_subscription();
|
|
510
512
|
if (starving_subscription) {
|
|
511
|
-
doDebug &&
|
|
513
|
+
doDebug &&
|
|
514
|
+
debugLog(chalk.bgWhite.red("feeding most late subscription subscriptionId = "), starving_subscription.id);
|
|
512
515
|
starving_subscription.process_subscription();
|
|
513
516
|
}
|
|
514
517
|
});
|
|
@@ -537,10 +540,10 @@ export class ServerSidePublishEngine extends EventEmitter implements IServerSide
|
|
|
537
540
|
|
|
538
541
|
private _send_error_for_request(publishData: PublishData, statusCode: StatusCode): void {
|
|
539
542
|
_assertValidPublishData(publishData);
|
|
540
|
-
const
|
|
543
|
+
const response = new ServiceFault({
|
|
541
544
|
responseHeader: { serviceResult: statusCode }
|
|
542
545
|
});
|
|
543
|
-
this._send_response_for_request(publishData,
|
|
546
|
+
this._send_response_for_request(publishData, response);
|
|
544
547
|
}
|
|
545
548
|
|
|
546
549
|
private _cancelPendingPublishRequest(statusCode: StatusCode): void {
|
|
@@ -629,7 +632,7 @@ export class ServerSidePublishEngine extends EventEmitter implements IServerSide
|
|
|
629
632
|
assert(this.pendingPublishRequestCount > 0);
|
|
630
633
|
assert(response.subscriptionId !== 0xffffff);
|
|
631
634
|
const publishData = this._publish_request_queue.shift()!;
|
|
632
|
-
this.
|
|
635
|
+
this._send_valid_response_for_request(publishData, response);
|
|
633
636
|
}
|
|
634
637
|
|
|
635
638
|
public _on_tick(): void {
|
|
@@ -654,15 +657,17 @@ export class ServerSidePublishEngine extends EventEmitter implements IServerSide
|
|
|
654
657
|
this._send_error_for_request(publishData, StatusCodes.BadTimeout);
|
|
655
658
|
}
|
|
656
659
|
}
|
|
657
|
-
|
|
658
|
-
|
|
660
|
+
public _send_response_for_request(publishData: PublishData, response: PublishResponse | ServiceFault): void {
|
|
661
|
+
response.responseHeader.requestHandle = publishData.request.requestHeader.requestHandle;
|
|
662
|
+
publishData.callback(publishData.request, response);
|
|
663
|
+
}
|
|
664
|
+
public _send_valid_response_for_request(publishData: PublishData, response: PublishResponse): void {
|
|
659
665
|
if (doDebug) {
|
|
660
666
|
debugLog("_send_response_for_request ", response.toString());
|
|
661
667
|
}
|
|
662
668
|
_assertValidPublishData(publishData);
|
|
663
669
|
// xx assert(response.responseHeader.requestHandle !== 0,"expecting a valid requestHandle");
|
|
664
670
|
response.results = publishData.results;
|
|
665
|
-
|
|
666
|
-
publishData.callback(publishData.request, response);
|
|
671
|
+
this._send_response_for_request(publishData, response);
|
|
667
672
|
}
|
|
668
673
|
}
|