'Start HTTPServer.'

def Start(self):

    adminui_max_port = config.CONFIG.Get('AdminUI.port_max', config.CONFIG['AdminUI.port'])
    additional_ports = (adminui_max_port - config.CONFIG['AdminUI.port'])
    max_port = (self.port + additional_ports)
    for port in range(self.port, (max_port + 1)):
        try:
            server = BaseHTTPServer.HTTPServer(('', port), StatsServerHandler)
            break
        except socket.error as e:
            if ((e.errno == socket.errno.EADDRINUSE) and (port < max_port)):
                logging.info('Port    %s    in    use,    trying    %s', port, (port + 1))
            else:
                raise
    server_thread = threading.Thread(target=server.serve_forever)
    server_thread.daemon = True
    server_thread.start()
