From 54bf617d09f50d02adbbceb6d6238150026b6da4 Mon Sep 17 00:00:00 2001 From: Gavin D'souza Date: Mon, 14 Nov 2022 18:00:32 +0530 Subject: [PATCH] perf(socketio): get_site_name The usages and number of conditions evaluated in the function called for some sort of a cache. If the site name is evaluated once, store it in the socket object! --- socketio.js | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/socketio.js b/socketio.js index d1fce081bb..716b37b5e6 100644 --- a/socketio.js +++ b/socketio.js @@ -226,21 +226,22 @@ function get_task_room(socket, task_id) { } function get_site_name(socket) { - var hostname_from_host = get_hostname(socket.request.headers.host); - - if (socket.request.headers["x-frappe-site-name"]) { - return get_hostname(socket.request.headers["x-frappe-site-name"]); + if (socket.site_name) { + return socket.site_name; + } else if (socket.request.headers["x-frappe-site-name"]) { + socket.site_name = get_hostname(socket.request.headers["x-frappe-site-name"]); } else if ( - ["localhost", "127.0.0.1"].indexOf(hostname_from_host) !== -1 && - conf.default_site + conf.default_site && + ["localhost", "127.0.0.1"].indexOf(get_hostname(socket.request.headers.host)) !== -1 ) { // from currentsite.txt since host is localhost - return conf.default_site; + socket.site_name = conf.default_site; } else if (socket.request.headers.origin) { - return get_hostname(socket.request.headers.origin); + socket.site_name = get_hostname(socket.request.headers.origin); } else { - return get_hostname(socket.request.headers.host); + socket.site_name = get_hostname(socket.request.headers.host); } + return socket.site_name; } function get_hostname(url) {