Current section

Files

Jump to
mongodb lib mongo config_hide.ex
Raw

lib/mongo/config_hide.ex

defmodule Mongo.ConfigHide do
@moduledoc false
@spec mask_password(Keyword.t()) ::
Keyword.t()
def mask_password(opts) do
case Keyword.get(opts, :password) do
nil ->
opts
masked_password when is_function(masked_password) ->
opts
actual_password ->
opts
|> Keyword.replace!(:password, fn -> actual_password end)
end
end
@spec unmask_password(Keyword.t()) ::
Keyword.t()
def unmask_password(opts) do
case Keyword.get(opts, :password) do
nil ->
opts
password_masked ->
Keyword.replace!(opts, :password, password_masked.())
end
end
end