mirror of
https://github.com/kaspanet/kaspad.git
synced 2025-03-30 15:08:33 +00:00

* Make kaspawallet store the utxos sorted by amount, so that the bigger utxos are spent first - making it less likely a compound will be required * Start refactor addEntryToUTXOSet * Add GetUTXOsByBalances command to rpc * Store list of addresses, updated with the collectAddresses methods (replacing collectUTXOs methods) * Fix wrong commands in GetBalanceByAddress * Rename: refreshExistingUTXOs -> refreshUTXOs Co-authored-by: Ori Newman <orinewman1@gmail.com>
52 lines
1.5 KiB
Go
52 lines
1.5 KiB
Go
// Copyright (c) 2013-2015 The btcsuite developers
|
|
// Use of this source code is governed by an ISC
|
|
// license that can be found in the LICENSE file.
|
|
|
|
package appmessage
|
|
|
|
import (
|
|
"fmt"
|
|
)
|
|
|
|
// MessageError describes an issue with a message.
|
|
// An example of some potential issues are messages from the wrong kaspa
|
|
// network, invalid commands, mismatched checksums, and exceeding max payloads.
|
|
//
|
|
// This provides a mechanism for the caller to type assert the error to
|
|
// differentiate between general io errors such as io.EOF and issues that
|
|
// resulted from malformed messages.
|
|
type MessageError struct {
|
|
Func string // Function name
|
|
Description string // Human readable description of the issue
|
|
}
|
|
|
|
// Error satisfies the error interface and prints human-readable errors.
|
|
func (e *MessageError) Error() string {
|
|
if e.Func != "" {
|
|
return fmt.Sprintf("%s: %s", e.Func, e.Description)
|
|
}
|
|
return e.Description
|
|
}
|
|
|
|
// messageError creates an error for the given function and description.
|
|
func messageError(f string, desc string) *MessageError {
|
|
return &MessageError{Func: f, Description: desc}
|
|
}
|
|
|
|
// RPCError represents an error arriving from the RPC
|
|
type RPCError struct {
|
|
Message string
|
|
}
|
|
|
|
func (err RPCError) Error() string {
|
|
return err.Message
|
|
}
|
|
|
|
// RPCErrorf formats according to a format specifier and returns the string
|
|
// as an RPCError.
|
|
func RPCErrorf(format string, args ...interface{}) *RPCError {
|
|
return &RPCError{
|
|
Message: fmt.Sprintf(format, args...),
|
|
}
|
|
}
|