214
}
215
216
>
func parseCalendarToStructured(cal *schedulepb.CalendarSpec) (*schedulepb.StructuredCalendarSpec, error) {
calendar.go
217
>
var errs []string
218
>
makeRangeOrNil := func(s, field, def string, minVal, maxVal int, parseMode parseMode) []*schedulepb.Range {
219
>
r, err := makeRange(s, field, def, minVal, maxVal, parseMode)
220
>
if err != nil {
221
errs = append(errs, err.Error())
222
}
224
}
225
>
ss := &schedulepb.StructuredCalendarSpec{
calendar.go
226
>
Second: makeRangeOrNil(cal.Second, "Second", "0", 0, 59, parseModeInt),
227
>
Minute: makeRangeOrNil(cal.Minute, "Minute", "0", 0, 59, parseModeInt),
228
>
Hour: makeRangeOrNil(cal.Hour, "Hour", "0", 0, 23, parseModeInt),
229
>
DayOfWeek: makeRangeOrNil(cal.DayOfWeek, "DayOfWeek", "*", 0, 7, parseModeDow),
230
>
DayOfMonth: makeRangeOrNil(cal.DayOfMonth, "DayOfMonth", "*", 1, 31, parseModeInt),
231
>
Month: makeRangeOrNil(cal.Month, "Month", "*", 1, 12, parseModeMonth),
232
>
Year: makeRangeOrNil(cal.Year, "Year", "*", minCalendarYear, maxCalendarYear, parseModeYear),
233
>
Comment: cal.Comment,
234
>
}
235
>
if len(errs) > 0 {
236
return nil, errors.New(strings.Join(errs, ", "))
237
}