diff options
author | Thurloat <thurloat@gmail.com> | 2018-08-28 09:57:41 -0300 |
---|---|---|
committer | Thurloat <thurloat@gmail.com> | 2018-08-28 09:57:41 -0300 |
commit | 8d2d7a8859754ab4beffcc43a87218631b07f378 (patch) | |
tree | 22a0cda957f14435c516ed1da53b5e9c7db9855d /lib | |
parent | 0df558a6a5f5a5f64de57c91074981429da08764 (diff) | |
download | pleroma-8d2d7a8859754ab4beffcc43a87218631b07f378.tar.gz |
Implement uploader behaviour
run formatter <#
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pleroma/upload.ex | 9 | ||||
-rw-r--r-- | lib/pleroma/uploaders/local.ex | 2 | ||||
-rw-r--r-- | lib/pleroma/uploaders/s3.ex | 2 | ||||
-rw-r--r-- | lib/pleroma/uploaders/swift.ex | 1 |
4 files changed, 8 insertions, 6 deletions
diff --git a/lib/pleroma/upload.ex b/lib/pleroma/upload.ex index e3ad6757b..e786693ad 100644 --- a/lib/pleroma/upload.ex +++ b/lib/pleroma/upload.ex @@ -1,17 +1,17 @@ defmodule Pleroma.Upload do alias Ecto.UUID - def store(%Plug.Upload{} = file, should_dedupe) do - settings = Application.get_env(:pleroma, Pleroma.Upload) - storage_backend = Keyword.fetch!(settings, :storage_backend) + @storage_backend Application.get_env(:pleroma, Pleroma.Upload) + |> Keyword.fetch!(:uploader) + def store(%Plug.Upload{} = file, should_dedupe) do content_type = get_content_type(file.path) uuid = get_uuid(file, should_dedupe) name = get_name(file, uuid, content_type, should_dedupe) strip_exif_data(content_type, file.path) - url_path = storage_backend.put_file(name, uuid, content_type) + url_path = @storage_backend.put_file(name, uuid, file, content_type, should_dedupe) %{ "type" => "Document", @@ -25,6 +25,7 @@ defmodule Pleroma.Upload do "name" => name } end + """ # XXX: does this code actually work? i am skeptical. --kaniini def store(%{"img" => "data:image/" <> image_data}, should_dedupe) do diff --git a/lib/pleroma/uploaders/local.ex b/lib/pleroma/uploaders/local.ex index 1ba68776f..b089c8f14 100644 --- a/lib/pleroma/uploaders/local.ex +++ b/lib/pleroma/uploaders/local.ex @@ -1,9 +1,9 @@ defmodule Pleroma.Uploaders.Local do + @behaviour Pleroma.Uploaders.Uploader alias Pleroma.Web def put_file(name, uuid, file, _content_type, should_dedupe) do - upload_folder = get_upload_path(uuid, should_dedupe) url_path = get_url(name, uuid, should_dedupe) diff --git a/lib/pleroma/uploaders/s3.ex b/lib/pleroma/uploaders/s3.ex index ea9e49cbf..e18deb6b3 100644 --- a/lib/pleroma/uploaders/s3.ex +++ b/lib/pleroma/uploaders/s3.ex @@ -1,7 +1,7 @@ defmodule Pleroma.Uploaders.S3 do + @behaviour Pleroma.Uploaders.Uploader def put_file(name, uuid, path, content_type, _should_dedupe) do - settings = Application.get_env(:pleroma, Pleroma.Uploaders.S3) bucket = Keyword.fetch!(settings, :bucket) public_endpoint = Keyword.fetch!(settings, :public_endpoint) diff --git a/lib/pleroma/uploaders/swift.ex b/lib/pleroma/uploaders/swift.ex index e69de29bb..8b1378917 100644 --- a/lib/pleroma/uploaders/swift.ex +++ b/lib/pleroma/uploaders/swift.ex @@ -0,0 +1 @@ + |