From 09fd9271c1adc6e0f16c3b73605dcfc5921e993c Mon Sep 17 00:00:00 2001
From: Thomas Kluyver <thomas@kluyver.me.uk>
Date: Wed, 27 Oct 2021 15:00:53 +0100
Subject: [PATCH] Remove unused pdf_queue mechanism

---
 webservice/serve_overview.py | 38 ------------------------------------
 1 file changed, 38 deletions(-)

diff --git a/webservice/serve_overview.py b/webservice/serve_overview.py
index a5c79809e..ded99ef58 100644
--- a/webservice/serve_overview.py
+++ b/webservice/serve_overview.py
@@ -2,7 +2,6 @@ import argparse
 import glob
 import os
 import sqlite3
-from collections import OrderedDict
 from datetime import datetime, timezone
 from http.server import BaseHTTPRequestHandler, HTTPServer
 from pathlib import Path
@@ -21,26 +20,6 @@ except:
     from config import serve_overview as config
 
 
-
-class LimitedSizeDict(OrderedDict):
-    def __init__(self, *args, **kwds):
-        self.size_limit = kwds.pop("size_limit", None)
-        OrderedDict.__init__(self, *args, **kwds)
-        self._check_size_limit()
-
-    def __setitem__(self, key, value):
-        OrderedDict.__setitem__(self, key, value)
-        self._check_size_limit()
-
-    def _check_size_limit(self):
-        if self.size_limit is not None:
-            while len(self) > self.size_limit:
-                self.popitem(last=False)
-
-
-pdf_queue = LimitedSizeDict(size_limit=50)
-
-
 # HTTPRequestHandler class
 class RequestHandler(BaseHTTPRequestHandler):
     conf_was_init = False
@@ -56,7 +35,6 @@ class RequestHandler(BaseHTTPRequestHandler):
             with open(tfile, "r") as tf:
                 self.templates[template] = tf.read()
 
-        self.pdf_queue = pdf_queue
         self.conf_was_init = True
 
     def serve_css(self):
@@ -66,19 +44,6 @@ class RequestHandler(BaseHTTPRequestHandler):
         self.end_headers()
         self.wfile.write(self.templates["css"].encode('utf-8'))
 
-    def serve_pdf(self):
-        """Serve pdf?id """
-        puuid = self.path.split("?")[1]
-        fpath = self.pdf_queue.get(puuid, None)
-        if fpath is None:
-            return self.send_error(404)
-        self.send_response(200)
-        self.send_header('Content-type', 'application/pdf')
-        self.send_header('Content-Length', str(os.stat(fpath).st_size))
-        self.end_headers()
-        with open(fpath, "rb") as f:
-            copyfileobj(f, self.wfile)
-
     def serve_dark_overview(self):
         # Send headers
         self.send_response(200)
@@ -149,9 +114,6 @@ class RequestHandler(BaseHTTPRequestHandler):
         if "/serve_overview.css" in self.path:
             return self.serve_css()
 
-        if "pdf?" in self.path:
-            return self.serve_pdf()
-
         if "dark?" in self.path:
             return self.serve_dark_overview()
 
-- 
GitLab