34 lines
897 B
Go
34 lines
897 B
Go
package wallet
|
|
|
|
import (
|
|
"context"
|
|
"time"
|
|
|
|
"github.com/tech/sendico/gateway/chain/internal/keymanager"
|
|
"github.com/tech/sendico/gateway/chain/internal/service/gateway/drivers"
|
|
"github.com/tech/sendico/gateway/chain/internal/service/gateway/rpcclient"
|
|
"github.com/tech/sendico/gateway/chain/storage"
|
|
clockpkg "github.com/tech/sendico/pkg/clock"
|
|
"github.com/tech/sendico/pkg/mlogger"
|
|
)
|
|
|
|
type Deps struct {
|
|
Logger mlogger.Logger
|
|
Drivers *drivers.Registry
|
|
Networks *rpcclient.Registry
|
|
KeyManager keymanager.Manager
|
|
Storage storage.Repository
|
|
Clock clockpkg.Clock
|
|
BalanceCacheTTL time.Duration
|
|
RPCTimeout time.Duration
|
|
EnsureRepository func(context.Context) error
|
|
}
|
|
|
|
func (d Deps) WithLogger(name string) Deps {
|
|
if d.Logger == nil {
|
|
panic("wallet deps: logger is required")
|
|
}
|
|
d.Logger = d.Logger.Named(name)
|
|
return d
|
|
}
|