All files / uasc SecureConversationMessageHeader.js

100% Statements 21/21
97.44% Branches 38/39
100% Functions 4/4
100% Lines 21/21

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34  56x 56x   56x 56x         2x 2x 2x 2x     1x 1x 1x 1x 1x 1x     1x 1x 1x 1x 1x 1x     56x  
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const Bucket_1 = __importDefault(require("../ua/Bucket"));
// https://reference.opcfoundation.org/v104/Core/docs/Part6/6.7.2/#6.7.2.2
class SecureConversationMessageHeader {
    constructor(options) {
        var _a, _b, _c, _d, _e, _f, _g, _h;
        this.MessageType = (_b = (_a = options) === null || _a === void 0 ? void 0 : _a.MessageType, (_b !== null && _b !== void 0 ? _b : ''));
        this.IsFinal = (_d = (_c = options) === null || _c === void 0 ? void 0 : _c.IsFinal, (_d !== null && _d !== void 0 ? _d : ''));
        this.MessageSize = (_f = (_e = options) === null || _e === void 0 ? void 0 : _e.MessageSize, (_f !== null && _f !== void 0 ? _f : 0));
        this.SecureChannelId = (_h = (_g = options) === null || _g === void 0 ? void 0 : _g.SecureChannelId, (_h !== null && _h !== void 0 ? _h : 0));
    }
    encode() {
        const bucket = new Bucket_1.default();
        bucket.writeStringBytes(this.MessageType);
        bucket.writeStringBytes(this.IsFinal);
        bucket.writeUint32(this.MessageSize);
        bucket.writeUint32(this.SecureChannelId);
        return bucket.bytes;
    }
    decode(b, position) {
        const bucket = new Bucket_1.default(b, position);
        this.MessageType = bucket.readStringBytes(3);
        this.IsFinal = bucket.readStringBytes(1);
        this.MessageSize = bucket.readUint32();
        this.SecureChannelId = bucket.readUint32();
        return bucket.position;
    }
}
exports.default = SecureConversationMessageHeader;