in src/common/ConnectionMessage.ts [22:47]
public constructor(
messageType: MessageType,
body: any,
headers?: IStringDictionary<string>,
id?: string) {
if (messageType === MessageType.Text && body && !(typeof (body) === "string")) {
throw new InvalidOperationError("Payload must be a string");
}
if (messageType === MessageType.Binary && body && !(body instanceof ArrayBuffer)) {
throw new InvalidOperationError("Payload must be ArrayBuffer");
}
this.privMessageType = messageType;
this.privBody = body;
this.privHeaders = headers ? headers : {};
this.privId = id ? id : createNoDashGuid();
switch (this.messageType) {
case MessageType.Binary:
this.privSize = this.binaryBody !== null ? this.binaryBody.byteLength : 0;
break;
case MessageType.Text:
this.privSize = this.textBody.length;
}
}