tidy up variable names

This commit is contained in:
Cal 2023-12-20 10:39:48 -07:00
parent 96baa05f1d
commit a0b3b9649b
2 changed files with 38 additions and 13 deletions

View file

@ -68,7 +68,7 @@ class WebSocketClient(WebSocketServerProtocol, _BASE_SESSION_CLASS):
"""
try:
# client will connect with wsurl?csessid&browserid
# client will connect with wsurl?csessid&page_id&browserid
webarg = self.http_request_uri.split("?", 1)[1]
except IndexError:
# this may happen for custom webclients not caring for the
@ -86,7 +86,7 @@ class WebSocketClient(WebSocketServerProtocol, _BASE_SESSION_CLASS):
if len(cargs) == 1:
self.browserstr = str(cargs[0])
elif len(cargs) == 2:
self.cuid = str(cargs[0])
self.page_id = str(cargs[0])
self.browserstr = str(cargs[1])
if self.csessid:

View file

@ -270,6 +270,18 @@ class AjaxWebClient(resource.Resource):
"""
return html.escape(request.args[b"csessid"][0].decode("utf-8"))
def get_client_page_id(self, request):
"""
Helper to get the client page id out of the request.
Args:
request (Request): Incoming request object.
Returns:
csessid (int): The client-page id.
"""
return html.escape(request.args[b"cuid"][0].decode("utf-8"))
def get_browserstr(self, request):
"""
Get browser-string out of the request.
@ -313,10 +325,10 @@ class AjaxWebClient(resource.Resource):
def client_disconnect(self, csessid):
"""
Disconnect session with given csessid.
Disconnect session with given id.
Args:
csessid (int): Session id.
csessid (int): Client page+session id.
"""
if csessid in self.requests:
@ -324,6 +336,11 @@ class AjaxWebClient(resource.Resource):
del self.requests[csessid]
if csessid in self.databuffer:
del self.databuffer[csessid]
if csessid in self.requests:
self.requests[csessid].finish()
del self.requests[csessid]
if csessid in self.databuffer:
del self.databuffer[csessid]
def mode_init(self, request):
"""
@ -334,7 +351,8 @@ class AjaxWebClient(resource.Resource):
request (Request): Incoming request.
"""
csessid = self.get_client_sessid(request)
session_id = self.get_client_sessid(request)
page_id = self.get_client_page_id(request)
browserstr = self.get_browserstr(request)
remote_addr = ip_from_request(request)
@ -349,9 +367,9 @@ class AjaxWebClient(resource.Resource):
sess.client = self
sess.init_session("ajax/comet", remote_addr, self.sessionhandler)
sess.csessid = csessid
sess.csessid = session_id+page_id
sess.browserstr = browserstr
csession = _CLIENT_SESSIONS(session_key=sess.csessid)
csession = _CLIENT_SESSIONS(session_key=session_id)
uid = csession and csession.get("webclient_authenticated_uid", False)
if uid:
# the client session is already logged in
@ -359,7 +377,7 @@ class AjaxWebClient(resource.Resource):
sess.logged_in = True
# watch for dead links
self.last_alive[csessid] = (time.time(), False)
self.last_alive[sess.csessid] = (time.time(), False)
if not self.keep_alive:
# the keepalive is not running; start it.
self.keep_alive = LoopingCall(self._keepalive)
@ -373,7 +391,7 @@ class AjaxWebClient(resource.Resource):
# actually do the connection
sess.sessionhandler.connect(sess)
return jsonify({"msg": host_string, "csessid": csessid})
return jsonify({"msg": host_string, "csessid": session_id})
def mode_keepalive(self, request):
"""
@ -384,7 +402,7 @@ class AjaxWebClient(resource.Resource):
request (Request): Incoming request.
"""
csessid = self.get_client_sessid(request)
csessid = self.get_client_sessid(request) + self.get_client_page_id(request)
self.last_alive[csessid] = (time.time(), False)
return b'""'
@ -397,7 +415,7 @@ class AjaxWebClient(resource.Resource):
request (Request): Incoming request.
"""
csessid = self.get_client_sessid(request)
csessid = self.get_client_sessid(request) + self.get_client_page_id(request)
self.last_alive[csessid] = (time.time(), False)
cmdarray = json.loads(request.args.get(b"data")[0])
for sess in self.sessionhandler.sessions_from_csessid(csessid):
@ -415,9 +433,10 @@ class AjaxWebClient(resource.Resource):
request (Request): Incoming request.
"""
csessid = html.escape(request.args[b"csessid"][0].decode("utf-8"))
csessid = self.get_client_sessid(request) + self.get_client_page_id(request)
self.last_alive[csessid] = (time.time(), False)
dataentries = self.databuffer.get(csessid)
dataentries = self.databuffer.get(csessid)
if dataentries:
# we have data that could not be sent earlier (because client was not
@ -430,6 +449,10 @@ class AjaxWebClient(resource.Resource):
if csessid in self.requests:
self.requests[csessid].finish() # Clear any stale request.
self.requests[csessid] = request
request.notifyFinish().addErrback(self._responseFailed, csessid, request)
if csessid in self.requests:
self.requests[csessid].finish() # Clear any stale request.
self.requests[csessid] = request
return server.NOT_DONE_YET
def mode_close(self, request):
@ -441,12 +464,14 @@ class AjaxWebClient(resource.Resource):
request (Request): Incoming request.
"""
csessid = self.get_client_sessid(request)
csessid = self.get_client_sessid(request) + self.get_client_page_id(request)
try:
sess = self.sessionhandler.sessions_from_csessid(csessid)[0]
sess = self.sessionhandler.sessions_from_csessid(csessid)[0]
sess.sessionhandler.disconnect(sess)
except IndexError:
self.client_disconnect(csessid)
self.client_disconnect(csessid)
return b'""'
def render_POST(self, request):