@nmshd/consumption 2.0.0-alpha.14 → 2.0.0-alpha.15
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/buildInformation.js +4 -4
- package/dist/consumption/ConsumptionController.js +1 -1
- package/dist/consumption/ConsumptionController.js.map +1 -1
- package/dist/consumption/ConsumptionErrors.d.ts +3 -1
- package/dist/consumption/ConsumptionErrors.js +7 -1
- package/dist/consumption/ConsumptionErrors.js.map +1 -1
- package/dist/modules/index.d.ts +2 -0
- package/dist/modules/index.js +2 -0
- package/dist/modules/index.js.map +1 -1
- package/dist/modules/requests/incoming/IncomingRequestsController.js +24 -19
- package/dist/modules/requests/incoming/IncomingRequestsController.js.map +1 -1
- package/dist/modules/requests/itemProcessors/AbstractRequestItemProcessor.d.ts +19 -0
- package/dist/modules/requests/itemProcessors/AbstractRequestItemProcessor.js +10 -0
- package/dist/modules/requests/itemProcessors/AbstractRequestItemProcessor.js.map +1 -0
- package/dist/modules/requests/itemProcessors/GenericRequestItemProcessor.d.ts +10 -9
- package/dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js +10 -8
- package/dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js.map +1 -1
- package/dist/modules/requests/itemProcessors/IRequestItemProcessor.d.ts +7 -6
- package/dist/modules/requests/itemProcessors/ProcessorConstructor.d.ts +2 -1
- package/dist/modules/requests/itemProcessors/RequestItemProcessorRegistry.d.ts +3 -1
- package/dist/modules/requests/itemProcessors/RequestItemProcessorRegistry.js +3 -2
- package/dist/modules/requests/itemProcessors/RequestItemProcessorRegistry.js.map +1 -1
- package/dist/modules/requests/itemProcessors/ValidationResult.d.ts +4 -4
- package/dist/modules/requests/itemProcessors/ValidationResult.js +6 -6
- package/dist/modules/requests/itemProcessors/ValidationResult.js.map +1 -1
- package/dist/modules/requests/itemProcessors/readAttribute/AcceptReadAttributeRequestItemParameters.d.ts +10 -0
- package/dist/modules/requests/itemProcessors/readAttribute/AcceptReadAttributeRequestItemParameters.js +29 -0
- package/dist/modules/requests/itemProcessors/readAttribute/AcceptReadAttributeRequestItemParameters.js.map +1 -0
- package/dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.d.ts +10 -0
- package/dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.js +48 -0
- package/dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.js.map +1 -0
- package/dist/modules/requests/outgoing/OutgoingRequestsController.js +10 -10
- package/dist/modules/requests/outgoing/OutgoingRequestsController.js.map +1 -1
- package/lib-web/nmshd.consumption.js +185 -52
- package/lib-web/nmshd.consumption.js.map +1 -1
- package/lib-web/nmshd.consumption.min.js +1 -1
- package/lib-web/nmshd.consumption.min.js.map +1 -1
- package/package.json +6 -6
package/dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.js
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ReadAttributeRequestItemProcessor = void 0;
|
|
4
|
+
const content_1 = require("@nmshd/content");
|
|
5
|
+
const transport_1 = require("@nmshd/transport");
|
|
6
|
+
const consumption_1 = require("../../../../consumption");
|
|
7
|
+
const ConsumptionAttribute_1 = require("../../../attributes/local/ConsumptionAttribute");
|
|
8
|
+
const GenericRequestItemProcessor_1 = require("../GenericRequestItemProcessor");
|
|
9
|
+
const ValidationResult_1 = require("../ValidationResult");
|
|
10
|
+
const AcceptReadAttributeRequestItemParameters_1 = require("./AcceptReadAttributeRequestItemParameters");
|
|
11
|
+
class ReadAttributeRequestItemProcessor extends GenericRequestItemProcessor_1.GenericRequestItemProcessor {
|
|
12
|
+
async canAccept(_requestItem, params, request) {
|
|
13
|
+
const parsedParams = AcceptReadAttributeRequestItemParameters_1.AcceptReadAttributeRequestItemParameters.from(params);
|
|
14
|
+
const attribute = await this.consumptionController.attributes.getConsumptionAttribute(parsedParams.attributeId);
|
|
15
|
+
if (!attribute) {
|
|
16
|
+
return ValidationResult_1.ValidationResult.error(transport_1.TransportErrors.general.recordNotFound(ConsumptionAttribute_1.ConsumptionAttribute, request.id.toString()));
|
|
17
|
+
}
|
|
18
|
+
if (!this.consumptionController.accountController.identity.isMe(attribute.content.owner)) {
|
|
19
|
+
return ValidationResult_1.ValidationResult.error(consumption_1.ConsumptionErrors.requests.canOnlyShareOwnAttributes());
|
|
20
|
+
}
|
|
21
|
+
return ValidationResult_1.ValidationResult.success();
|
|
22
|
+
}
|
|
23
|
+
async accept(_requestItem, params, request) {
|
|
24
|
+
const consumptionAttribute = await this.consumptionController.attributes.createSharedConsumptionAttributeCopy({
|
|
25
|
+
attributeId: transport_1.CoreId.from(params.attributeId),
|
|
26
|
+
peer: transport_1.CoreAddress.from(request.peer),
|
|
27
|
+
requestReference: transport_1.CoreId.from(request.id)
|
|
28
|
+
});
|
|
29
|
+
return content_1.ReadAttributeAcceptResponseItem.from({
|
|
30
|
+
result: content_1.ResponseItemResult.Accepted,
|
|
31
|
+
attributeId: consumptionAttribute.id,
|
|
32
|
+
attribute: consumptionAttribute.content
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
async applyIncomingResponseItem(responseItem, _requestItem, request) {
|
|
36
|
+
if (!(responseItem instanceof content_1.ReadAttributeAcceptResponseItem)) {
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
await this.consumptionController.attributes.createPeerConsumptionAttribute({
|
|
40
|
+
id: responseItem.attributeId,
|
|
41
|
+
content: responseItem.attribute,
|
|
42
|
+
peer: request.peer,
|
|
43
|
+
requestReference: request.id
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
exports.ReadAttributeRequestItemProcessor = ReadAttributeRequestItemProcessor;
|
|
48
|
+
//# sourceMappingURL=ReadAttributeRequestItemProcessor.js.map
|
package/dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReadAttributeRequestItemProcessor.js","sourceRoot":"","sources":["../../../../../src/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.ts"],"names":[],"mappings":";;;AAAA,4CAKuB;AACvB,gDAAuE;AACvE,yDAA2D;AAC3D,yFAAqF;AAErF,gFAA4E;AAC5E,0DAAsD;AACtD,yGAGmD;AAEnD,MAAa,iCAAkC,SAAQ,yDAGtD;IACmB,KAAK,CAAC,SAAS,CAC3B,YAAsC,EACtC,MAAoD,EACpD,OAA2B;QAE3B,MAAM,YAAY,GACd,mFAAwC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAEzD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,uBAAuB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAA;QAE/G,IAAI,CAAC,SAAS,EAAE;YACZ,OAAO,mCAAgB,CAAC,KAAK,CACzB,2BAAe,CAAC,OAAO,CAAC,cAAc,CAAC,2CAAoB,EAAE,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CACtF,CAAA;SACJ;QAED,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACtF,OAAO,mCAAgB,CAAC,KAAK,CAAC,+BAAiB,CAAC,QAAQ,CAAC,yBAAyB,EAAE,CAAC,CAAA;SACxF;QACD,OAAO,mCAAgB,CAAC,OAAO,EAAE,CAAA;IACrC,CAAC;IAEe,KAAK,CAAC,MAAM,CACxB,YAAsC,EACtC,MAAoD,EACpD,OAA2B;QAE3B,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,oCAAoC,CAAC;YAC1G,WAAW,EAAE,kBAAM,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;YAC5C,IAAI,EAAE,uBAAW,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YACpC,gBAAgB,EAAE,kBAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;SAC5C,CAAC,CAAA;QAEF,OAAO,yCAA+B,CAAC,IAAI,CAAC;YACxC,MAAM,EAAE,4BAAkB,CAAC,QAAQ;YACnC,WAAW,EAAE,oBAAoB,CAAC,EAAE;YACpC,SAAS,EAAE,oBAAoB,CAAC,OAAO;SAC1C,CAAC,CAAA;IACN,CAAC;IAEe,KAAK,CAAC,yBAAyB,CAC3C,YAAkE,EAClE,YAAsC,EACtC,OAA2B;QAE3B,IAAI,CAAC,CAAC,YAAY,YAAY,yCAA+B,CAAC,EAAE;YAC5D,OAAM;SACT;QAED,MAAM,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,8BAA8B,CAAC;YACvE,EAAE,EAAE,YAAY,CAAC,WAAW;YAC5B,OAAO,EAAE,YAAY,CAAC,SAAS;YAC/B,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,gBAAgB,EAAE,OAAO,CAAC,EAAE;SAC/B,CAAC,CAAA;IACN,CAAC;CACJ;AA5DD,8EA4DC"}
|
|
@@ -64,7 +64,7 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
64
64
|
peer
|
|
65
65
|
});
|
|
66
66
|
if (canCreateResult.isError()) {
|
|
67
|
-
throw
|
|
67
|
+
throw canCreateResult.error;
|
|
68
68
|
}
|
|
69
69
|
const consumptionRequest = ConsumptionRequest_1.ConsumptionRequest.from({
|
|
70
70
|
id: id,
|
|
@@ -136,9 +136,9 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
136
136
|
this.assertRequestStatus(request, ConsumptionRequestStatus_1.ConsumptionRequestStatus.Open);
|
|
137
137
|
const canComplete = await this.canComplete(request, receivedResponse);
|
|
138
138
|
if (canComplete.isError()) {
|
|
139
|
-
throw
|
|
139
|
+
throw canComplete.error;
|
|
140
140
|
}
|
|
141
|
-
await this.applyItems(request.content.items, receivedResponse.items);
|
|
141
|
+
await this.applyItems(request.content.items, receivedResponse.items, request);
|
|
142
142
|
let responseSource;
|
|
143
143
|
if (responseSourceObject instanceof transport_1.Message) {
|
|
144
144
|
responseSource = "Message";
|
|
@@ -165,7 +165,7 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
165
165
|
if (requestItem instanceof content_1.RequestItem) {
|
|
166
166
|
const responseItem = receivedResponse.items[i];
|
|
167
167
|
const processor = this.processorRegistry.getProcessorForItem(requestItem);
|
|
168
|
-
const canApplyItem = await processor.canApplyIncomingResponseItem(responseItem, requestItem);
|
|
168
|
+
const canApplyItem = await processor.canApplyIncomingResponseItem(responseItem, requestItem, request);
|
|
169
169
|
if (canApplyItem.isError()) {
|
|
170
170
|
return canApplyItem;
|
|
171
171
|
}
|
|
@@ -176,7 +176,7 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
176
176
|
const groupRequestItem = requestItem.items[j];
|
|
177
177
|
const groupResponseItem = responseGroup.items[j];
|
|
178
178
|
const processor = this.processorRegistry.getProcessorForItem(groupRequestItem);
|
|
179
|
-
const canApplyItem = await processor.canApplyIncomingResponseItem(groupResponseItem, groupRequestItem);
|
|
179
|
+
const canApplyItem = await processor.canApplyIncomingResponseItem(groupResponseItem, groupRequestItem, request);
|
|
180
180
|
if (canApplyItem.isError()) {
|
|
181
181
|
return canApplyItem;
|
|
182
182
|
}
|
|
@@ -185,22 +185,22 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
185
185
|
}
|
|
186
186
|
return ValidationResult_1.ValidationResult.success();
|
|
187
187
|
}
|
|
188
|
-
async applyItems(requestItems, responseItems) {
|
|
188
|
+
async applyItems(requestItems, responseItems, request) {
|
|
189
189
|
for (let i = 0; i < responseItems.length; i++) {
|
|
190
190
|
const requestItem = requestItems[i];
|
|
191
191
|
if (requestItem instanceof content_1.RequestItem) {
|
|
192
192
|
const responseItem = responseItems[i];
|
|
193
|
-
await this.applyItem(requestItem, responseItem);
|
|
193
|
+
await this.applyItem(requestItem, responseItem, request);
|
|
194
194
|
}
|
|
195
195
|
else {
|
|
196
196
|
const responseItemGroup = responseItems[i];
|
|
197
|
-
await this.applyItems(requestItem.items, responseItemGroup.items);
|
|
197
|
+
await this.applyItems(requestItem.items, responseItemGroup.items, request);
|
|
198
198
|
}
|
|
199
199
|
}
|
|
200
200
|
}
|
|
201
|
-
async applyItem(requestItem, responseItem) {
|
|
201
|
+
async applyItem(requestItem, responseItem, request) {
|
|
202
202
|
const processor = this.processorRegistry.getProcessorForItem(requestItem);
|
|
203
|
-
await processor.applyIncomingResponseItem(responseItem, requestItem);
|
|
203
|
+
await processor.applyIncomingResponseItem(responseItem, requestItem, request);
|
|
204
204
|
}
|
|
205
205
|
async getOutgoingRequests(query) {
|
|
206
206
|
query ??= {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OutgoingRequestsController.js","sourceRoot":"","sources":["../../../../src/modules/requests/outgoing/OutgoingRequestsController.ts"],"names":[],"mappings":";;;AAAA,4CASuB;AACvB,gDAUyB;AACzB,sDAA2G;AAG3G,yEAAqE;AACrE,oEAA0F;AAC1F,gFAA4E;AAC5E,sEAAkE;AAClE,mHAGoE;AACpE,wLAG6G;AAC7G,6GAGgE;AAChE,uGAG4D;AAE5D,MAAa,0BAA2B,SAAQ,uCAAyB;IACrE,YACqB,mBAA2C,EAC3C,iBAA+C,EAChE,MAA6B;QAE7B,KAAK,CAAC,uCAAyB,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAA;QAJ1C,wBAAmB,GAAnB,mBAAmB,CAAwB;QAC3C,sBAAiB,GAAjB,iBAAiB,CAA8B;IAIpE,CAAC;IAEM,KAAK,CAAC,SAAS,CAAC,MAAwC;QAC3D,MAAM,YAAY,GAAG,iEAA+B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAEjE,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAE1E,MAAM,MAAM,GAAG,mCAAgB,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA;QAEvD,OAAO,MAAM,CAAA;IACjB,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,KAAyC;QAClE,MAAM,OAAO,GAAuB,EAAE,CAAA;QAEtC,KAAK,MAAM,WAAW,IAAI,KAAK,EAAE;YAC7B,IAAI,WAAW,YAAY,qBAAW,EAAE;gBACpC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;gBAC3D,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;aAC9B;iBAAM;gBACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAA;gBACzD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;aACvB;SACJ;QAED,OAAO,OAAO,CAAA;IAClB,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,WAAwB;QAChD,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAA;QACzE,OAAO,MAAM,SAAS,CAAC,4BAA4B,CAAC,WAAW,CAAC,CAAA;IACpE,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,WAA6B;QAC1D,MAAM,YAAY,GAAuB,EAAE,CAAA;QAE3C,KAAK,MAAM,gBAAgB,IAAI,WAAW,CAAC,KAAK,EAAE;YAC9C,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAA;YAChE,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;SACnC;QAED,MAAM,MAAM,GAAG,mCAAgB,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA;QAEvD,OAAO,MAAM,CAAA;IACjB,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,MAAwC;QACxD,MAAM,YAAY,GAAG,iEAA+B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAEjE,MAAM,EAAE,GAAG,MAAM,4BAAc,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAA;QAClD,YAAY,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAA;QAC5B,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,CAAA;QAE1F,OAAO,kBAAkB,CAAA;IAC7B,CAAC;IAEO,KAAK,CAAC,OAAO,CAAC,EAAU,EAAE,OAAgB,EAAE,IAAiB;QACjE,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC;YACzC,OAAO;YACP,IAAI;SACP,CAAC,CAAA;QAEF,IAAI,eAAe,CAAC,OAAO,EAAE,EAAE;YAC3B,MAAM,
|
|
1
|
+
{"version":3,"file":"OutgoingRequestsController.js","sourceRoot":"","sources":["../../../../src/modules/requests/outgoing/OutgoingRequestsController.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,10 +17,10 @@ const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
|
17
17
|
const crypto_1 = __webpack_require__(/*! @nmshd/crypto */ "@nmshd/crypto");
|
|
18
18
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
19
19
|
exports.buildInformation = {
|
|
20
|
-
version: "2.0.0-alpha.
|
|
21
|
-
build: "
|
|
22
|
-
date: "2022-05-
|
|
23
|
-
commit: "
|
|
20
|
+
version: "2.0.0-alpha.15",
|
|
21
|
+
build: "33",
|
|
22
|
+
date: "2022-05-23T13:29:19+00:00",
|
|
23
|
+
commit: "2e8f8676fdea5fac8b3952fbb65d4975bf85f5ea",
|
|
24
24
|
dependencies: {},
|
|
25
25
|
libraries: {
|
|
26
26
|
transport: transport_1.buildInformation,
|
|
@@ -103,7 +103,7 @@ class ConsumptionController {
|
|
|
103
103
|
async init(requestItemProcessors = []) {
|
|
104
104
|
this._attributes = await new modules_1.ConsumptionAttributesController(this).init();
|
|
105
105
|
this._drafts = await new modules_1.DraftsController(this).init();
|
|
106
|
-
const processorRegistry = new modules_1.RequestItemProcessorRegistry(requestItemProcessors);
|
|
106
|
+
const processorRegistry = new modules_1.RequestItemProcessorRegistry(this, requestItemProcessors);
|
|
107
107
|
this._outgoingRequests = await new modules_1.OutgoingRequestsController(await this.accountController.getSynchronizedCollection("Requests"), processorRegistry, this).init();
|
|
108
108
|
this._incomingRequests = await new IncomingRequestsController_1.IncomingRequestsController(await this.accountController.getSynchronizedCollection("Requests"), processorRegistry, this).init();
|
|
109
109
|
this._settings = await new modules_1.SettingsController(this).init();
|
|
@@ -161,9 +161,15 @@ class Attributes {
|
|
|
161
161
|
}
|
|
162
162
|
}
|
|
163
163
|
class Requests {
|
|
164
|
-
|
|
164
|
+
requestExists(id) {
|
|
165
165
|
return new transport_1.CoreError("error.consumption.requests.requestExists", `Request with id ${id} already exists and can't be created.`);
|
|
166
166
|
}
|
|
167
|
+
unexpectedErrorDuringRequestItemProcessing(error) {
|
|
168
|
+
return new transport_1.CoreError("error.consumption.requests.unexpectedErrorDuringRequestItemProcessing", error instanceof Error ? error.message : "Unknown error: '${JSON.stringify(e)'");
|
|
169
|
+
}
|
|
170
|
+
canOnlyShareOwnAttributes() {
|
|
171
|
+
return new transport_1.CoreError("error.consumption.requests.canOnlyShareOwnAttributes", "The given Attribute belongs to someone else. You can only share own Attributes.");
|
|
172
|
+
}
|
|
167
173
|
}
|
|
168
174
|
class RelationshipInfo {
|
|
169
175
|
relationshipInfoExists(relationshipId) {
|
|
@@ -929,6 +935,8 @@ __exportStar(__webpack_require__(/*! ./requests/incoming/received/ReceivedIncomi
|
|
|
929
935
|
__exportStar(__webpack_require__(/*! ./requests/incoming/requireManualDecision/RequireManualDecisionOfIncomingRequestParameters */ "./dist/modules/requests/incoming/requireManualDecision/RequireManualDecisionOfIncomingRequestParameters.js"), exports);
|
|
930
936
|
__exportStar(__webpack_require__(/*! ./requests/itemProcessors/GenericRequestItemProcessor */ "./dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js"), exports);
|
|
931
937
|
__exportStar(__webpack_require__(/*! ./requests/itemProcessors/ProcessorConstructor */ "./dist/modules/requests/itemProcessors/ProcessorConstructor.js"), exports);
|
|
938
|
+
__exportStar(__webpack_require__(/*! ./requests/itemProcessors/readAttribute/AcceptReadAttributeRequestItemParameters */ "./dist/modules/requests/itemProcessors/readAttribute/AcceptReadAttributeRequestItemParameters.js"), exports);
|
|
939
|
+
__exportStar(__webpack_require__(/*! ./requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor */ "./dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.js"), exports);
|
|
932
940
|
__exportStar(__webpack_require__(/*! ./requests/itemProcessors/RequestItemConstructor */ "./dist/modules/requests/itemProcessors/RequestItemConstructor.js"), exports);
|
|
933
941
|
__exportStar(__webpack_require__(/*! ./requests/itemProcessors/RequestItemProcessorRegistry */ "./dist/modules/requests/itemProcessors/RequestItemProcessorRegistry.js"), exports);
|
|
934
942
|
__exportStar(__webpack_require__(/*! ./requests/itemProcessors/ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js"), exports);
|
|
@@ -1150,35 +1158,40 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
1150
1158
|
throw new Error(validationResult.error.message);
|
|
1151
1159
|
}
|
|
1152
1160
|
this.assertRequestStatus(request, ConsumptionRequestStatus_1.ConsumptionRequestStatus.DecisionRequired, ConsumptionRequestStatus_1.ConsumptionRequestStatus.ManualDecisionRequired);
|
|
1153
|
-
const itemResults = await this.canDecideItems(params.items, request.content.items);
|
|
1161
|
+
const itemResults = await this.canDecideItems(params.items, request.content.items, request);
|
|
1154
1162
|
return ValidationResult_1.ValidationResult.fromItems(itemResults);
|
|
1155
1163
|
}
|
|
1156
|
-
async canDecideGroup(params, requestItemGroup) {
|
|
1157
|
-
const itemResults = await this.canDecideItems(params.items, requestItemGroup.items);
|
|
1164
|
+
async canDecideGroup(params, requestItemGroup, request) {
|
|
1165
|
+
const itemResults = await this.canDecideItems(params.items, requestItemGroup.items, request);
|
|
1158
1166
|
return ValidationResult_1.ValidationResult.fromItems(itemResults);
|
|
1159
1167
|
}
|
|
1160
|
-
async canDecideItems(params, items) {
|
|
1168
|
+
async canDecideItems(params, items, request) {
|
|
1161
1169
|
const validationResults = [];
|
|
1162
1170
|
for (let i = 0; i < params.length; i++) {
|
|
1163
1171
|
const decideItemParams = params[i];
|
|
1164
1172
|
const requestItem = items[i];
|
|
1165
1173
|
if (requestItem instanceof content_1.RequestItemGroup) {
|
|
1166
|
-
const groupResult = await this.canDecideGroup(decideItemParams, requestItem);
|
|
1174
|
+
const groupResult = await this.canDecideGroup(decideItemParams, requestItem, request);
|
|
1167
1175
|
validationResults.push(groupResult);
|
|
1168
1176
|
}
|
|
1169
1177
|
else {
|
|
1170
|
-
const itemResult = await this.canDecideItem(decideItemParams, requestItem);
|
|
1178
|
+
const itemResult = await this.canDecideItem(decideItemParams, requestItem, request);
|
|
1171
1179
|
validationResults.push(itemResult);
|
|
1172
1180
|
}
|
|
1173
1181
|
}
|
|
1174
1182
|
return validationResults;
|
|
1175
1183
|
}
|
|
1176
|
-
async canDecideItem(params, requestItem) {
|
|
1184
|
+
async canDecideItem(params, requestItem, request) {
|
|
1177
1185
|
const processor = this.processorRegistry.getProcessorForItem(requestItem);
|
|
1178
|
-
|
|
1179
|
-
|
|
1186
|
+
try {
|
|
1187
|
+
if (params.accept) {
|
|
1188
|
+
return await processor.canAccept(requestItem, params, request);
|
|
1189
|
+
}
|
|
1190
|
+
return await processor.canReject(requestItem, params, request);
|
|
1191
|
+
}
|
|
1192
|
+
catch (e) {
|
|
1193
|
+
return ValidationResult_1.ValidationResult.error(consumption_1.ConsumptionErrors.requests.unexpectedErrorDuringRequestItemProcessing(e));
|
|
1180
1194
|
}
|
|
1181
|
-
return await processor.canReject(requestItem, params);
|
|
1182
1195
|
}
|
|
1183
1196
|
async accept(params) {
|
|
1184
1197
|
const canAccept = await this.canAccept(params);
|
|
@@ -1205,7 +1218,7 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
1205
1218
|
}
|
|
1206
1219
|
async createConsumptionResponse(params, request) {
|
|
1207
1220
|
const requestItems = request.content.items;
|
|
1208
|
-
const responseItems = await this.decideItems(params.items, requestItems);
|
|
1221
|
+
const responseItems = await this.decideItems(params.items, requestItems, request);
|
|
1209
1222
|
const response = content_1.Response.from({
|
|
1210
1223
|
result: params.accept ? content_1.ResponseResult.Accepted : content_1.ResponseResult.Rejected,
|
|
1211
1224
|
requestId: request.id,
|
|
@@ -1217,35 +1230,35 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
1217
1230
|
});
|
|
1218
1231
|
return consumptionResponse;
|
|
1219
1232
|
}
|
|
1220
|
-
async decideGroup(groupItemParam, requestItemGroup) {
|
|
1221
|
-
const items = (await this.decideItems(groupItemParam.items, requestItemGroup.items));
|
|
1233
|
+
async decideGroup(groupItemParam, requestItemGroup, request) {
|
|
1234
|
+
const items = (await this.decideItems(groupItemParam.items, requestItemGroup.items, request));
|
|
1222
1235
|
const group = content_1.ResponseItemGroup.from({
|
|
1223
1236
|
items: items,
|
|
1224
1237
|
metadata: requestItemGroup.responseMetadata
|
|
1225
1238
|
});
|
|
1226
1239
|
return group;
|
|
1227
1240
|
}
|
|
1228
|
-
async decideItems(params, requestItems) {
|
|
1241
|
+
async decideItems(params, requestItems, request) {
|
|
1229
1242
|
const responseItems = [];
|
|
1230
1243
|
for (let i = 0; i < params.length; i++) {
|
|
1231
1244
|
const itemParam = params[i];
|
|
1232
1245
|
const item = requestItems[i];
|
|
1233
1246
|
if (item instanceof content_1.RequestItemGroup) {
|
|
1234
|
-
responseItems.push(await this.decideGroup(itemParam, item));
|
|
1247
|
+
responseItems.push(await this.decideGroup(itemParam, item, request));
|
|
1235
1248
|
}
|
|
1236
1249
|
else {
|
|
1237
|
-
responseItems.push(await this.decideItem(itemParam, requestItems[i]));
|
|
1250
|
+
responseItems.push(await this.decideItem(itemParam, requestItems[i], request));
|
|
1238
1251
|
}
|
|
1239
1252
|
}
|
|
1240
1253
|
return responseItems;
|
|
1241
1254
|
}
|
|
1242
|
-
async decideItem(params, requestItem) {
|
|
1255
|
+
async decideItem(params, requestItem, request) {
|
|
1243
1256
|
const processor = this.processorRegistry.getProcessorForItem(requestItem);
|
|
1244
1257
|
try {
|
|
1245
1258
|
if (params.accept) {
|
|
1246
|
-
return await processor.accept(requestItem, params);
|
|
1259
|
+
return await processor.accept(requestItem, params, request);
|
|
1247
1260
|
}
|
|
1248
|
-
return await processor.reject(requestItem, params);
|
|
1261
|
+
return await processor.reject(requestItem, params, request);
|
|
1249
1262
|
}
|
|
1250
1263
|
catch (e) {
|
|
1251
1264
|
let details = "";
|
|
@@ -1602,6 +1615,26 @@ exports.RequireManualDecisionOfIncomingRequestParameters = RequireManualDecision
|
|
|
1602
1615
|
|
|
1603
1616
|
/***/ }),
|
|
1604
1617
|
|
|
1618
|
+
/***/ "./dist/modules/requests/itemProcessors/AbstractRequestItemProcessor.js":
|
|
1619
|
+
/*!******************************************************************************!*\
|
|
1620
|
+
!*** ./dist/modules/requests/itemProcessors/AbstractRequestItemProcessor.js ***!
|
|
1621
|
+
\******************************************************************************/
|
|
1622
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
1623
|
+
|
|
1624
|
+
"use strict";
|
|
1625
|
+
|
|
1626
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1627
|
+
exports.AbstractRequestItemProcessor = void 0;
|
|
1628
|
+
class AbstractRequestItemProcessor {
|
|
1629
|
+
constructor(consumptionController) {
|
|
1630
|
+
this.consumptionController = consumptionController;
|
|
1631
|
+
}
|
|
1632
|
+
}
|
|
1633
|
+
exports.AbstractRequestItemProcessor = AbstractRequestItemProcessor;
|
|
1634
|
+
//# sourceMappingURL=AbstractRequestItemProcessor.js.map
|
|
1635
|
+
|
|
1636
|
+
/***/ }),
|
|
1637
|
+
|
|
1605
1638
|
/***/ "./dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js":
|
|
1606
1639
|
/*!*****************************************************************************!*\
|
|
1607
1640
|
!*** ./dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js ***!
|
|
@@ -1612,37 +1645,39 @@ exports.RequireManualDecisionOfIncomingRequestParameters = RequireManualDecision
|
|
|
1612
1645
|
|
|
1613
1646
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1614
1647
|
exports.GenericRequestItemProcessor = void 0;
|
|
1648
|
+
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
1615
1649
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
1650
|
+
const AbstractRequestItemProcessor_1 = __webpack_require__(/*! ./AbstractRequestItemProcessor */ "./dist/modules/requests/itemProcessors/AbstractRequestItemProcessor.js");
|
|
1616
1651
|
const ValidationResult_1 = __webpack_require__(/*! ./ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js");
|
|
1617
|
-
class GenericRequestItemProcessor {
|
|
1652
|
+
class GenericRequestItemProcessor extends AbstractRequestItemProcessor_1.AbstractRequestItemProcessor {
|
|
1618
1653
|
checkPrerequisitesOfIncomingRequestItem(_requestItem) {
|
|
1619
1654
|
return true;
|
|
1620
1655
|
}
|
|
1621
|
-
canAccept(
|
|
1656
|
+
canAccept(requestItem, params, request) {
|
|
1622
1657
|
return ValidationResult_1.ValidationResult.success();
|
|
1623
1658
|
}
|
|
1624
|
-
canReject(
|
|
1659
|
+
canReject(requestItem, params, request) {
|
|
1625
1660
|
return ValidationResult_1.ValidationResult.success();
|
|
1626
1661
|
}
|
|
1627
|
-
accept(requestItem,
|
|
1662
|
+
accept(requestItem, params, request) {
|
|
1628
1663
|
return content_1.AcceptResponseItem.from({
|
|
1629
1664
|
result: content_1.ResponseItemResult.Accepted,
|
|
1630
1665
|
metadata: requestItem.responseMetadata
|
|
1631
1666
|
});
|
|
1632
1667
|
}
|
|
1633
|
-
reject(requestItem,
|
|
1668
|
+
reject(requestItem, params, request) {
|
|
1634
1669
|
return content_1.RejectResponseItem.from({
|
|
1635
1670
|
result: content_1.ResponseItemResult.Rejected,
|
|
1636
1671
|
metadata: requestItem.responseMetadata
|
|
1637
1672
|
});
|
|
1638
1673
|
}
|
|
1639
|
-
|
|
1674
|
+
canCreateOutgoingRequestItem(requestItem) {
|
|
1640
1675
|
return ValidationResult_1.ValidationResult.success();
|
|
1641
1676
|
}
|
|
1642
|
-
|
|
1677
|
+
canApplyIncomingResponseItem(responseItem, requestItem, request) {
|
|
1643
1678
|
return ValidationResult_1.ValidationResult.success();
|
|
1644
1679
|
}
|
|
1645
|
-
applyIncomingResponseItem(
|
|
1680
|
+
applyIncomingResponseItem(responseItem, requestItem, request) {
|
|
1646
1681
|
// do nothing
|
|
1647
1682
|
}
|
|
1648
1683
|
}
|
|
@@ -1688,7 +1723,8 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
1688
1723
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1689
1724
|
exports.RequestItemProcessorRegistry = void 0;
|
|
1690
1725
|
class RequestItemProcessorRegistry {
|
|
1691
|
-
constructor(processors = []) {
|
|
1726
|
+
constructor(consumptionController, processors = []) {
|
|
1727
|
+
this.consumptionController = consumptionController;
|
|
1692
1728
|
this.registry = {};
|
|
1693
1729
|
for (const { itemConstructor, processorConstructor } of processors) {
|
|
1694
1730
|
this.registerProcessor(processorConstructor, itemConstructor);
|
|
@@ -1708,7 +1744,7 @@ class RequestItemProcessorRegistry {
|
|
|
1708
1744
|
if (!constructor) {
|
|
1709
1745
|
throw new Error(`There was no processor registered for '${item.constructor.name}'.`);
|
|
1710
1746
|
}
|
|
1711
|
-
return new constructor();
|
|
1747
|
+
return new constructor(this.consumptionController);
|
|
1712
1748
|
}
|
|
1713
1749
|
}
|
|
1714
1750
|
exports.RequestItemProcessorRegistry = RequestItemProcessorRegistry;
|
|
@@ -1720,12 +1756,13 @@ exports.RequestItemProcessorRegistry = RequestItemProcessorRegistry;
|
|
|
1720
1756
|
/*!******************************************************************!*\
|
|
1721
1757
|
!*** ./dist/modules/requests/itemProcessors/ValidationResult.js ***!
|
|
1722
1758
|
\******************************************************************/
|
|
1723
|
-
/***/ ((__unused_webpack_module, exports) => {
|
|
1759
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
1724
1760
|
|
|
1725
1761
|
"use strict";
|
|
1726
1762
|
|
|
1727
1763
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1728
1764
|
exports.ErrorValidationResult = exports.SuccessfulValidatonResult = exports.ValidationResult = void 0;
|
|
1765
|
+
const ts_utils_1 = __webpack_require__(/*! @js-soft/ts-utils */ "./node_modules/@js-soft/ts-utils/dist/index.js");
|
|
1729
1766
|
class ValidationResult {
|
|
1730
1767
|
constructor(items) {
|
|
1731
1768
|
this.items = items;
|
|
@@ -1739,12 +1776,12 @@ class ValidationResult {
|
|
|
1739
1776
|
static success(items = []) {
|
|
1740
1777
|
return new SuccessfulValidatonResult(items);
|
|
1741
1778
|
}
|
|
1742
|
-
static error(
|
|
1743
|
-
return new ErrorValidationResult(
|
|
1779
|
+
static error(error, items = []) {
|
|
1780
|
+
return new ErrorValidationResult(error, items);
|
|
1744
1781
|
}
|
|
1745
1782
|
static fromItems(items) {
|
|
1746
1783
|
return items.some((r) => r.isError())
|
|
1747
|
-
? ValidationResult.error("inheritedFromItem", "Some child items have errors.", items)
|
|
1784
|
+
? ValidationResult.error(new ts_utils_1.ApplicationError("inheritedFromItem", "Some child items have errors."), items)
|
|
1748
1785
|
: ValidationResult.success(items);
|
|
1749
1786
|
}
|
|
1750
1787
|
}
|
|
@@ -1756,10 +1793,9 @@ class SuccessfulValidatonResult extends ValidationResult {
|
|
|
1756
1793
|
}
|
|
1757
1794
|
exports.SuccessfulValidatonResult = SuccessfulValidatonResult;
|
|
1758
1795
|
class ErrorValidationResult extends ValidationResult {
|
|
1759
|
-
constructor(
|
|
1796
|
+
constructor(error, items) {
|
|
1760
1797
|
super(items);
|
|
1761
|
-
this.
|
|
1762
|
-
this.message = message;
|
|
1798
|
+
this.error = error;
|
|
1763
1799
|
}
|
|
1764
1800
|
}
|
|
1765
1801
|
exports.ErrorValidationResult = ErrorValidationResult;
|
|
@@ -1767,6 +1803,103 @@ exports.ErrorValidationResult = ErrorValidationResult;
|
|
|
1767
1803
|
|
|
1768
1804
|
/***/ }),
|
|
1769
1805
|
|
|
1806
|
+
/***/ "./dist/modules/requests/itemProcessors/readAttribute/AcceptReadAttributeRequestItemParameters.js":
|
|
1807
|
+
/*!********************************************************************************************************!*\
|
|
1808
|
+
!*** ./dist/modules/requests/itemProcessors/readAttribute/AcceptReadAttributeRequestItemParameters.js ***!
|
|
1809
|
+
\********************************************************************************************************/
|
|
1810
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
1811
|
+
|
|
1812
|
+
"use strict";
|
|
1813
|
+
|
|
1814
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
1815
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1816
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
1817
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1818
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1819
|
+
};
|
|
1820
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
1821
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
1822
|
+
};
|
|
1823
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1824
|
+
exports.AcceptReadAttributeRequestItemParameters = void 0;
|
|
1825
|
+
const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-serval");
|
|
1826
|
+
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
1827
|
+
let AcceptReadAttributeRequestItemParameters = class AcceptReadAttributeRequestItemParameters extends ts_serval_1.Serializable {
|
|
1828
|
+
static from(value) {
|
|
1829
|
+
return this.fromAny(value);
|
|
1830
|
+
}
|
|
1831
|
+
};
|
|
1832
|
+
__decorate([
|
|
1833
|
+
(0, ts_serval_1.serialize)(),
|
|
1834
|
+
(0, ts_serval_1.validate)(),
|
|
1835
|
+
__metadata("design:type", transport_1.CoreId)
|
|
1836
|
+
], AcceptReadAttributeRequestItemParameters.prototype, "attributeId", void 0);
|
|
1837
|
+
AcceptReadAttributeRequestItemParameters = __decorate([
|
|
1838
|
+
(0, ts_serval_1.type)("AcceptReadAttributeRequestItemParameters")
|
|
1839
|
+
], AcceptReadAttributeRequestItemParameters);
|
|
1840
|
+
exports.AcceptReadAttributeRequestItemParameters = AcceptReadAttributeRequestItemParameters;
|
|
1841
|
+
//# sourceMappingURL=AcceptReadAttributeRequestItemParameters.js.map
|
|
1842
|
+
|
|
1843
|
+
/***/ }),
|
|
1844
|
+
|
|
1845
|
+
/***/ "./dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.js":
|
|
1846
|
+
/*!*************************************************************************************************!*\
|
|
1847
|
+
!*** ./dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.js ***!
|
|
1848
|
+
\*************************************************************************************************/
|
|
1849
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
1850
|
+
|
|
1851
|
+
"use strict";
|
|
1852
|
+
|
|
1853
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1854
|
+
exports.ReadAttributeRequestItemProcessor = void 0;
|
|
1855
|
+
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
1856
|
+
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
1857
|
+
const consumption_1 = __webpack_require__(/*! ../../../../consumption */ "./dist/consumption/index.js");
|
|
1858
|
+
const ConsumptionAttribute_1 = __webpack_require__(/*! ../../../attributes/local/ConsumptionAttribute */ "./dist/modules/attributes/local/ConsumptionAttribute.js");
|
|
1859
|
+
const GenericRequestItemProcessor_1 = __webpack_require__(/*! ../GenericRequestItemProcessor */ "./dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js");
|
|
1860
|
+
const ValidationResult_1 = __webpack_require__(/*! ../ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js");
|
|
1861
|
+
const AcceptReadAttributeRequestItemParameters_1 = __webpack_require__(/*! ./AcceptReadAttributeRequestItemParameters */ "./dist/modules/requests/itemProcessors/readAttribute/AcceptReadAttributeRequestItemParameters.js");
|
|
1862
|
+
class ReadAttributeRequestItemProcessor extends GenericRequestItemProcessor_1.GenericRequestItemProcessor {
|
|
1863
|
+
async canAccept(_requestItem, params, request) {
|
|
1864
|
+
const parsedParams = AcceptReadAttributeRequestItemParameters_1.AcceptReadAttributeRequestItemParameters.from(params);
|
|
1865
|
+
const attribute = await this.consumptionController.attributes.getConsumptionAttribute(parsedParams.attributeId);
|
|
1866
|
+
if (!attribute) {
|
|
1867
|
+
return ValidationResult_1.ValidationResult.error(transport_1.TransportErrors.general.recordNotFound(ConsumptionAttribute_1.ConsumptionAttribute, request.id.toString()));
|
|
1868
|
+
}
|
|
1869
|
+
if (!this.consumptionController.accountController.identity.isMe(attribute.content.owner)) {
|
|
1870
|
+
return ValidationResult_1.ValidationResult.error(consumption_1.ConsumptionErrors.requests.canOnlyShareOwnAttributes());
|
|
1871
|
+
}
|
|
1872
|
+
return ValidationResult_1.ValidationResult.success();
|
|
1873
|
+
}
|
|
1874
|
+
async accept(_requestItem, params, request) {
|
|
1875
|
+
const consumptionAttribute = await this.consumptionController.attributes.createSharedConsumptionAttributeCopy({
|
|
1876
|
+
attributeId: transport_1.CoreId.from(params.attributeId),
|
|
1877
|
+
peer: transport_1.CoreAddress.from(request.peer),
|
|
1878
|
+
requestReference: transport_1.CoreId.from(request.id)
|
|
1879
|
+
});
|
|
1880
|
+
return content_1.ReadAttributeAcceptResponseItem.from({
|
|
1881
|
+
result: content_1.ResponseItemResult.Accepted,
|
|
1882
|
+
attributeId: consumptionAttribute.id,
|
|
1883
|
+
attribute: consumptionAttribute.content
|
|
1884
|
+
});
|
|
1885
|
+
}
|
|
1886
|
+
async applyIncomingResponseItem(responseItem, _requestItem, request) {
|
|
1887
|
+
if (!(responseItem instanceof content_1.ReadAttributeAcceptResponseItem)) {
|
|
1888
|
+
return;
|
|
1889
|
+
}
|
|
1890
|
+
await this.consumptionController.attributes.createPeerConsumptionAttribute({
|
|
1891
|
+
id: responseItem.attributeId,
|
|
1892
|
+
content: responseItem.attribute,
|
|
1893
|
+
peer: request.peer,
|
|
1894
|
+
requestReference: request.id
|
|
1895
|
+
});
|
|
1896
|
+
}
|
|
1897
|
+
}
|
|
1898
|
+
exports.ReadAttributeRequestItemProcessor = ReadAttributeRequestItemProcessor;
|
|
1899
|
+
//# sourceMappingURL=ReadAttributeRequestItemProcessor.js.map
|
|
1900
|
+
|
|
1901
|
+
/***/ }),
|
|
1902
|
+
|
|
1770
1903
|
/***/ "./dist/modules/requests/local/ConsumptionRequest.js":
|
|
1771
1904
|
/*!***********************************************************!*\
|
|
1772
1905
|
!*** ./dist/modules/requests/local/ConsumptionRequest.js ***!
|
|
@@ -2105,7 +2238,7 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
2105
2238
|
peer
|
|
2106
2239
|
});
|
|
2107
2240
|
if (canCreateResult.isError()) {
|
|
2108
|
-
throw
|
|
2241
|
+
throw canCreateResult.error;
|
|
2109
2242
|
}
|
|
2110
2243
|
const consumptionRequest = ConsumptionRequest_1.ConsumptionRequest.from({
|
|
2111
2244
|
id: id,
|
|
@@ -2177,9 +2310,9 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
2177
2310
|
this.assertRequestStatus(request, ConsumptionRequestStatus_1.ConsumptionRequestStatus.Open);
|
|
2178
2311
|
const canComplete = await this.canComplete(request, receivedResponse);
|
|
2179
2312
|
if (canComplete.isError()) {
|
|
2180
|
-
throw
|
|
2313
|
+
throw canComplete.error;
|
|
2181
2314
|
}
|
|
2182
|
-
await this.applyItems(request.content.items, receivedResponse.items);
|
|
2315
|
+
await this.applyItems(request.content.items, receivedResponse.items, request);
|
|
2183
2316
|
let responseSource;
|
|
2184
2317
|
if (responseSourceObject instanceof transport_1.Message) {
|
|
2185
2318
|
responseSource = "Message";
|
|
@@ -2206,7 +2339,7 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
2206
2339
|
if (requestItem instanceof content_1.RequestItem) {
|
|
2207
2340
|
const responseItem = receivedResponse.items[i];
|
|
2208
2341
|
const processor = this.processorRegistry.getProcessorForItem(requestItem);
|
|
2209
|
-
const canApplyItem = await processor.canApplyIncomingResponseItem(responseItem, requestItem);
|
|
2342
|
+
const canApplyItem = await processor.canApplyIncomingResponseItem(responseItem, requestItem, request);
|
|
2210
2343
|
if (canApplyItem.isError()) {
|
|
2211
2344
|
return canApplyItem;
|
|
2212
2345
|
}
|
|
@@ -2217,7 +2350,7 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
2217
2350
|
const groupRequestItem = requestItem.items[j];
|
|
2218
2351
|
const groupResponseItem = responseGroup.items[j];
|
|
2219
2352
|
const processor = this.processorRegistry.getProcessorForItem(groupRequestItem);
|
|
2220
|
-
const canApplyItem = await processor.canApplyIncomingResponseItem(groupResponseItem, groupRequestItem);
|
|
2353
|
+
const canApplyItem = await processor.canApplyIncomingResponseItem(groupResponseItem, groupRequestItem, request);
|
|
2221
2354
|
if (canApplyItem.isError()) {
|
|
2222
2355
|
return canApplyItem;
|
|
2223
2356
|
}
|
|
@@ -2226,22 +2359,22 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
2226
2359
|
}
|
|
2227
2360
|
return ValidationResult_1.ValidationResult.success();
|
|
2228
2361
|
}
|
|
2229
|
-
async applyItems(requestItems, responseItems) {
|
|
2362
|
+
async applyItems(requestItems, responseItems, request) {
|
|
2230
2363
|
for (let i = 0; i < responseItems.length; i++) {
|
|
2231
2364
|
const requestItem = requestItems[i];
|
|
2232
2365
|
if (requestItem instanceof content_1.RequestItem) {
|
|
2233
2366
|
const responseItem = responseItems[i];
|
|
2234
|
-
await this.applyItem(requestItem, responseItem);
|
|
2367
|
+
await this.applyItem(requestItem, responseItem, request);
|
|
2235
2368
|
}
|
|
2236
2369
|
else {
|
|
2237
2370
|
const responseItemGroup = responseItems[i];
|
|
2238
|
-
await this.applyItems(requestItem.items, responseItemGroup.items);
|
|
2371
|
+
await this.applyItems(requestItem.items, responseItemGroup.items, request);
|
|
2239
2372
|
}
|
|
2240
2373
|
}
|
|
2241
2374
|
}
|
|
2242
|
-
async applyItem(requestItem, responseItem) {
|
|
2375
|
+
async applyItem(requestItem, responseItem, request) {
|
|
2243
2376
|
const processor = this.processorRegistry.getProcessorForItem(requestItem);
|
|
2244
|
-
await processor.applyIncomingResponseItem(responseItem, requestItem);
|
|
2377
|
+
await processor.applyIncomingResponseItem(responseItem, requestItem, request);
|
|
2245
2378
|
}
|
|
2246
2379
|
async getOutgoingRequests(query) {
|
|
2247
2380
|
query ??= {};
|