'Sends the HTTP header and a response list
message       -- The body of the response to send
header_list   -- A list of custom headers to send,
containing key-value tuples
code          -- The HTTP response code to send
mimetype      -- The MIME type to send as \'Content-Type\' value
suppress_body -- Set this to True to ignore the message parameter
and not send any response body'

def send_full_response(self, message, code=200, msg='OK', mimetype='text/html', header_list=[], cachectrl=None, suppress_body=False):

    message = unicode(message).encode('utf-8')
    self.log_request(code, ((message and len(message)) or '-'))
    self.send_http_response(code, msg)
    if (code == 401):
        self.send_header('WWW-Authenticate', ('Basic    realm    =    MP%d' % (time.time() / 3600)))
    headers = []
    if (not suppress_body):
        (message, headers) = self._maybe_gzip(message, len((message or '')), [])
    self.send_standard_headers(header_list=(header_list + headers), mimetype=mimetype, cachectrl=(cachectrl or 'no-cache'))
    if (not suppress_body):
        self.wfile.write((message or ''))
