@serenity-js/core
Version:
The core Serenity/JS framework, providing the Screenplay Pattern interfaces, as well as the test reporting and integration infrastructure
34 lines • 1.32 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.AsyncOperationFailed = void 0;
const tiny_types_1 = require("tiny-types");
const errors_1 = require("../errors");
const model_1 = require("../model");
const screenplay_1 = require("../screenplay");
const DomainEvent_1 = require("./DomainEvent");
/**
* @group Events
*/
class AsyncOperationFailed extends DomainEvent_1.DomainEvent {
error;
correlationId;
static fromJSON(o) {
return new AsyncOperationFailed(errors_1.ErrorSerialiser.deserialise(o.error), model_1.CorrelationId.fromJSON(o.correlationId), screenplay_1.Timestamp.fromJSON(o.timestamp));
}
constructor(error, correlationId, timestamp) {
super(timestamp);
this.error = error;
this.correlationId = correlationId;
(0, tiny_types_1.ensure)('error', error, (0, tiny_types_1.isDefined)());
(0, tiny_types_1.ensure)('correlationId', correlationId, (0, tiny_types_1.isDefined)());
}
toJSON() {
return {
correlationId: this.correlationId.toJSON(),
error: errors_1.ErrorSerialiser.serialise(this.error),
timestamp: this.timestamp.toJSON(),
};
}
}
exports.AsyncOperationFailed = AsyncOperationFailed;
//# sourceMappingURL=AsyncOperationFailed.js.map
;