Commit fcbb0eef authored by Marcin Wielgus's avatar Marcin Wielgus

Federation common libs - deliverAfer for delaying deliverer

parent 1bd37f47
...@@ -140,6 +140,7 @@ func (d *DelayingDeliverer) Stop() { ...@@ -140,6 +140,7 @@ func (d *DelayingDeliverer) Stop() {
close(d.stopChannel) close(d.stopChannel)
} }
// Delivers value at the given time.
func (d *DelayingDeliverer) DeliverAt(key string, value interface{}, deliveryTime time.Time) { func (d *DelayingDeliverer) DeliverAt(key string, value interface{}, deliveryTime time.Time) {
d.updateChannel <- &DelayingDelivererItem{ d.updateChannel <- &DelayingDelivererItem{
Key: key, Key: key,
...@@ -147,3 +148,8 @@ func (d *DelayingDeliverer) DeliverAt(key string, value interface{}, deliveryTim ...@@ -147,3 +148,8 @@ func (d *DelayingDeliverer) DeliverAt(key string, value interface{}, deliveryTim
DeliveryTime: deliveryTime, 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))
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment