func (w *Wallet) handleChainVotingNotifications(chainClient *chain.RPCClient) { for n := range chainClient.NotificationsVoting() { var err error strErrType := "" switch n := n.(type) { case chain.WinningTickets: err = walletdb.Update(w.db, func(dbtx walletdb.ReadWriteTx) error { return w.handleWinningTickets(dbtx, n.BlockHash, n.BlockHeight, n.Tickets) }) strErrType = "WinningTickets" case chain.MissedTickets: err = walletdb.Update(w.db, func(dbtx walletdb.ReadWriteTx) error { return w.handleMissedTickets(dbtx, n.BlockHash, n.BlockHeight, n.Tickets) }) strErrType = "MissedTickets" default: err = fmt.Errorf("voting handler received unknown ntfn type") } if err != nil { log.Errorf("Cannot handle chain server voting "+ "notification %v: %v", strErrType, err) } } w.wg.Done() }