def post(self): e = Entity() if not request.is_json: e.status = Status.FAILED e.data = {"MESSAGE": "Missing JSON request body"} return e.to_dict(), 400 usr = request.json.get("USERNAME", None) pwd = request.json.get("PASSWORD", None) if usr is None or pwd is None: e.status = Status.FAILED e.data = { "MESSAGE": "Missing one of the login parameters", "USERNAME": usr, "PASSWORD": pwd } return e.to_dict(), 400 else: for u in USERS: if u.get("USERNAME") == usr and u.get("PASSWORD") == pwd: token = create_access_token(identity=usr) e.status = Status.SUCCESS e.data = {"TOKEN": token} break else: e.status = Status.SUCCESS e.data = {"MESSAGE": "User is not authorized to access API"} return e.to_dict(), 200
def get(self, name): """Description: GET generate python project from registered project :param name: Project name to generate from :return: Entity object with request status """ p = ProjectManager.get_project(name) e = Entity() if p is not None: e.status = PythonGenerator.generate(p) else: e.status = Status.GENERATION_FAILED return e.to_dict()
def post(self): """Description: POST register project :return: Registration status """ e = Entity() if isinstance(flask_restful.request.get_json(), str): data = json.loads(flask_restful.request.get_json()) elif isinstance(flask_restful.request.get_json(), dict): data = flask_restful.request.get_json() else: data = dict() p = ProjectManager.create_project(data) e.status = ProjectManager.add_project(p) return e.to_dict()
def put(self, name): """Description: PUT updates project and it`s content :param name: Project name :return: Request status """ e = Entity() p = ProjectManager.get_project(name) if isinstance(flask_restful.request.get_json(), str): data = json.loads(flask_restful.request.get_json()) elif isinstance(flask_restful.request.get_json(), dict): data = flask_restful.request.get_json() else: data = dict() e.status = ProjectManager.update_project(p, data) return e.to_dict()