def update_friend(id: str) -> Response: """ Update all aspects of a Friend resource. Use a JSON representation to fully update an existing friend resource. Args: id: The unique identifier of a Friend resouce Returns: A flask.Response object. """ try: payload = api_helpers.json_payload(request) api_helpers.required_elements_exist(payload) except ValueError as error: error_response = make_response(jsonify({"error": str(error)}), 400) return error_response friend = datastore.existing_friend(payload['id']) if friend: friend.update({ "id": payload["id"], "first_name": payload["firstName"], "last_name": payload["lastName"], "telephone": payload["telephone"], "email": payload["email"], "notes": payload["notes"], }) response = make_response( jsonify({ "message": "Friend resource {} updated.".format(payload['id']) })) return response else: response = make_response( jsonify({ "error": "Friend resource {} not found.".format(payload['id']) }), 404) return response
def update_friend(id: str) -> Response: """ Update all aspects of a Friend resource. Use a JSON representation to fully update an existing friend resource. Args: id: The unique identifier of a Friend resouce Returns: A flask.Response object. """ try: payload = api_helpers.json_payload(request) api_helpers.required_elements_exist(payload) except ValueError as error: error_response = make_response(jsonify({"error": str(error)}), 400) return error_response friend = datastore.existing_friend(payload['id']) if friend: friend.update({ "id": payload["id"], "first_name": payload["firstName"], "last_name": payload["lastName"], "telephone": payload["telephone"], "email": payload["email"], "notes": payload["notes"], }) response = make_response( jsonify({"message": "Friend resource {} updated.".format( payload['id'])})) return response else: response = make_response( jsonify({"error": "Friend resource {} not found.".format( payload['id'])}), 404) return response
def create_friend() -> Response: """ Create a new friend resource. Utilize a JSON representation/payload in the request object to create a new friend resource. Returns: A flask.Response object. """ #DEP_01: Remove dependency on datastore try: payload = api_helpers.json_payload(request) api_helpers.required_elements_exist(payload) except ValueError as error: error_response = make_response(jsonify({"error": str(error)}), 400) return error_response if datastore.existing_friend(payload['id']): response = make_response( jsonify( {"error": "The specified friend resource already exists."}), 400 ) else: datastore.friends.append({ "id": payload["id"], "first_name": payload["firstName"], "last_name": payload["lastName"], "telephone": payload["telephone"], "email": payload["email"], "notes": payload["notes"], }) response = make_response( jsonify({"message": "Friend resource created."}), 201) return response
def create_friend() -> Response: """ Create a new friend resource. Utilize a JSON representation/payload in the request object to create a new friend resource. Returns: A flask.Response object. """ #DEP_01: Remove dependency on datastore try: payload = api_helpers.json_payload(request) api_helpers.required_elements_exist(payload) except ValueError as error: error_response = make_response(jsonify({"error": str(error)}), 400) return error_response if datastore.existing_friend(payload['id']): response = make_response( jsonify({"error": "The specified friend resource already exists."}), 400) else: datastore._friends.append({ "id": payload["id"], "first_name": payload["firstName"], "last_name": payload["lastName"], "telephone": payload["telephone"], "email": payload["email"], "notes": payload["notes"], }) response = make_response( jsonify({"message": "Friend resource created."}), 201) return response