mirror of
https://github.com/ceph/ceph-csi.git
synced 2024-12-21 04:20:23 +00:00
ba40da7e36
Bumps [github.com/hashicorp/vault](https://github.com/hashicorp/vault) from 1.4.2 to 1.9.9. - [Release notes](https://github.com/hashicorp/vault/releases) - [Changelog](https://github.com/hashicorp/vault/blob/main/CHANGELOG.md) - [Commits](https://github.com/hashicorp/vault/compare/v1.4.2...v1.9.9) --- updated-dependencies: - dependency-name: github.com/hashicorp/vault dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com>
36 lines
750 B
Go
36 lines
750 B
Go
package backoff
|
|
|
|
import "time"
|
|
|
|
type Timer interface {
|
|
Start(duration time.Duration)
|
|
Stop()
|
|
C() <-chan time.Time
|
|
}
|
|
|
|
// defaultTimer implements Timer interface using time.Timer
|
|
type defaultTimer struct {
|
|
timer *time.Timer
|
|
}
|
|
|
|
// C returns the timers channel which receives the current time when the timer fires.
|
|
func (t *defaultTimer) C() <-chan time.Time {
|
|
return t.timer.C
|
|
}
|
|
|
|
// Start starts the timer to fire after the given duration
|
|
func (t *defaultTimer) Start(duration time.Duration) {
|
|
if t.timer == nil {
|
|
t.timer = time.NewTimer(duration)
|
|
} else {
|
|
t.timer.Reset(duration)
|
|
}
|
|
}
|
|
|
|
// Stop is called when the timer is not used anymore and resources may be freed.
|
|
func (t *defaultTimer) Stop() {
|
|
if t.timer != nil {
|
|
t.timer.Stop()
|
|
}
|
|
}
|