aboutsummaryrefslogtreecommitdiff
path: root/lib/pleroma/uploaders/swift/uploader.ex
blob: c71808c2deac815da03a75a31132618d8c94d8c5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
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