'Handle a single XML-RPC request passed through a CGI post method.
If no XML data is given then it is read from stdin. The resulting
XML-RPC response is printed to stdout along with the correct HTTP
headers.'

def handle_request(self, request_text=None):

    if ((request_text is None) and (os.environ.get('REQUEST_METHOD', None) == 'GET')):
        self.handle_get()
    else:
        try:
            length = int(os.environ.get('CONTENT_LENGTH', None))
        except (TypeError, ValueError):
            length = (-1)
        if (request_text is None):
            request_text = sys.stdin.read(length)
        self.handle_xmlrpc(request_text)
    return
