aboutsummaryrefslogtreecommitdiff
path: root/web/controllers
diff options
context:
space:
mode:
authorneodarz <neodarz@neodarz.net>2017-02-17 11:33:27 +0100
committerneodarz <neodarz@neodarz.net>2017-02-17 11:33:27 +0100
commit708dc012953f555e0434b366cb004977d0821979 (patch)
tree04c2ba93a0740c123a650a113747f25b4080a0a3 /web/controllers
parent92237133291873f841ccb1808ebc45318494dec0 (diff)
downloadthe_transcriber_backend-708dc012953f555e0434b366cb004977d0821979.tar.xz
the_transcriber_backend-708dc012953f555e0434b366cb004977d0821979.zip
Adding error handling
Diffstat (limited to 'web/controllers')
-rw-r--r--web/controllers/audio_file_api_controller.ex18
1 files changed, 13 insertions, 5 deletions
diff --git a/web/controllers/audio_file_api_controller.ex b/web/controllers/audio_file_api_controller.ex
index 11ae1a7..afc23ac 100644
--- a/web/controllers/audio_file_api_controller.ex
+++ b/web/controllers/audio_file_api_controller.ex
@@ -51,12 +51,20 @@ defmodule TheTranscriberBackend.AudioFileAPIController do
end
def delete(conn, %{"id" => id}) do
+ path = "/media/phoenix_test/"
audio_file_api = Repo.get!(AudioFileAPI, id)
+ cond do
+ audio_file_api !=nil ->
+ # Here we use delete! (with a bang) because we expect
+ # it to always work (and if it does not, it will raise).
+ File.rm("#{path}#{audio_file_api.id}_#{audio_file_api.audio_path}")
+ Repo.delete!(audio_file_api)
- # Here we use delete! (with a bang) because we expect
- # it to always work (and if it does not, it will raise).
- Repo.delete!(audio_file_api)
-
- send_resp(conn, :no_content, "")
+ conn
+ |> send_resp(200, "Audio file deleted successfully.")
+ audio_file_api == nil ->
+ conn
+ |> send_resp(404, "File not found in database !")
+ end
end
end