refactor: cleanup error messages in TS examples
[poolifier.git] / examples / typescript / websocket-server-pool / ws-cluster / src / worker.ts
index 56060b2d28b043d40eb3dad1cf4f7ed52d33db8b..f261a6d74413f34ee7ab6e368e03a204db6bd8b9 100644 (file)
@@ -16,51 +16,43 @@ const factorial: (n: number) => number = n => {
 }
 
 const startWebSocketServer = (workerData?: WorkerData): WorkerResponse => {
-  try {
-    const wss = new WebSocketServer({ port: workerData?.port }, () => {
-      console.info(
-        `⚡️[ws server]: WebSocket server is started on worker at ws://localhost:${
-          workerData?.port as number
-        }/`
-      )
-    })
+  const { port } = workerData as WorkerData
+  const wss = new WebSocketServer({ port }, () => {
+    console.info(
+      `⚡️[ws server]: WebSocket server is started in cluster worker at ws://localhost:${port}/`
+    )
+  })
 
-    wss.on('connection', ws => {
-      ws.on('error', console.error)
-      ws.on('message', (message: RawData) => {
-        const { type, data } = JSON.parse(
-          // eslint-disable-next-line @typescript-eslint/no-base-to-string
-          message.toString()
-        ) as MessagePayload<DataPayload>
-        switch (type) {
-          case MessageType.echo:
-            ws.send(
-              JSON.stringify({
-                type: MessageType.echo,
-                data
-              })
-            )
-            break
-          case MessageType.factorial:
-            ws.send(
-              JSON.stringify({
-                type: MessageType.factorial,
-                data: { number: factorial(data.number as number) }
-              })
-            )
-            break
-        }
-      })
+  wss.on('connection', ws => {
+    ws.on('error', console.error)
+    ws.on('message', (message: RawData) => {
+      const { type, data } = JSON.parse(
+        // eslint-disable-next-line @typescript-eslint/no-base-to-string
+        message.toString()
+      ) as MessagePayload<DataPayload>
+      switch (type) {
+        case MessageType.echo:
+          ws.send(
+            JSON.stringify({
+              type: MessageType.echo,
+              data
+            })
+          )
+          break
+        case MessageType.factorial:
+          ws.send(
+            JSON.stringify({
+              type: MessageType.factorial,
+              data: { number: factorial(data.number as number) }
+            })
+          )
+          break
+      }
     })
-    return {
-      status: true,
-      port: wss.options.port
-    }
-  } catch (err) {
-    return {
-      status: false,
-      error: err as Error
-    }
+  })
+  return {
+    status: true,
+    port: wss.options.port
   }
 }