from flask import request, jsonify, g from owsrequest.rules import verify_rules_access_standalone from track.api import create_app from track import service app = create_app() @app.route("/hello/", methods=["GET"]) def health(): return "ok", 200 @app.route("/track/", methods=["GET"]) def get_track(track_id): verify_rules_access_standalone(g.request_context) track = service.get_track(track_id) return jsonify(track.to_dict()) @app.route("/track/", methods=["PUT"]) def update_track(track_id): verify_rules_access_standalone(g.request_context) track = service.update_track(track_id, request.json) return jsonify(track.to_dict()) @app.route("/track/", methods=["DELETE"]) def delete_track(track_id): verify_rules_access_standalone(g.request_context) service.delete_track(track_id) return "", 204 @app.route("/track/search", methods=["POST"]) def search_tracks(): verify_rules_access_standalone(g.request_context) results = service.search(request.json) return jsonify(results)