Federation common libs - deliverAfer for delaying deliverer

This commit is contained in:
Marcin Wielgus 2016-08-08 16:29:00 +02:00
parent 1bd37f477f
commit fcbb0eef2d

View File

@ -140,6 +140,7 @@ func (d *DelayingDeliverer) Stop() {
close(d.stopChannel)
}
// Delivers value at the given time.
func (d *DelayingDeliverer) DeliverAt(key string, value interface{}, deliveryTime time.Time) {
d.updateChannel <- &DelayingDelivererItem{
Key: key,
@ -147,3 +148,8 @@ func (d *DelayingDeliverer) DeliverAt(key string, value interface{}, deliveryTim
DeliveryTime: deliveryTime,
}
}
// Delivers value after the given delay.
func (d *DelayingDeliverer) DeliverAfter(key string, value interface{}, delay time.Duration) {
d.DeliverAt(key, value, time.Now().Add(delay))
}