diff options
author | Thurloat <thurloat@gmail.com> | 2018-08-29 22:07:28 -0300 |
---|---|---|
committer | Thurloat <thurloat@gmail.com> | 2018-08-29 22:07:28 -0300 |
commit | af01f0196a43454728f6e0ca8b9b8be208743251 (patch) | |
tree | 69b055a949545e75c6fe7e2a08d1185ea4d46b14 /lib/pleroma/uploaders/swift | |
parent | d424e9fa5f3d0d1ff9e416f6bf548e0e8bb02361 (diff) | |
download | pleroma-af01f0196a43454728f6e0ca8b9b8be208743251.tar.gz |
Add backend failure handling with :ok | :error so the uploader can handle it.
defaulting to :ok, since that's the currently level of error handling.
Diffstat (limited to 'lib/pleroma/uploaders/swift')
-rw-r--r-- | lib/pleroma/uploaders/swift/swift.ex | 10 | ||||
-rw-r--r-- | lib/pleroma/uploaders/swift/uploader.ex | 5 |
2 files changed, 4 insertions, 11 deletions
diff --git a/lib/pleroma/uploaders/swift/swift.ex b/lib/pleroma/uploaders/swift/swift.ex index 4f45255f1..819dfebda 100644 --- a/lib/pleroma/uploaders/swift/swift.ex +++ b/lib/pleroma/uploaders/swift/swift.ex @@ -11,20 +11,18 @@ defmodule Pleroma.Uploaders.Swift.Client do end def upload_file(filename, body, content_type) do + object_url = Keyword.fetch!(@settings, :object_url) token = Pleroma.Uploaders.Swift.Keystone.get_token() case put("#{filename}", body, "X-Auth-Token": token, "Content-Type": content_type) do {:ok, %HTTPoison.Response{status_code: 201}} -> - # lgtm - "" + {:ok, "#{object_url}/#{filename}"} {:ok, %HTTPoison.Response{status_code: 401}} -> - # bad token - "" + {:error, "Unauthorized, Bad Token"} {:error, _} -> - # bad news - "" + {:error, "Swift Upload Error"} end end end diff --git a/lib/pleroma/uploaders/swift/uploader.ex b/lib/pleroma/uploaders/swift/uploader.ex index c71808c2d..794f76cb0 100644 --- a/lib/pleroma/uploaders/swift/uploader.ex +++ b/lib/pleroma/uploaders/swift/uploader.ex @@ -1,15 +1,10 @@ defmodule Pleroma.Uploaders.Swift do @behaviour Pleroma.Uploaders.Uploader - @settings Application.get_env(:pleroma, Pleroma.Uploaders.Swift) - def put_file(name, uuid, tmp_path, content_type, _should_dedupe) do {:ok, file_data} = File.read(tmp_path) remote_name = "#{uuid}/#{name}" Pleroma.Uploaders.Swift.Client.upload_file(remote_name, file_data, content_type) - - object_url = Keyword.fetch!(@settings, :object_url) - "#{object_url}/#{remote_name}" end end |