blob: 6995b125ff319f715aeaad1ecb8725bf4b3741b4 [file] [log] [blame]
Matteo Scandolo9ce18252017-06-22 10:48:25 -07001from flask import Flask, make_response, request
2from tosca.parser import TOSCA_Parser
3
4BANNER = """
5 _ ______ _____ __________ _____ _________
6 | |/ / __ \/ ___/ /_ __/ __ \/ ___// ____/ |
7 | / / / /\__ \ / / / / / /\__ \/ / / /| |
8 / / /_/ /___/ / / / / /_/ /___/ / /___/ ___ |
9/_/|_\____//____/ /_/ \____//____/\____/_/ |_|
10"""
11
12class TOSCA_WebServer:
13 app = Flask('TOSCA-Web-Server')
14
15 @app.route("/", methods=['GET', 'POST'])
16 def home():
17 if request.method == 'GET':
18 response = make_response(BANNER)
19 response.headers["content-type"] = "text/plain"
20 return response
21 else:
22 try:
23 # print request.headers['xos-password']
24 parsed = TOSCA_Parser(request.get_data())
Matteo Scandolo485b7132017-06-30 11:46:47 -070025 response_text = "Created models: %s" % str(parsed.ordered_models_name)
26 return make_response(response_text, 201)
Matteo Scandolo9ce18252017-06-22 10:48:25 -070027 except Exception, e:
28 return make_response(e.message, 400)
29
30 def __init__(self):
31 self.app.run(host='localhost', port='9200')