diff --git a/lib/tesla.ex b/lib/tesla.ex index ae49a2b6..5a826fce 100644 --- a/lib/tesla.ex +++ b/lib/tesla.ex @@ -340,6 +340,12 @@ defmodule Tesla do def run(env, [{m,f} | rest]), do: apply(m, f, [env, rest]) def run(env, [{m,f,a} | rest]), do: apply(m, f, [env, rest | a]) + # useful helper fuctions + def put_opt(env, key, value) do + Map.update!(env, :opts, &Keyword.put(&1, key, value)) + end + + def default_adapter do adapter = Application.get_env(:tesla, :adapter, :httpc) |> Tesla.alias {adapter, []} diff --git a/lib/tesla/middleware/core.ex b/lib/tesla/middleware/core.ex index 8a9069e7..a1952116 100644 --- a/lib/tesla/middleware/core.ex +++ b/lib/tesla/middleware/core.ex @@ -96,7 +96,7 @@ defmodule Tesla.Middleware.DecodeRels do def parse_rels(env) do if link = env.headers["link"] do - Map.update!(env, :opts, &Keyword.put(&1, :rels, rels(link))) + Tesla.put_opt(env, :rels, rels(link)) else env end