Files
DurpAPI/service/shared.go
2023-06-11 12:40:53 -04:00

23 lines
396 B
Go

package service
import (
"fmt"
"time"
)
func RetryOperation(maxRetries int, delay time.Duration, operation func() error) error {
var err error
for i := 0; i <= maxRetries; i++ {
err = operation()
if err == nil {
return nil
}
fmt.Printf("Error encountered: %v\n", err)
if i < maxRetries {
fmt.Printf("Retrying after %v...\n", delay)
time.Sleep(delay)
}
}
return err
}