ParseTimeParam parses the time request parameter into an int64, milliseconds since epoch.
(r *http.Request, paramName string, defaultValue int64)
| 59 | |
| 60 | // ParseTimeParam parses the time request parameter into an int64, milliseconds since epoch. |
| 61 | func ParseTimeParam(r *http.Request, paramName string, defaultValue int64) (int64, error) { |
| 62 | val := r.FormValue(paramName) |
| 63 | if val == "" { |
| 64 | val = strconv.FormatInt(defaultValue, 10) |
| 65 | } |
| 66 | result, err := ParseTime(val) |
| 67 | if err != nil { |
| 68 | return 0, errors.Wrapf(err, "Invalid time value for '%s'", paramName) |
| 69 | } |
| 70 | return result, nil |
| 71 | } |
| 72 | |
| 73 | // DurationWithJitter returns random duration from "input - input*variance" to "input + input*variance" interval. |
| 74 | func DurationWithJitter(input time.Duration, variancePerc float64) time.Duration { |
no test coverage detected