(
url: string,
key: string,
getImports: () => Record<string, unknown>,
logger: (msg: string) => void = console.log,
tensorCacheUrl = "",
tensorCacheDevice = "cpu",
initProgressCallback: runtime.InitProgressCallback | undefined = undefined,
asyncOnServerLoad: ((inst: runtime.Instance) => Promise<void>) | undefined = undefined,
)
| 98 | private messageQueue: Array<Uint8Array> = []; |
| 99 | |
| 100 | constructor( |
| 101 | url: string, |
| 102 | key: string, |
| 103 | getImports: () => Record<string, unknown>, |
| 104 | logger: (msg: string) => void = console.log, |
| 105 | tensorCacheUrl = "", |
| 106 | tensorCacheDevice = "cpu", |
| 107 | initProgressCallback: runtime.InitProgressCallback | undefined = undefined, |
| 108 | asyncOnServerLoad: ((inst: runtime.Instance) => Promise<void>) | undefined = undefined, |
| 109 | ) { |
| 110 | this.url = url; |
| 111 | this.key = key; |
| 112 | this.name = "WebSocketRPCServer[" + this.key + "]: "; |
| 113 | this.getImports = getImports; |
| 114 | this.logger = logger; |
| 115 | this.tensorCacheUrl = tensorCacheUrl; |
| 116 | this.tensorCacheDevice = tensorCacheDevice; |
| 117 | this.initProgressCallback = initProgressCallback; |
| 118 | this.asyncOnServerLoad = asyncOnServerLoad; |
| 119 | this.checkLittleEndian(); |
| 120 | this.socket = compact.createWebSocket(url); |
| 121 | this.socket.binaryType = "arraybuffer"; |
| 122 | |
| 123 | this.socket.addEventListener("open", (event: Event) => { |
| 124 | return this.onOpen(event); |
| 125 | }); |
| 126 | this.socket.addEventListener("message", (event: MessageEvent) => { |
| 127 | return this.onMessage(event); |
| 128 | }); |
| 129 | this.socket.addEventListener("close", (event: CloseEvent) => { |
| 130 | return this.onClose(event); |
| 131 | }); |
| 132 | } |
| 133 | |
| 134 | private onClose(_event: CloseEvent): void { |
| 135 | if (this.inst !== undefined) { |
nothing calls this directly
no test coverage detected