defmodule SoftBank.Config do @doc """ Return value by key from config.exs file. """ defstruct get_dynamic_repo: nil, prefix: nil, log: false, name: SoftBank, repo: nil def get(name, default \\ nil) do Application.get_env(:soft_bank, name, default) end def key_type() do case Application.get_env(:soft_bank, :primary_key_type) do nil -> :integer :id -> :integer :integer -> :integer _ -> :binary_id end end def new(opts \\ []) do repo = SoftBank.Config.get(:repo) struct!(__MODULE__, [repo: repo] ++ opts) end end