@nmshd/consumption 2.0.0-beta.1 → 2.0.0-beta.12
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 +7 -5
- package/dist/consumption/ConsumptionController.js.map +1 -1
- package/dist/consumption/ConsumptionErrors.d.ts +11 -0
- package/dist/consumption/ConsumptionErrors.js +28 -1
- package/dist/consumption/ConsumptionErrors.js.map +1 -1
- package/dist/modules/attributes/LocalAttributesController.d.ts +7 -2
- package/dist/modules/attributes/LocalAttributesController.js +12 -1
- package/dist/modules/attributes/LocalAttributesController.js.map +1 -1
- package/dist/modules/attributes/events/AttributeCreatedEvent.d.ts +6 -0
- package/dist/modules/attributes/events/AttributeCreatedEvent.js +12 -0
- package/dist/modules/attributes/events/AttributeCreatedEvent.js.map +1 -0
- package/dist/modules/attributes/events/AttributeDeletedEvent.d.ts +6 -0
- package/dist/modules/attributes/events/AttributeDeletedEvent.js +12 -0
- package/dist/modules/attributes/events/AttributeDeletedEvent.js.map +1 -0
- package/dist/modules/attributes/events/AttributeSucceededEvent.d.ts +6 -0
- package/dist/modules/attributes/events/AttributeSucceededEvent.js +12 -0
- package/dist/modules/attributes/events/AttributeSucceededEvent.js.map +1 -0
- package/dist/modules/attributes/events/AttributeUpdatedEvent.d.ts +6 -0
- package/dist/modules/attributes/events/AttributeUpdatedEvent.js +12 -0
- package/dist/modules/attributes/events/AttributeUpdatedEvent.js.map +1 -0
- package/dist/modules/attributes/events/SharedAttributeCopyCreatedEvent.d.ts +6 -0
- package/dist/modules/attributes/events/SharedAttributeCopyCreatedEvent.js +12 -0
- package/dist/modules/attributes/events/SharedAttributeCopyCreatedEvent.js.map +1 -0
- package/dist/modules/attributes/events/index.d.ts +5 -0
- package/dist/modules/attributes/events/index.js +22 -0
- package/dist/modules/attributes/events/index.js.map +1 -0
- package/dist/modules/attributes/index.d.ts +9 -0
- package/dist/modules/attributes/index.js +26 -0
- package/dist/modules/attributes/index.js.map +1 -0
- package/dist/modules/attributes/local/QueryTranslator.js +0 -5
- package/dist/modules/attributes/local/QueryTranslator.js.map +1 -1
- package/dist/modules/drafts/index.d.ts +2 -0
- package/dist/modules/drafts/index.js +19 -0
- package/dist/modules/drafts/index.js.map +1 -0
- package/dist/modules/index.d.ts +4 -48
- package/dist/modules/index.js +4 -47
- package/dist/modules/index.js.map +1 -1
- package/dist/modules/requests/events/IncomingRequestReceivedEvent.d.ts +6 -0
- package/dist/modules/requests/events/IncomingRequestReceivedEvent.js +14 -0
- package/dist/modules/requests/events/IncomingRequestReceivedEvent.js.map +1 -0
- package/dist/modules/requests/events/IncomingRequestStatusChangedEvent.d.ts +12 -0
- package/dist/modules/requests/events/IncomingRequestStatusChangedEvent.js +14 -0
- package/dist/modules/requests/events/IncomingRequestStatusChangedEvent.js.map +1 -0
- package/dist/modules/requests/events/OutgoingRequestCreatedEvent.d.ts +6 -0
- package/dist/modules/requests/events/OutgoingRequestCreatedEvent.js +14 -0
- package/dist/modules/requests/events/OutgoingRequestCreatedEvent.js.map +1 -0
- package/dist/modules/requests/events/OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent.d.ts +6 -0
- package/dist/modules/requests/events/OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent.js +14 -0
- package/dist/modules/requests/events/OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent.js.map +1 -0
- package/dist/modules/requests/events/OutgoingRequestStatusChangedEvent.d.ts +12 -0
- package/dist/modules/requests/events/OutgoingRequestStatusChangedEvent.js +14 -0
- package/dist/modules/requests/events/OutgoingRequestStatusChangedEvent.js.map +1 -0
- package/dist/modules/requests/events/index.d.ts +5 -0
- package/dist/modules/requests/events/index.js +22 -0
- package/dist/modules/requests/events/index.js.map +1 -0
- package/dist/modules/requests/incoming/DecideRequestParametersValidator.d.ts +0 -1
- package/dist/modules/requests/incoming/DecideRequestParametersValidator.js +10 -13
- package/dist/modules/requests/incoming/DecideRequestParametersValidator.js.map +1 -1
- package/dist/modules/requests/incoming/IncomingRequestsController.d.ts +8 -3
- package/dist/modules/requests/incoming/IncomingRequestsController.js +55 -30
- package/dist/modules/requests/incoming/IncomingRequestsController.js.map +1 -1
- package/dist/modules/requests/incoming/complete/CompleteIncomingRequestParameters.d.ts +2 -2
- package/dist/modules/requests/incoming/complete/CompleteIncomingRequestParameters.js +1 -1
- package/dist/modules/requests/incoming/complete/CompleteIncomingRequestParameters.js.map +1 -1
- package/dist/modules/requests/index.d.ts +37 -0
- package/dist/modules/requests/index.js +53 -0
- package/dist/modules/requests/index.js.map +1 -0
- package/dist/modules/requests/itemProcessors/GenericRequestItemProcessor.d.ts +1 -1
- package/dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js.map +1 -1
- package/dist/modules/requests/itemProcessors/IRequestItemProcessor.d.ts +1 -1
- package/dist/modules/requests/itemProcessors/createRelationshipAttribute/AcceptCreateRelationshipAttributeRequestItemParameters.d.ts +7 -0
- package/dist/modules/requests/itemProcessors/{createAttribute/AcceptCreateAttributeRequestItemParameters.js → createRelationshipAttribute/AcceptCreateRelationshipAttributeRequestItemParameters.js} +7 -7
- package/dist/modules/requests/itemProcessors/createRelationshipAttribute/AcceptCreateRelationshipAttributeRequestItemParameters.js.map +1 -0
- package/dist/modules/requests/itemProcessors/createRelationshipAttribute/CreateRelationshipAttributeRequestItemProcessor.d.ts +11 -0
- package/dist/modules/requests/itemProcessors/createRelationshipAttribute/CreateRelationshipAttributeRequestItemProcessor.js +44 -0
- package/dist/modules/requests/itemProcessors/createRelationshipAttribute/CreateRelationshipAttributeRequestItemProcessor.js.map +1 -0
- package/dist/modules/requests/itemProcessors/proposeAttribute/ProposeAttributeRequestItemProcessor.d.ts +1 -1
- package/dist/modules/requests/itemProcessors/proposeAttribute/ProposeAttributeRequestItemProcessor.js +2 -2
- package/dist/modules/requests/itemProcessors/proposeAttribute/ProposeAttributeRequestItemProcessor.js.map +1 -1
- package/dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.d.ts +1 -1
- package/dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.js +2 -1
- package/dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.js.map +1 -1
- package/dist/modules/requests/itemProcessors/shareAttribute/ShareAttributeRequestItemProcessor.d.ts +6 -8
- package/dist/modules/requests/itemProcessors/shareAttribute/ShareAttributeRequestItemProcessor.js +34 -72
- package/dist/modules/requests/itemProcessors/shareAttribute/ShareAttributeRequestItemProcessor.js.map +1 -1
- package/dist/modules/requests/itemProcessors/utility/validateQuery.d.ts +1 -1
- package/dist/modules/requests/itemProcessors/utility/validateQuery.js.map +1 -1
- package/dist/modules/requests/outgoing/OutgoingRequestsController.d.ts +10 -4
- package/dist/modules/requests/outgoing/OutgoingRequestsController.js +34 -16
- package/dist/modules/requests/outgoing/OutgoingRequestsController.js.map +1 -1
- package/dist/modules/requests/outgoing/createOutgoingRequest/CanCreateOutgoingRequestParameters.d.ts +13 -0
- package/dist/modules/requests/outgoing/createOutgoingRequest/CanCreateOutgoingRequestParameters.js +35 -0
- package/dist/modules/requests/outgoing/createOutgoingRequest/CanCreateOutgoingRequestParameters.js.map +1 -0
- package/dist/modules/settings/index.d.ts +3 -0
- package/dist/modules/settings/index.js +20 -0
- package/dist/modules/settings/index.js.map +1 -0
- package/dist/modules/settings/local/Setting.d.ts +0 -2
- package/dist/modules/settings/local/Setting.js +0 -6
- package/dist/modules/settings/local/Setting.js.map +1 -1
- package/lib-web/nmshd.consumption.js +3590 -4099
- 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 +20 -18
- package/dist/modules/requests/itemProcessors/createAttribute/AcceptCreateAttributeRequestItemParameters.d.ts +0 -7
- package/dist/modules/requests/itemProcessors/createAttribute/AcceptCreateAttributeRequestItemParameters.js.map +0 -1
- package/dist/modules/requests/itemProcessors/createAttribute/CreateAttributeRequestItemProcessor.d.ts +0 -13
- package/dist/modules/requests/itemProcessors/createAttribute/CreateAttributeRequestItemProcessor.js +0 -71
- package/dist/modules/requests/itemProcessors/createAttribute/CreateAttributeRequestItemProcessor.js.map +0 -1
package/dist/modules/index.d.ts
CHANGED
|
@@ -1,48 +1,4 @@
|
|
|
1
|
-
export * from "./attributes
|
|
2
|
-
export * from "./
|
|
3
|
-
export * from "./
|
|
4
|
-
export * from "./
|
|
5
|
-
export * from "./attributes/local/LocalAttributeShareInfo";
|
|
6
|
-
export * from "./attributes/local/SucceedLocalAttributeParams";
|
|
7
|
-
export * from "./attributes/local/UpdateLocalAttributeParams";
|
|
8
|
-
export * from "./attributes/LocalAttributesController";
|
|
9
|
-
export * from "./drafts/DraftsController";
|
|
10
|
-
export * from "./drafts/local/Draft";
|
|
11
|
-
export * from "./requests/incoming/checkPrerequisites/CheckPrerequisitesOfIncomingRequestParameters";
|
|
12
|
-
export * from "./requests/incoming/complete/CompleteIncomingRequestParameters";
|
|
13
|
-
export * from "./requests/incoming/decide/AcceptRequestItemParameters";
|
|
14
|
-
export * from "./requests/incoming/decide/DecideRequestItemGroupParameters";
|
|
15
|
-
export * from "./requests/incoming/decide/DecideRequestItemParameters";
|
|
16
|
-
export * from "./requests/incoming/decide/DecideRequestParameters";
|
|
17
|
-
export * from "./requests/incoming/decide/RejectRequestItemParameters";
|
|
18
|
-
export * from "./requests/incoming/DecideRequestParametersValidator";
|
|
19
|
-
export * from "./requests/incoming/IncomingRequestsController";
|
|
20
|
-
export * from "./requests/incoming/received/ReceivedIncomingRequestParameters";
|
|
21
|
-
export * from "./requests/incoming/requireManualDecision/RequireManualDecisionOfIncomingRequestParameters";
|
|
22
|
-
export * from "./requests/itemProcessors/AbstractRequestItemProcessor";
|
|
23
|
-
export * from "./requests/itemProcessors/createAttribute/AcceptCreateAttributeRequestItemParameters";
|
|
24
|
-
export * from "./requests/itemProcessors/createAttribute/CreateAttributeRequestItemProcessor";
|
|
25
|
-
export * from "./requests/itemProcessors/GenericRequestItemProcessor";
|
|
26
|
-
export * from "./requests/itemProcessors/IRequestItemProcessor";
|
|
27
|
-
export * from "./requests/itemProcessors/ProcessorConstructor";
|
|
28
|
-
export * from "./requests/itemProcessors/proposeAttribute/AcceptProposeAttributeRequestItemParameters";
|
|
29
|
-
export * from "./requests/itemProcessors/proposeAttribute/ProposeAttributeRequestItemProcessor";
|
|
30
|
-
export { AcceptReadAttributeRequestItemParametersJSON, AcceptReadAttributeRequestItemParametersWithExistingAttributeJSON, AcceptReadAttributeRequestItemParametersWithNewAttributeJSON } from "./requests/itemProcessors/readAttribute/AcceptReadAttributeRequestItemParameters";
|
|
31
|
-
export * from "./requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor";
|
|
32
|
-
export * from "./requests/itemProcessors/RequestItemConstructor";
|
|
33
|
-
export * from "./requests/itemProcessors/RequestItemProcessorRegistry";
|
|
34
|
-
export * from "./requests/itemProcessors/shareAttribute/AcceptShareAttributeRequestItemParameters";
|
|
35
|
-
export * from "./requests/itemProcessors/shareAttribute/ShareAttributeRequestItemProcessor";
|
|
36
|
-
export * from "./requests/itemProcessors/ValidationResult";
|
|
37
|
-
export * from "./requests/local/LocalRequest";
|
|
38
|
-
export * from "./requests/local/LocalRequestStatus";
|
|
39
|
-
export * from "./requests/local/LocalRequestStatusLogEntry";
|
|
40
|
-
export * from "./requests/local/LocalResponse";
|
|
41
|
-
export * from "./requests/outgoing/completeOutgoingRequest/CompleteOutgoingRequestParameters";
|
|
42
|
-
export * from "./requests/outgoing/createFromRelationshipCreationChange/CreateOutgoingRequestFromRelationshipCreationChangeParameters";
|
|
43
|
-
export * from "./requests/outgoing/createOutgoingRequest/CreateOutgoingRequestParameters";
|
|
44
|
-
export * from "./requests/outgoing/OutgoingRequestsController";
|
|
45
|
-
export * from "./requests/outgoing/sentOutgoingRequest/SentOutgoingRequestParameters";
|
|
46
|
-
export * from "./settings/local/CreateSettingParameter";
|
|
47
|
-
export * from "./settings/local/Setting";
|
|
48
|
-
export * from "./settings/SettingsController";
|
|
1
|
+
export * from "./attributes";
|
|
2
|
+
export * from "./drafts";
|
|
3
|
+
export * from "./requests";
|
|
4
|
+
export * from "./settings";
|
package/dist/modules/index.js
CHANGED
|
@@ -14,51 +14,8 @@ 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
|
-
__exportStar(require("./attributes
|
|
18
|
-
__exportStar(require("./
|
|
19
|
-
__exportStar(require("./
|
|
20
|
-
__exportStar(require("./
|
|
21
|
-
__exportStar(require("./attributes/local/LocalAttributeShareInfo"), exports);
|
|
22
|
-
__exportStar(require("./attributes/local/SucceedLocalAttributeParams"), exports);
|
|
23
|
-
__exportStar(require("./attributes/local/UpdateLocalAttributeParams"), exports);
|
|
24
|
-
__exportStar(require("./attributes/LocalAttributesController"), exports);
|
|
25
|
-
__exportStar(require("./drafts/DraftsController"), exports);
|
|
26
|
-
__exportStar(require("./drafts/local/Draft"), exports);
|
|
27
|
-
__exportStar(require("./requests/incoming/checkPrerequisites/CheckPrerequisitesOfIncomingRequestParameters"), exports);
|
|
28
|
-
__exportStar(require("./requests/incoming/complete/CompleteIncomingRequestParameters"), exports);
|
|
29
|
-
__exportStar(require("./requests/incoming/decide/AcceptRequestItemParameters"), exports);
|
|
30
|
-
__exportStar(require("./requests/incoming/decide/DecideRequestItemGroupParameters"), exports);
|
|
31
|
-
__exportStar(require("./requests/incoming/decide/DecideRequestItemParameters"), exports);
|
|
32
|
-
__exportStar(require("./requests/incoming/decide/DecideRequestParameters"), exports);
|
|
33
|
-
__exportStar(require("./requests/incoming/decide/RejectRequestItemParameters"), exports);
|
|
34
|
-
__exportStar(require("./requests/incoming/DecideRequestParametersValidator"), exports);
|
|
35
|
-
__exportStar(require("./requests/incoming/IncomingRequestsController"), exports);
|
|
36
|
-
__exportStar(require("./requests/incoming/received/ReceivedIncomingRequestParameters"), exports);
|
|
37
|
-
__exportStar(require("./requests/incoming/requireManualDecision/RequireManualDecisionOfIncomingRequestParameters"), exports);
|
|
38
|
-
__exportStar(require("./requests/itemProcessors/AbstractRequestItemProcessor"), exports);
|
|
39
|
-
__exportStar(require("./requests/itemProcessors/createAttribute/AcceptCreateAttributeRequestItemParameters"), exports);
|
|
40
|
-
__exportStar(require("./requests/itemProcessors/createAttribute/CreateAttributeRequestItemProcessor"), exports);
|
|
41
|
-
__exportStar(require("./requests/itemProcessors/GenericRequestItemProcessor"), exports);
|
|
42
|
-
__exportStar(require("./requests/itemProcessors/IRequestItemProcessor"), exports);
|
|
43
|
-
__exportStar(require("./requests/itemProcessors/ProcessorConstructor"), exports);
|
|
44
|
-
__exportStar(require("./requests/itemProcessors/proposeAttribute/AcceptProposeAttributeRequestItemParameters"), exports);
|
|
45
|
-
__exportStar(require("./requests/itemProcessors/proposeAttribute/ProposeAttributeRequestItemProcessor"), exports);
|
|
46
|
-
__exportStar(require("./requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor"), exports);
|
|
47
|
-
__exportStar(require("./requests/itemProcessors/RequestItemConstructor"), exports);
|
|
48
|
-
__exportStar(require("./requests/itemProcessors/RequestItemProcessorRegistry"), exports);
|
|
49
|
-
__exportStar(require("./requests/itemProcessors/shareAttribute/AcceptShareAttributeRequestItemParameters"), exports);
|
|
50
|
-
__exportStar(require("./requests/itemProcessors/shareAttribute/ShareAttributeRequestItemProcessor"), exports);
|
|
51
|
-
__exportStar(require("./requests/itemProcessors/ValidationResult"), exports);
|
|
52
|
-
__exportStar(require("./requests/local/LocalRequest"), exports);
|
|
53
|
-
__exportStar(require("./requests/local/LocalRequestStatus"), exports);
|
|
54
|
-
__exportStar(require("./requests/local/LocalRequestStatusLogEntry"), exports);
|
|
55
|
-
__exportStar(require("./requests/local/LocalResponse"), exports);
|
|
56
|
-
__exportStar(require("./requests/outgoing/completeOutgoingRequest/CompleteOutgoingRequestParameters"), exports);
|
|
57
|
-
__exportStar(require("./requests/outgoing/createFromRelationshipCreationChange/CreateOutgoingRequestFromRelationshipCreationChangeParameters"), exports);
|
|
58
|
-
__exportStar(require("./requests/outgoing/createOutgoingRequest/CreateOutgoingRequestParameters"), exports);
|
|
59
|
-
__exportStar(require("./requests/outgoing/OutgoingRequestsController"), exports);
|
|
60
|
-
__exportStar(require("./requests/outgoing/sentOutgoingRequest/SentOutgoingRequestParameters"), exports);
|
|
61
|
-
__exportStar(require("./settings/local/CreateSettingParameter"), exports);
|
|
62
|
-
__exportStar(require("./settings/local/Setting"), exports);
|
|
63
|
-
__exportStar(require("./settings/SettingsController"), exports);
|
|
17
|
+
__exportStar(require("./attributes"), exports);
|
|
18
|
+
__exportStar(require("./drafts"), exports);
|
|
19
|
+
__exportStar(require("./requests"), exports);
|
|
20
|
+
__exportStar(require("./settings"), exports);
|
|
64
21
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/modules/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/modules/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA4B;AAC5B,2CAAwB;AACxB,6CAA0B;AAC1B,6CAA0B"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { TransportDataEvent } from "@nmshd/transport";
|
|
2
|
+
import { LocalRequest } from "../..";
|
|
3
|
+
export declare class IncomingRequestReceivedEvent extends TransportDataEvent<LocalRequest> {
|
|
4
|
+
static readonly namespace = "consumption.incomingRequestReceived";
|
|
5
|
+
constructor(eventTargetAddress: string, data: LocalRequest);
|
|
6
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IncomingRequestReceivedEvent = void 0;
|
|
4
|
+
const transport_1 = require("@nmshd/transport");
|
|
5
|
+
class IncomingRequestReceivedEvent extends transport_1.TransportDataEvent {
|
|
6
|
+
constructor(eventTargetAddress, data) {
|
|
7
|
+
super(IncomingRequestReceivedEvent.namespace, eventTargetAddress, data);
|
|
8
|
+
if (data.isOwn)
|
|
9
|
+
throw new Error("Cannot create this event for an outgoing Request");
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
exports.IncomingRequestReceivedEvent = IncomingRequestReceivedEvent;
|
|
13
|
+
IncomingRequestReceivedEvent.namespace = "consumption.incomingRequestReceived";
|
|
14
|
+
//# sourceMappingURL=IncomingRequestReceivedEvent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IncomingRequestReceivedEvent.js","sourceRoot":"","sources":["../../../../src/modules/requests/events/IncomingRequestReceivedEvent.ts"],"names":[],"mappings":";;;AAAA,gDAAqD;AAGrD,MAAa,4BAA6B,SAAQ,8BAAgC;IAG9E,YAAmB,kBAA0B,EAAE,IAAkB;QAC7D,KAAK,CAAC,4BAA4B,CAAC,SAAS,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAA;QAEvE,IAAI,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;IACvF,CAAC;;AAPL,oEAQC;AAP0B,sCAAS,GAAG,qCAAqC,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { TransportDataEvent } from "@nmshd/transport";
|
|
2
|
+
import { LocalRequest } from "../local/LocalRequest";
|
|
3
|
+
import { LocalRequestStatus } from "../local/LocalRequestStatus";
|
|
4
|
+
export interface IncomingRequestStatusChangedEventData {
|
|
5
|
+
request: LocalRequest;
|
|
6
|
+
oldStatus: LocalRequestStatus;
|
|
7
|
+
newStatus: LocalRequestStatus;
|
|
8
|
+
}
|
|
9
|
+
export declare class IncomingRequestStatusChangedEvent extends TransportDataEvent<IncomingRequestStatusChangedEventData> {
|
|
10
|
+
static readonly namespace = "consumption.incomingRequestStatusChanged";
|
|
11
|
+
constructor(eventTargetAddress: string, data: IncomingRequestStatusChangedEventData);
|
|
12
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IncomingRequestStatusChangedEvent = void 0;
|
|
4
|
+
const transport_1 = require("@nmshd/transport");
|
|
5
|
+
class IncomingRequestStatusChangedEvent extends transport_1.TransportDataEvent {
|
|
6
|
+
constructor(eventTargetAddress, data) {
|
|
7
|
+
super(IncomingRequestStatusChangedEvent.namespace, eventTargetAddress, data);
|
|
8
|
+
if (data.request.isOwn)
|
|
9
|
+
throw new Error("Cannot create this event for an outgoing Request");
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
exports.IncomingRequestStatusChangedEvent = IncomingRequestStatusChangedEvent;
|
|
13
|
+
IncomingRequestStatusChangedEvent.namespace = "consumption.incomingRequestStatusChanged";
|
|
14
|
+
//# sourceMappingURL=IncomingRequestStatusChangedEvent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IncomingRequestStatusChangedEvent.js","sourceRoot":"","sources":["../../../../src/modules/requests/events/IncomingRequestStatusChangedEvent.ts"],"names":[],"mappings":";;;AAAA,gDAAqD;AAUrD,MAAa,iCAAkC,SAAQ,8BAAyD;IAG5G,YAAmB,kBAA0B,EAAE,IAA2C;QACtF,KAAK,CAAC,iCAAiC,CAAC,SAAS,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAA;QAE5E,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;IAC/F,CAAC;;AAPL,8EAQC;AAP0B,2CAAS,GAAG,0CAA0C,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { TransportDataEvent } from "@nmshd/transport";
|
|
2
|
+
import { LocalRequest } from "../..";
|
|
3
|
+
export declare class OutgoingRequestCreatedEvent extends TransportDataEvent<LocalRequest> {
|
|
4
|
+
static readonly namespace = "consumption.outgoingRequestCreated";
|
|
5
|
+
constructor(eventTargetAddress: string, data: LocalRequest);
|
|
6
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OutgoingRequestCreatedEvent = void 0;
|
|
4
|
+
const transport_1 = require("@nmshd/transport");
|
|
5
|
+
class OutgoingRequestCreatedEvent extends transport_1.TransportDataEvent {
|
|
6
|
+
constructor(eventTargetAddress, data) {
|
|
7
|
+
super(OutgoingRequestCreatedEvent.namespace, eventTargetAddress, data);
|
|
8
|
+
if (!data.isOwn)
|
|
9
|
+
throw new Error("Cannot create this event for an incoming Request");
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
exports.OutgoingRequestCreatedEvent = OutgoingRequestCreatedEvent;
|
|
13
|
+
OutgoingRequestCreatedEvent.namespace = "consumption.outgoingRequestCreated";
|
|
14
|
+
//# sourceMappingURL=OutgoingRequestCreatedEvent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OutgoingRequestCreatedEvent.js","sourceRoot":"","sources":["../../../../src/modules/requests/events/OutgoingRequestCreatedEvent.ts"],"names":[],"mappings":";;;AAAA,gDAAqD;AAGrD,MAAa,2BAA4B,SAAQ,8BAAgC;IAG7E,YAAmB,kBAA0B,EAAE,IAAkB;QAC7D,KAAK,CAAC,2BAA2B,CAAC,SAAS,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAA;QAEtE,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;IACxF,CAAC;;AAPL,kEAQC;AAP0B,qCAAS,GAAG,oCAAoC,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { TransportDataEvent } from "@nmshd/transport";
|
|
2
|
+
import { LocalRequest } from "../..";
|
|
3
|
+
export declare class OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent extends TransportDataEvent<LocalRequest> {
|
|
4
|
+
static readonly namespace = "consumption.outgoingRequestFromRelationshipCreationChangeCreatedAndCompleted";
|
|
5
|
+
constructor(eventTargetAddress: string, data: LocalRequest);
|
|
6
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent = void 0;
|
|
4
|
+
const transport_1 = require("@nmshd/transport");
|
|
5
|
+
class OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent extends transport_1.TransportDataEvent {
|
|
6
|
+
constructor(eventTargetAddress, data) {
|
|
7
|
+
super(OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent.namespace, eventTargetAddress, data);
|
|
8
|
+
if (!data.isOwn)
|
|
9
|
+
throw new Error("Cannot create this event for an incoming Request");
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
exports.OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent = OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent;
|
|
13
|
+
OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent.namespace = "consumption.outgoingRequestFromRelationshipCreationChangeCreatedAndCompleted";
|
|
14
|
+
//# sourceMappingURL=OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent.js","sourceRoot":"","sources":["../../../../src/modules/requests/events/OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent.ts"],"names":[],"mappings":";;;AAAA,gDAAqD;AAGrD,MAAa,qEAAsE,SAAQ,8BAAgC;IAGvH,YAAmB,kBAA0B,EAAE,IAAkB;QAC7D,KAAK,CAAC,qEAAqE,CAAC,SAAS,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAA;QAEhH,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;IACxF,CAAC;;AAPL,sJAQC;AAP0B,+EAAS,GAAG,8EAA8E,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { TransportDataEvent } from "@nmshd/transport";
|
|
2
|
+
import { LocalRequest } from "../local/LocalRequest";
|
|
3
|
+
import { LocalRequestStatus } from "../local/LocalRequestStatus";
|
|
4
|
+
export interface OutgoingRequestStatusChangedEventData {
|
|
5
|
+
request: LocalRequest;
|
|
6
|
+
oldStatus: LocalRequestStatus;
|
|
7
|
+
newStatus: LocalRequestStatus;
|
|
8
|
+
}
|
|
9
|
+
export declare class OutgoingRequestStatusChangedEvent extends TransportDataEvent<OutgoingRequestStatusChangedEventData> {
|
|
10
|
+
static readonly namespace = "consumption.outgoingRequestStatusChanged";
|
|
11
|
+
constructor(eventTargetAddress: string, data: OutgoingRequestStatusChangedEventData);
|
|
12
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OutgoingRequestStatusChangedEvent = void 0;
|
|
4
|
+
const transport_1 = require("@nmshd/transport");
|
|
5
|
+
class OutgoingRequestStatusChangedEvent extends transport_1.TransportDataEvent {
|
|
6
|
+
constructor(eventTargetAddress, data) {
|
|
7
|
+
super(OutgoingRequestStatusChangedEvent.namespace, eventTargetAddress, data);
|
|
8
|
+
if (!data.request.isOwn)
|
|
9
|
+
throw new Error("Cannot create this event for an incoming Request");
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
exports.OutgoingRequestStatusChangedEvent = OutgoingRequestStatusChangedEvent;
|
|
13
|
+
OutgoingRequestStatusChangedEvent.namespace = "consumption.outgoingRequestStatusChanged";
|
|
14
|
+
//# sourceMappingURL=OutgoingRequestStatusChangedEvent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OutgoingRequestStatusChangedEvent.js","sourceRoot":"","sources":["../../../../src/modules/requests/events/OutgoingRequestStatusChangedEvent.ts"],"names":[],"mappings":";;;AAAA,gDAAqD;AAUrD,MAAa,iCAAkC,SAAQ,8BAAyD;IAG5G,YAAmB,kBAA0B,EAAE,IAA2C;QACtF,KAAK,CAAC,iCAAiC,CAAC,SAAS,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAA;QAE5E,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;IAChG,CAAC;;AAPL,8EAQC;AAP0B,2CAAS,GAAG,0CAA0C,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export * from "./IncomingRequestReceivedEvent";
|
|
2
|
+
export * from "./IncomingRequestStatusChangedEvent";
|
|
3
|
+
export * from "./OutgoingRequestCreatedEvent";
|
|
4
|
+
export * from "./OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent";
|
|
5
|
+
export * from "./OutgoingRequestStatusChangedEvent";
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./IncomingRequestReceivedEvent"), exports);
|
|
18
|
+
__exportStar(require("./IncomingRequestStatusChangedEvent"), exports);
|
|
19
|
+
__exportStar(require("./OutgoingRequestCreatedEvent"), exports);
|
|
20
|
+
__exportStar(require("./OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent"), exports);
|
|
21
|
+
__exportStar(require("./OutgoingRequestStatusChangedEvent"), exports);
|
|
22
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/requests/events/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iEAA8C;AAC9C,sEAAmD;AACnD,gEAA6C;AAC7C,0GAAuF;AACvF,sEAAmD"}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DecideRequestParametersValidator = void 0;
|
|
4
|
-
const ts_utils_1 = require("@js-soft/ts-utils");
|
|
5
4
|
const content_1 = require("@nmshd/content");
|
|
6
5
|
const transport_1 = require("@nmshd/transport");
|
|
6
|
+
const consumption_1 = require("../../../consumption");
|
|
7
7
|
const ValidationResult_1 = require("../itemProcessors/ValidationResult");
|
|
8
8
|
const DecideRequestItemGroupParameters_1 = require("./decide/DecideRequestItemGroupParameters");
|
|
9
9
|
const DecideRequestItemParameters_1 = require("./decide/DecideRequestItemParameters");
|
|
10
10
|
class DecideRequestParametersValidator {
|
|
11
11
|
validate(params, request) {
|
|
12
12
|
if (!request.id.equals(transport_1.CoreId.from(params.requestId))) {
|
|
13
|
-
return ValidationResult_1.ValidationResult.error(
|
|
13
|
+
return ValidationResult_1.ValidationResult.error(consumption_1.ConsumptionErrors.requests.decideValidation.invalidRequestId());
|
|
14
14
|
}
|
|
15
15
|
if (params.items.length !== request.content.items.length) {
|
|
16
|
-
return ValidationResult_1.ValidationResult.error(
|
|
16
|
+
return ValidationResult_1.ValidationResult.error(consumption_1.ConsumptionErrors.requests.decideValidation.invalidNumberOfItems("Number of items in Request and Response do not match"));
|
|
17
17
|
}
|
|
18
18
|
const validationResults = request.content.items.map((requestItem, index) => this.checkItemOrGroup(requestItem, params.items[index], params.accept));
|
|
19
19
|
return ValidationResult_1.ValidationResult.fromItems(validationResults);
|
|
@@ -26,36 +26,33 @@ class DecideRequestParametersValidator {
|
|
|
26
26
|
}
|
|
27
27
|
checkItem(requestItem, response, isParentAccepted) {
|
|
28
28
|
if ((0, DecideRequestItemGroupParameters_1.isDecideRequestItemGroupParametersJSON)(response)) {
|
|
29
|
-
return ValidationResult_1.ValidationResult.error(
|
|
29
|
+
return ValidationResult_1.ValidationResult.error(consumption_1.ConsumptionErrors.requests.decideValidation.requestItemAnsweredAsRequestItemGroup());
|
|
30
30
|
}
|
|
31
31
|
if (!isParentAccepted && response.accept) {
|
|
32
|
-
return ValidationResult_1.ValidationResult.error(
|
|
32
|
+
return ValidationResult_1.ValidationResult.error(consumption_1.ConsumptionErrors.requests.decideValidation.itemAcceptedButParentNotAccepted("The RequestItem was accepted, but the parent was not accepted."));
|
|
33
33
|
}
|
|
34
34
|
if (isParentAccepted && requestItem.mustBeAccepted && !response.accept) {
|
|
35
|
-
return ValidationResult_1.ValidationResult.error(
|
|
35
|
+
return ValidationResult_1.ValidationResult.error(consumption_1.ConsumptionErrors.requests.decideValidation.mustBeAcceptedItemNotAccepted("The RequestItem is flagged as 'mustBeAccepted', but it was not accepted."));
|
|
36
36
|
}
|
|
37
37
|
return ValidationResult_1.ValidationResult.success();
|
|
38
38
|
}
|
|
39
39
|
checkItemGroup(requestItemGroup, responseItemGroup, isParentAccepted) {
|
|
40
40
|
if ((0, DecideRequestItemParameters_1.isDecideRequestItemParametersJSON)(responseItemGroup)) {
|
|
41
|
-
return ValidationResult_1.ValidationResult.error(
|
|
41
|
+
return ValidationResult_1.ValidationResult.error(consumption_1.ConsumptionErrors.requests.decideValidation.requestItemGroupAnsweredAsRequestItem());
|
|
42
42
|
}
|
|
43
43
|
if (responseItemGroup.items.length !== requestItemGroup.items.length) {
|
|
44
|
-
return ValidationResult_1.ValidationResult.error(
|
|
44
|
+
return ValidationResult_1.ValidationResult.error(consumption_1.ConsumptionErrors.requests.decideValidation.invalidNumberOfItems("Number of items in RequestItemGroup and ResponseItemGroup do not match"));
|
|
45
45
|
}
|
|
46
46
|
const isGroupAccepted = responseItemGroup.items.some((value) => value.accept);
|
|
47
47
|
if (!isParentAccepted && isGroupAccepted) {
|
|
48
|
-
return ValidationResult_1.ValidationResult.error(
|
|
48
|
+
return ValidationResult_1.ValidationResult.error(consumption_1.ConsumptionErrors.requests.decideValidation.itemAcceptedButParentNotAccepted("The RequestItemGroup was accepted, but the parent was not accepted."));
|
|
49
49
|
}
|
|
50
50
|
if (isParentAccepted && requestItemGroup.mustBeAccepted && !isGroupAccepted) {
|
|
51
|
-
return ValidationResult_1.ValidationResult.error(
|
|
51
|
+
return ValidationResult_1.ValidationResult.error(consumption_1.ConsumptionErrors.requests.decideValidation.mustBeAcceptedItemNotAccepted("The RequestItemGroup is flagged as 'mustBeAccepted', but it was not accepted. Please accept all 'mustBeAccepted' items in this group."));
|
|
52
52
|
}
|
|
53
53
|
const validationResults = requestItemGroup.items.map((requestItem, index) => this.checkItem(requestItem, responseItemGroup.items[index], isGroupAccepted));
|
|
54
54
|
return ValidationResult_1.ValidationResult.fromItems(validationResults);
|
|
55
55
|
}
|
|
56
|
-
invalidNumberOfItemsError(message) {
|
|
57
|
-
return new ts_utils_1.ApplicationError("error.requests.decide.validation.invalidNumberOfItems", message);
|
|
58
|
-
}
|
|
59
56
|
}
|
|
60
57
|
exports.DecideRequestParametersValidator = DecideRequestParametersValidator;
|
|
61
58
|
//# sourceMappingURL=DecideRequestParametersValidator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DecideRequestParametersValidator.js","sourceRoot":"","sources":["../../../../src/modules/requests/incoming/DecideRequestParametersValidator.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"DecideRequestParametersValidator.js","sourceRoot":"","sources":["../../../../src/modules/requests/incoming/DecideRequestParametersValidator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { EventBus } from "@js-soft/ts-utils";
|
|
2
|
+
import { CoreAddress, ICoreId, SynchronizedCollection } from "@nmshd/transport";
|
|
2
3
|
import { ConsumptionBaseController } from "../../../consumption";
|
|
3
4
|
import { ConsumptionController } from "../../../consumption/ConsumptionController";
|
|
4
5
|
import { RequestItemProcessorRegistry } from "../itemProcessors/RequestItemProcessorRegistry";
|
|
@@ -10,10 +11,14 @@ import { DecideRequestParametersJSON } from "./decide/DecideRequestParameters";
|
|
|
10
11
|
import { IReceivedIncomingRequestParameters } from "./received/ReceivedIncomingRequestParameters";
|
|
11
12
|
import { IRequireManualDecisionOfIncomingRequestParameters } from "./requireManualDecision/RequireManualDecisionOfIncomingRequestParameters";
|
|
12
13
|
export declare class IncomingRequestsController extends ConsumptionBaseController {
|
|
13
|
-
private readonly
|
|
14
|
+
private readonly localRequests;
|
|
14
15
|
private readonly processorRegistry;
|
|
16
|
+
private readonly eventBus;
|
|
17
|
+
private readonly identity;
|
|
15
18
|
private readonly decideRequestParamsValidator;
|
|
16
|
-
constructor(
|
|
19
|
+
constructor(localRequests: SynchronizedCollection, processorRegistry: RequestItemProcessorRegistry, parent: ConsumptionController, eventBus: EventBus, identity: {
|
|
20
|
+
address: CoreAddress;
|
|
21
|
+
});
|
|
17
22
|
received(params: IReceivedIncomingRequestParameters): Promise<LocalRequest>;
|
|
18
23
|
private extractInfoFromSource;
|
|
19
24
|
private extractInfoFromMessage;
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.IncomingRequestsController = void 0;
|
|
4
|
+
const ts_serval_1 = require("@js-soft/ts-serval");
|
|
4
5
|
const content_1 = require("@nmshd/content");
|
|
5
6
|
const transport_1 = require("@nmshd/transport");
|
|
6
7
|
const consumption_1 = require("../../../consumption");
|
|
8
|
+
const events_1 = require("../events");
|
|
7
9
|
const ValidationResult_1 = require("../itemProcessors/ValidationResult");
|
|
8
10
|
const LocalRequest_1 = require("../local/LocalRequest");
|
|
9
11
|
const LocalRequestStatus_1 = require("../local/LocalRequestStatus");
|
|
@@ -15,16 +17,18 @@ const DecideRequestParametersValidator_1 = require("./DecideRequestParametersVal
|
|
|
15
17
|
const ReceivedIncomingRequestParameters_1 = require("./received/ReceivedIncomingRequestParameters");
|
|
16
18
|
const RequireManualDecisionOfIncomingRequestParameters_1 = require("./requireManualDecision/RequireManualDecisionOfIncomingRequestParameters");
|
|
17
19
|
class IncomingRequestsController extends consumption_1.ConsumptionBaseController {
|
|
18
|
-
constructor(
|
|
20
|
+
constructor(localRequests, processorRegistry, parent, eventBus, identity) {
|
|
19
21
|
super(consumption_1.ConsumptionControllerName.RequestsController, parent);
|
|
20
|
-
this.
|
|
22
|
+
this.localRequests = localRequests;
|
|
21
23
|
this.processorRegistry = processorRegistry;
|
|
24
|
+
this.eventBus = eventBus;
|
|
25
|
+
this.identity = identity;
|
|
22
26
|
this.decideRequestParamsValidator = new DecideRequestParametersValidator_1.DecideRequestParametersValidator();
|
|
23
27
|
}
|
|
24
28
|
async received(params) {
|
|
25
29
|
const parsedParams = ReceivedIncomingRequestParameters_1.ReceivedIncomingRequestParameters.from(params);
|
|
26
30
|
const infoFromSource = this.extractInfoFromSource(parsedParams.requestSourceObject);
|
|
27
|
-
const
|
|
31
|
+
const request = LocalRequest_1.LocalRequest.from({
|
|
28
32
|
id: parsedParams.receivedRequest.id ?? (await consumption_1.ConsumptionIds.request.generate()),
|
|
29
33
|
createdAt: transport_1.CoreDate.utc(),
|
|
30
34
|
status: LocalRequestStatus_1.LocalRequestStatus.Open,
|
|
@@ -34,8 +38,9 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
34
38
|
source: infoFromSource.source,
|
|
35
39
|
statusLog: []
|
|
36
40
|
});
|
|
37
|
-
await this.
|
|
38
|
-
|
|
41
|
+
await this.localRequests.create(request);
|
|
42
|
+
this.eventBus.publish(new events_1.IncomingRequestReceivedEvent(this.identity.address.toString(), request));
|
|
43
|
+
return request;
|
|
39
44
|
}
|
|
40
45
|
extractInfoFromSource(source) {
|
|
41
46
|
if (source instanceof transport_1.Message) {
|
|
@@ -89,6 +94,11 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
89
94
|
}
|
|
90
95
|
request.changeStatus(LocalRequestStatus_1.LocalRequestStatus.DecisionRequired);
|
|
91
96
|
await this.update(request);
|
|
97
|
+
this.eventBus.publish(new events_1.IncomingRequestStatusChangedEvent(this.identity.address.toString(), {
|
|
98
|
+
request,
|
|
99
|
+
oldStatus: LocalRequestStatus_1.LocalRequestStatus.Open,
|
|
100
|
+
newStatus: request.status
|
|
101
|
+
}));
|
|
92
102
|
return request;
|
|
93
103
|
}
|
|
94
104
|
async requireManualDecision(params) {
|
|
@@ -97,6 +107,11 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
97
107
|
this.assertRequestStatus(request, LocalRequestStatus_1.LocalRequestStatus.DecisionRequired);
|
|
98
108
|
request.changeStatus(LocalRequestStatus_1.LocalRequestStatus.ManualDecisionRequired);
|
|
99
109
|
await this.update(request);
|
|
110
|
+
this.eventBus.publish(new events_1.IncomingRequestStatusChangedEvent(this.identity.address.toString(), {
|
|
111
|
+
request: request,
|
|
112
|
+
oldStatus: LocalRequestStatus_1.LocalRequestStatus.DecisionRequired,
|
|
113
|
+
newStatus: request.status
|
|
114
|
+
}));
|
|
100
115
|
return request;
|
|
101
116
|
}
|
|
102
117
|
async canAccept(params) {
|
|
@@ -139,12 +154,14 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
139
154
|
async canDecideItem(params, requestItem, request) {
|
|
140
155
|
const processor = this.processorRegistry.getProcessorForItem(requestItem);
|
|
141
156
|
try {
|
|
142
|
-
if (params.accept)
|
|
157
|
+
if (params.accept)
|
|
143
158
|
return await processor.canAccept(requestItem, params, request);
|
|
144
|
-
}
|
|
145
159
|
return await processor.canReject(requestItem, params, request);
|
|
146
160
|
}
|
|
147
161
|
catch (e) {
|
|
162
|
+
if (e instanceof ts_serval_1.ServalError) {
|
|
163
|
+
return ValidationResult_1.ValidationResult.error(consumption_1.ConsumptionErrors.requests.servalErrorDuringRequestItemProcessing(e));
|
|
164
|
+
}
|
|
148
165
|
return ValidationResult_1.ValidationResult.error(consumption_1.ConsumptionErrors.requests.unexpectedErrorDuringRequestItemProcessing(e));
|
|
149
166
|
}
|
|
150
167
|
}
|
|
@@ -163,13 +180,19 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
163
180
|
return await this.decide({ ...params, accept: false });
|
|
164
181
|
}
|
|
165
182
|
async decide(params) {
|
|
166
|
-
const
|
|
167
|
-
this.assertRequestStatus(
|
|
168
|
-
const localResponse = await this.createLocalResponse(params,
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
183
|
+
const request = await this.getOrThrow(params.requestId);
|
|
184
|
+
this.assertRequestStatus(request, LocalRequestStatus_1.LocalRequestStatus.DecisionRequired, LocalRequestStatus_1.LocalRequestStatus.ManualDecisionRequired);
|
|
185
|
+
const localResponse = await this.createLocalResponse(params, request);
|
|
186
|
+
const oldStatus = request.status;
|
|
187
|
+
request.response = localResponse;
|
|
188
|
+
request.changeStatus(LocalRequestStatus_1.LocalRequestStatus.Decided);
|
|
189
|
+
await this.update(request);
|
|
190
|
+
this.eventBus.publish(new events_1.IncomingRequestStatusChangedEvent(this.identity.address.toString(), {
|
|
191
|
+
request: request,
|
|
192
|
+
oldStatus,
|
|
193
|
+
newStatus: request.status
|
|
194
|
+
}));
|
|
195
|
+
return request;
|
|
173
196
|
}
|
|
174
197
|
async createLocalResponse(params, request) {
|
|
175
198
|
const requestItems = request.content.items;
|
|
@@ -227,33 +250,35 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
227
250
|
throw new Error("Cannot decide own Request");
|
|
228
251
|
}
|
|
229
252
|
this.assertRequestStatus(request, LocalRequestStatus_1.LocalRequestStatus.Decided);
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
253
|
+
const requestIsRejected = request.response.content.result === content_1.ResponseResult.Rejected;
|
|
254
|
+
const requestIsFromTemplate = request.source.type === "RelationshipTemplate";
|
|
255
|
+
if (parsedParams.responseSourceObject) {
|
|
256
|
+
request.response.source = LocalResponse_1.LocalResponseSource.from({
|
|
257
|
+
type: parsedParams.responseSourceObject instanceof transport_1.Message ? "Message" : "RelationshipChange",
|
|
258
|
+
reference: parsedParams.responseSourceObject.id
|
|
259
|
+
});
|
|
233
260
|
}
|
|
234
|
-
else if (
|
|
235
|
-
responseSource
|
|
261
|
+
else if (!requestIsRejected || !requestIsFromTemplate) {
|
|
262
|
+
throw new Error("A Request can only be completed without a responseSource if the Request is rejected and the Request is from a Relationship Template");
|
|
236
263
|
}
|
|
237
|
-
else {
|
|
238
|
-
throw new Error("Unknown response source");
|
|
239
|
-
}
|
|
240
|
-
request.response.source = LocalResponse_1.LocalResponseSource.from({
|
|
241
|
-
type: responseSource,
|
|
242
|
-
reference: parsedParams.responseSourceObject.id
|
|
243
|
-
});
|
|
244
264
|
request.changeStatus(LocalRequestStatus_1.LocalRequestStatus.Completed);
|
|
245
265
|
await this.update(request);
|
|
266
|
+
this.eventBus.publish(new events_1.IncomingRequestStatusChangedEvent(this.identity.address.toString(), {
|
|
267
|
+
request: request,
|
|
268
|
+
oldStatus: LocalRequestStatus_1.LocalRequestStatus.Decided,
|
|
269
|
+
newStatus: request.status
|
|
270
|
+
}));
|
|
246
271
|
return request;
|
|
247
272
|
}
|
|
248
273
|
async getIncomingRequests(query) {
|
|
249
274
|
query ??= {};
|
|
250
275
|
query.isOwn = false;
|
|
251
|
-
const requestDocs = await this.
|
|
276
|
+
const requestDocs = await this.localRequests.find(query);
|
|
252
277
|
const requests = requestDocs.map((r) => LocalRequest_1.LocalRequest.from(r));
|
|
253
278
|
return requests;
|
|
254
279
|
}
|
|
255
280
|
async getIncomingRequest(idIncomingRequest) {
|
|
256
|
-
const requestDoc = await this.
|
|
281
|
+
const requestDoc = await this.localRequests.findOne({ id: idIncomingRequest.toString(), isOwn: false });
|
|
257
282
|
const request = requestDoc ? LocalRequest_1.LocalRequest.from(requestDoc) : undefined;
|
|
258
283
|
return request;
|
|
259
284
|
}
|
|
@@ -265,11 +290,11 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
265
290
|
return request;
|
|
266
291
|
}
|
|
267
292
|
async update(request) {
|
|
268
|
-
const requestDoc = await this.
|
|
293
|
+
const requestDoc = await this.localRequests.findOne({ id: request.id.toString(), isOwn: false });
|
|
269
294
|
if (!requestDoc) {
|
|
270
295
|
throw transport_1.TransportErrors.general.recordNotFound(LocalRequest_1.LocalRequest, request.id.toString());
|
|
271
296
|
}
|
|
272
|
-
await this.
|
|
297
|
+
await this.localRequests.update(requestDoc, request);
|
|
273
298
|
}
|
|
274
299
|
assertRequestStatus(request, ...status) {
|
|
275
300
|
if (!status.includes(request.status)) {
|