gitlab.com/aquachain/aquachain@v1.17.16-rc3.0.20221018032414-e3ddf1e1c055/aqua/accounts/usbwallet/dummy.go (about) 1 // Copyright 2018 The aquachain Authors 2 // This file is part of the aquachain library. 3 // 4 // The aquachain library is free software: you can redistribute it and/or modify 5 // it under the terms of the GNU Lesser General Public License as published by 6 // the Free Software Foundation, either version 3 of the License, or 7 // (at your option) any later version. 8 // 9 // The aquachain library is distributed in the hope that it will be useful, 10 // but WITHOUT ANY WARRANTY; without even the implied warranty of 11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 // GNU Lesser General Public License for more details. 13 // 14 // You should have received a copy of the GNU Lesser General Public License 15 // along with the aquachain library. If not, see <http://www.gnu.org/licenses/>. 16 17 // +build !usb 18 19 package usbwallet 20 21 import ( 22 "errors" 23 24 "gitlab.com/aquachain/aquachain/aqua/accounts" 25 "gitlab.com/aquachain/aquachain/aqua/event" 26 ) 27 28 // Hub is a accounts.Backend that can find and handle generic USB hardware wallets. 29 type Hub struct{} 30 31 // NewLedgerHub creates a new hardware wallet manager for Ledger devices. 32 func NewLedgerHub() (*Hub, error) { 33 return nil, accounts.ErrNotSupported 34 } 35 36 // ErrTrezorPINNeeded is returned if opening the trezor requires a PIN code. In 37 // this case, the calling application should display a pinpad and send back the 38 // encoded passphrase. 39 var ErrTrezorPINNeeded = errors.New("trezor: pin needed") 40 41 // NewTrezorHub creates a new hardware wallet manager for Trezor devices. 42 func NewTrezorHub() (*Hub, error) { 43 return nil, accounts.ErrNotSupported 44 } 45 46 // Wallets implements accounts.Backend, returning all the currently tracked USB 47 // devices that appear to be hardware wallets. 48 func (hub *Hub) Wallets() []accounts.Wallet { 49 return nil 50 } 51 52 // Subscribe implements accounts.Backend, creating an async subscription to 53 // receive notifications on the addition or removal of USB wallets. 54 func (hub *Hub) Subscribe(sink chan<- accounts.WalletEvent) event.Subscription { 55 return nil 56 }