713
714
private sendRequest(request: IRawRequest): void {
715
>
switch (request.type) {
ipc.ts
716
>
case RequestType.Promise:
717
>
case RequestType.EventListen: {
718
>
const msgLength = this.send([request.type, request.id, request.channelName, request.name], request.arg);
719
>
this.logger?.logOutgoing(msgLength, request.id, RequestInitiator.LocalSide, `${requestTypeToStr(request.type)}: ${request.channelName}.${request.name}`, request.arg);
720
>
return;
721
>
}
722
>
723
>
case RequestType.PromiseCancel:
724
>
case RequestType.EventDispose: {
725
const msgLength = this.send([request.type, request.id]);
726
this.logger?.logOutgoing(msgLength, request.id, RequestInitiator.LocalSide, requestTypeToStr(request.type));
727
return;
728
}
730
>
}
731
732
private send(header: unknown, body: any = undefined): number {
733
>
const writer = new BufferWriter();
ipc.ts
734
>
try {
735
>
serialize(writer, header);
736
>
serialize(writer, body);
737
>
return this.sendBuffer(writer.buffer);
738
>
} finally {
739
>
writer.dispose();
740
>
}
741
>
}
742
743
private sendBuffer(message: VSBuffer): number {