Skip to content

Commit

Permalink
Fix most of D102 pep257 errors
Browse files Browse the repository at this point in the history
  • Loading branch information
webknjaz committed Jun 19, 2017
1 parent fa8a32c commit 2ec5477
Showing 1 changed file with 85 additions and 0 deletions.
85 changes: 85 additions & 0 deletions cheroot/server.py
Original file line number Diff line number Diff line change
Expand Up @@ -223,12 +223,28 @@ def _check_length(self):
raise errors.MaxSizeExceeded()

def read(self, size=None):
"""Read a chunk from rfile buffer and return it.
Args:
size (int): amount of data to read
Returns:
bytes: Chunk from rfile, limited by size if specified.
"""
data = self.rfile.read(size)
self.bytes_read += len(data)
self._check_length()
return data

def readline(self, size=None):
"""Read a single line from rfile buffer and return it.
Args:
size (int): minimum amount of data to read
Returns:
bytes: One line from rfile.
"""
if size is not None:
data = self.rfile.readline(size)
self.bytes_read += len(data)
Expand All @@ -248,6 +264,14 @@ def readline(self, size=None):
return EMPTY.join(res)

def readlines(self, sizehint=0):
"""Read all lines from rfile buffer and return them.
Args:
sizehint (int): hint of minimum amount of data to read
Returns:
list[bytes]: Lines of bytes read from rfile.
"""
# Shamelessly stolen from StringIO
total = 0
lines = []
Expand All @@ -261,6 +285,7 @@ def readlines(self, sizehint=0):
return lines

def close(self):
"""Release resources allocated for rfile."""
self.rfile.close()

def __iter__(self):
Expand Down Expand Up @@ -295,6 +320,14 @@ def __init__(self, rfile, content_length):
self.remaining = content_length

def read(self, size=None):
"""Read a chunk from rfile buffer and return it.
Args:
size (int): amount of data to read
Returns:
bytes: Chunk from rfile, limited by size if specified.
"""
if self.remaining == 0:
return b''
if size is None:
Expand All @@ -307,6 +340,14 @@ def read(self, size=None):
return data

def readline(self, size=None):
"""Read a single line from rfile buffer and return it.
Args:
size (int): minimum amount of data to read
Returns:
bytes: One line from rfile.
"""
if self.remaining == 0:
return b''
if size is None:
Expand All @@ -319,6 +360,14 @@ def readline(self, size=None):
return data

def readlines(self, sizehint=0):
"""Read all lines from rfile buffer and return them.
Args:
sizehint (int): hint of minimum amount of data to read
Returns:
list[bytes]: Lines of bytes read from rfile.
"""
# Shamelessly stolen from StringIO
total = 0
lines = []
Expand All @@ -332,6 +381,7 @@ def readlines(self, sizehint=0):
return lines

def close(self):
"""Release resources allocated for rfile."""
self.rfile.close()

def __iter__(self):
Expand Down Expand Up @@ -406,6 +456,14 @@ def _fetch(self):
'got ' + repr(crlf) + ')')

def read(self, size=None):
"""Read a chunk from rfile buffer and return it.
Args:
size (int): amount of data to read
Returns:
bytes: Chunk from rfile, limited by size if specified.
"""
data = EMPTY
while True:
if size and len(data) >= size:
Expand All @@ -425,6 +483,14 @@ def read(self, size=None):
data += self.buffer

def readline(self, size=None):
"""Read a single line from rfile buffer and return it.
Args:
size (int): minimum amount of data to read
Returns:
bytes: One line from rfile.
"""
data = EMPTY
while True:
if size and len(data) >= size:
Expand Down Expand Up @@ -454,6 +520,14 @@ def readline(self, size=None):
self.buffer = self.buffer[newline_pos:]

def readlines(self, sizehint=0):
"""Read all lines from rfile buffer and return them.
Args:
sizehint (int): hint of minimum amount of data to read
Returns:
list[bytes]: Lines of bytes read from rfile.
"""
# Shamelessly stolen from StringIO
total = 0
lines = []
Expand All @@ -467,6 +541,11 @@ def readlines(self, sizehint=0):
return lines

def read_trailer_lines(self):
"""Read HTTP headers and yield them.
Returns:
Generator: yields CRLF separated lines.
"""
if not self.closed:
raise ValueError(
'Cannot read trailers until the request body has been read.')
Expand All @@ -490,6 +569,7 @@ def read_trailer_lines(self):
yield line

def close(self):
"""Release resources allocated for rfile."""
self.rfile.close()


Expand Down Expand Up @@ -588,6 +668,11 @@ def parse_request(self):
self.ready = True

def read_request_line(self):
"""Read and parse first line of the HTTP request.
Returns:
bool: True if the request line is valid or False if it's malformed.
"""
# HTTP/1.1 connections are persistent by default. If a client
# requests a page, then idles (leaves the connection open),
# then rfile.readline() will raise socket.error("timed out").
Expand Down

0 comments on commit 2ec5477

Please sign in to comment.