Merge branch 'feature/oauth-me' into 'develop'
[akkoma] / lib / pleroma / http / connection.ex
index 5e8f2aabd1b3ed26b70ea548cae283da232962a3..c0173465ab741d9bf39b41750865cdbe7f30c3e7 100644 (file)
@@ -1,9 +1,18 @@
+# Pleroma: A lightweight social networking server
+# Copyright © 2017-2019 Pleroma Authors <https://pleroma.social/>
+# SPDX-License-Identifier: AGPL-3.0-only
+
 defmodule Pleroma.HTTP.Connection do
   @moduledoc """
   Connection for http-requests.
   """
 
-  @hackney_options [pool: :default]
+  @hackney_options [
+    connect_timeout: 2_000,
+    recv_timeout: 20_000,
+    follow_redirect: true,
+    pool: :federation
+  ]
   @adapter Application.get_env(:tesla, :adapter)
 
   @doc """
@@ -20,8 +29,12 @@ defmodule Pleroma.HTTP.Connection do
 
   # fetch Hackney options
   #
-  defp hackney_options(opts \\ []) do
+  defp hackney_options(opts) do
     options = Keyword.get(opts, :adapter, [])
-    @hackney_options ++ options
+    adapter_options = Pleroma.Config.get([:http, :adapter], [])
+
+    @hackney_options
+    |> Keyword.merge(adapter_options)
+    |> Keyword.merge(options)
   end
 end