From 9ee90dd6e937ca358cd9deb0d2dd9ec2ac83b1bc Mon Sep 17 00:00:00 2001 From: Camil Staps Date: Thu, 7 Apr 2016 17:10:16 +0200 Subject: Final fixes project 1 --- project1/proj1_s4498062/webhttp/parser.py | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) (limited to 'project1/proj1_s4498062/webhttp/parser.py') diff --git a/project1/proj1_s4498062/webhttp/parser.py b/project1/proj1_s4498062/webhttp/parser.py index 58e83dc..7dbb3b5 100644 --- a/project1/proj1_s4498062/webhttp/parser.py +++ b/project1/proj1_s4498062/webhttp/parser.py @@ -25,13 +25,10 @@ class RequestParser: self.buff += buff requests = self.get_requests() - http_requests = [] for request in requests: http_request = webhttp.message.Request() http_request.parse(request) - http_requests.append(http_request) - - return http_requests + yield http_request def get_requests(self): """Split multiple requests from buffer @@ -40,10 +37,9 @@ class RequestParser: list of str """ requests = self.buff.split('\r\n\r\n') - requests = filter(None, requests) - requests = [r.lstrip() + '\r\n\r\n' for r in requests] - self.buff = '' - return requests + self.buff = requests[-1] + for req in requests[:-1]: + yield req.lstrip() + '\r\n\r\n' class ResponseParser: -- cgit v1.2.3