1 defmodule Pleroma.Uploaders.Swift.Client do
4 def process_url(url) do
6 [Pleroma.Config.get!([Pleroma.Uploaders.Swift, :storage_url]), url],
11 def upload_file(filename, body, content_type) do
12 object_url = Pleroma.Config.get!([Pleroma.Uploaders.Swift, :object_url])
13 token = Pleroma.Uploaders.Swift.Keystone.get_token()
15 case put("#{filename}", body, "X-Auth-Token": token, "Content-Type": content_type) do
16 {:ok, %HTTPoison.Response{status_code: 201}} ->
17 {:ok, "#{object_url}/#{filename}"}
19 {:ok, %HTTPoison.Response{status_code: 401}} ->
20 {:error, "Unauthorized, Bad Token"}
23 {:error, "Swift Upload Error"}