MCPcopy Create free account
hub / github.com/NativeScript/SimDeck / sendTcpMessageToPort

Function sendTcpMessageToPort

scripts/experimental/swiftui-preview.mjs:558–593  ·  view source on GitHub ↗
(port, message)

Source from the content-addressed store, hash-verified

556}
557
558function sendTcpMessageToPort(port, message) {
559 return new Promise((resolve) => {
560 const socket = net.createConnection({ host: "127.0.0.1", port });
561 let settled = false;
562 let response = "";
563 const settle = (value) => {
564 if (settled) {
565 return;
566 }
567 settled = true;
568 clearTimeout(timer);
569 socket.destroy();
570 resolve(value);
571 };
572 const timer = setTimeout(() => {
573 settle(false);
574 }, 500);
575 socket.once("connect", () => {
576 socket.end(message);
577 });
578 socket.on("data", (data) => {
579 response += data.toString("utf8");
580 if (response.trim().startsWith("OK")) {
581 settle(true);
582 } else if (response.trim().startsWith("ERROR")) {
583 settle(false);
584 }
585 });
586 socket.once("error", () => {
587 settle(false);
588 });
589 socket.once("close", () => {
590 settle(response.trim().startsWith("OK"));
591 });
592 });
593}
594
595function appContainerPath(context) {
596 if (context.containerPath) {

Callers 2

sendTcpReloadBytesFunction · 0.85
sendTcpReloadToPortFunction · 0.85

Calls 3

settleFunction · 0.85
endMethod · 0.80
toStringMethod · 0.80

Tested by

no test coverage detected