@digitalasset/daml-ledger
Version:
DAML Ledger API Node.js bindings
35 lines • 1.49 kB
JavaScript
;
// Copyright (c) 2021 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved.
// SPDX-License-Identifier: Apache-2.0
Object.defineProperty(exports, "__esModule", { value: true });
exports.TreeEventCodec = void 0;
const CreatedEventCodec_1 = require("./CreatedEventCodec");
const ExercisedEventCodec_1 = require("./ExercisedEventCodec");
const transaction_pb_1 = require("../generated/com/daml/ledger/api/v1/transaction_pb");
const ErrorMessages_1 = require("../util/ErrorMessages");
exports.TreeEventCodec = {
deserialize(message) {
if (message.hasCreated()) {
return CreatedEventCodec_1.CreatedEventCodec.deserialize(message.getCreated());
}
else if (message.hasExercised()) {
return ExercisedEventCodec_1.ExercisedEventCodec.deserialize(message.getExercised());
}
else {
throw new Error(ErrorMessages_1.ErrorMessages.unknownDeserialization('Tree Event'));
}
},
serialize(object) {
const message = new transaction_pb_1.TreeEvent();
switch (object.eventType) {
case 'created':
message.setCreated(CreatedEventCodec_1.CreatedEventCodec.serialize(object));
break;
case 'exercised':
message.setExercised(ExercisedEventCodec_1.ExercisedEventCodec.serialize(object));
break;
}
return message;
}
};
//# sourceMappingURL=TreeEventCodec.js.map