package services import ( "time" "ripple/helpers" ) const ackInterval = 10 * time.Minute func (pm *PaymentManager) ackFinalizeRoutine() { for paymentID, payment := range pm.st.Storage.Payments { if !payment.Finalized() { continue } pm.accSender.Send(payment.Incoming, helpers.BuildFinalizePayment(paymentID, payment.Preimage)) } } func (pm *PaymentManager) ackCancelRoutine() { for paymentID, payment := range pm.st.Storage.Payments { if !payment.Cancelled() { continue } pm.accSender.Send(payment.Outgoing, helpers.BuildCancelPayment(paymentID, payment.Preimage)) } } func (pm *PaymentManager) AckRoutine() { pm.ackFinalizeRoutine() pm.ackCancelRoutine() } func (pm *PaymentManager) RunAckRoutine() { for { pm.AckRoutineCh <- struct{}{} time.Sleep(ackInterval) } }