// Copyright (c) 2023 Canonical Ltd // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License version 3 as // published by the Free Software Foundation. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program. If not, see . package daemon import ( "time" ) // parseOptionalTime parses an RFC3339 time, or returns a zero time if s is empty. func parseOptionalTime(s string) (time.Time, error) { if s == "" { return time.Time{}, nil } return time.Parse(time.RFC3339, s) } // parseOptionalDuration parses a duration, or returns 0 if s is empty. func parseOptionalDuration(s string) (time.Duration, error) { if s == "" { return 0, nil } return time.ParseDuration(s) }