turn this thing into a HTTP endpoint
This commit is contained in:
parent
ceb2567ef9
commit
8359d6e521
33 changed files with 1321 additions and 514 deletions
29
src/mtl/run_server.py
Normal file
29
src/mtl/run_server.py
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
from .parser import parse
|
||||
from flask import Flask, request, make_response, jsonify
|
||||
from flask_cors import CORS
|
||||
|
||||
app = Flask(__name__)
|
||||
CORS(app) # side effects, always nice
|
||||
|
||||
@app.route("/check_property", methods=["POST"])
|
||||
def check_property():
|
||||
data = request.get_json(); # parse body
|
||||
prop = data.get("property")
|
||||
try:
|
||||
phi = parse(prop)
|
||||
except Exception as e:
|
||||
res = make_response(jsonify("error: " + str(e)))
|
||||
res.headers['Access-Control-Allow-Origin'] = '*'
|
||||
res.content_type = "application/json"
|
||||
return res
|
||||
traces = data.get("traces")
|
||||
processed_traces = {}
|
||||
for trace_name, trace in traces.items():
|
||||
processed_traces[trace_name] = [(simtime, value) for [simtime, value] in trace]
|
||||
res = make_response(jsonify(phi(processed_traces, time=None, quantitative=False)))
|
||||
res.headers['Access-Control-Allow-Origin'] = '*'
|
||||
res.content_type = "application/json"
|
||||
return res
|
||||
|
||||
def run_server():
|
||||
app.run(host="127.0.0.1", port=15478, threaded=True)
|
||||
Loading…
Add table
Add a link
Reference in a new issue