| Index: experimental/webtry/server.py
|
| diff --git a/experimental/webtry/server.py b/experimental/webtry/server.py
|
| deleted file mode 100644
|
| index 8367b3e46ab44381ff5c808bf9cb61bb865880b1..0000000000000000000000000000000000000000
|
| --- a/experimental/webtry/server.py
|
| +++ /dev/null
|
| @@ -1,79 +0,0 @@
|
| -import BaseHTTPServer
|
| -import base64
|
| -import json
|
| -import logging
|
| -import string
|
| -import subprocess
|
| -
|
| -HOST_NAME = 'localhost'
|
| -PORT_NUMBER = 8765
|
| -
|
| -def runCode(usercode):
|
| - f = open('template.cpp', 'rb')
|
| - template = string.Template(f.read())
|
| - f.close()
|
| -
|
| - code = template.substitute(usercode=usercode)
|
| -
|
| - f = open('result.cpp', 'wb')
|
| - f.write(code)
|
| - f.close()
|
| -
|
| - msg = ""
|
| - img = ""
|
| - try:
|
| - logging.info("compiling")
|
| - msg = subprocess.check_output('ninja -C ../../out/Debug webtry'.split())
|
| - try:
|
| - logging.info("running")
|
| - msg = subprocess.check_output('../../out/Debug/webtry'.split())
|
| - f = open('foo.png', 'rb')
|
| - img = base64.b64encode(f.read())
|
| - f.close()
|
| - except subprocess.CalledProcessError as e:
|
| - logging.info(e)
|
| - msg = e.output
|
| - except subprocess.CalledProcessError as e:
|
| - logging.info(e)
|
| - msg = e.output
|
| -
|
| - retval = {
|
| - 'message': msg
|
| - }
|
| - if img:
|
| - retval['img'] = img
|
| - return retval
|
| -
|
| -class MyHandler(BaseHTTPServer.BaseHTTPRequestHandler):
|
| - def do_POST(self):
|
| - logging.info("POST")
|
| - body = ""
|
| - l = self.rfile.readline()
|
| - while l.strip() != "EOF":
|
| - body += l
|
| - l = self.rfile.readline()
|
| - self.send_response(200)
|
| - self.send_header("Content-type", "application/json")
|
| - self.end_headers()
|
| - resp = runCode(body)
|
| - self.wfile.write(json.dumps(resp))
|
| - self.end_headers()
|
| -
|
| - def do_GET(self):
|
| - """Respond to a GET request."""
|
| - self.send_response(200)
|
| - self.send_header("Content-type", "text/html")
|
| - self.end_headers()
|
| - f = open('index.html', 'rb')
|
| - self.wfile.write(f.read())
|
| - f.close()
|
| -
|
| -if __name__ == '__main__':
|
| - server_class = BaseHTTPServer.HTTPServer
|
| - httpd = server_class((HOST_NAME, PORT_NUMBER), MyHandler)
|
| - logging.info("Server Start: %s:%s" % (HOST_NAME, PORT_NUMBER))
|
| - try:
|
| - httpd.serve_forever()
|
| - except KeyboardInterrupt:
|
| - pass
|
| - httpd.server_close()
|
|
|