# Copyright 2018-2019 OmiseGO Pte Ltd
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

defmodule LocalLedgerDB.Errors.InsufficientFundsError do
  defexception message: "This wallet does not contain enough funds
                         for this entry."

  def error_message(current_amount, %{
        amount: amount_to_debit,
        token_id: token_id,
        address: address
      }) do
    %{
      "address" => address,
      "current_amount" => current_amount,
      "amount_to_debit" => amount_to_debit,
      "token_id" => token_id
    }
  end
end
