From fcbb0eef2dcf6ca6c34724e4d8298008c499de3d Mon Sep 17 00:00:00 2001 From: Marcin Wielgus Date: Mon, 8 Aug 2016 16:29:00 +0200 Subject: [PATCH] Federation common libs - deliverAfer for delaying deliverer --- .../pkg/federation-controller/util/delaying_deliverer.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/federation/pkg/federation-controller/util/delaying_deliverer.go b/federation/pkg/federation-controller/util/delaying_deliverer.go index 40aa058e3e3..bfd08a2efbd 100644 --- a/federation/pkg/federation-controller/util/delaying_deliverer.go +++ b/federation/pkg/federation-controller/util/delaying_deliverer.go @@ -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)) +}