1
0
mirror of https://github.com/openshift/installer.git synced 2026-02-05 15:47:14 +01:00
Files
2024-04-04 21:23:02 +02:00

44 lines
1010 B
Go

package models
import (
"errors"
)
//
type Status int
const (
ACTIVE_STATUS Status = iota
UPDATED_STATUS
DELETED_STATUS
IGNORED_STATUS
UNKNOWNFUTUREVALUE_STATUS
)
func (i Status) String() string {
return []string{"active", "updated", "deleted", "ignored", "unknownFutureValue"}[i]
}
func ParseStatus(v string) (any, error) {
result := ACTIVE_STATUS
switch v {
case "active":
result = ACTIVE_STATUS
case "updated":
result = UPDATED_STATUS
case "deleted":
result = DELETED_STATUS
case "ignored":
result = IGNORED_STATUS
case "unknownFutureValue":
result = UNKNOWNFUTUREVALUE_STATUS
default:
return 0, errors.New("Unknown Status value: " + v)
}
return &result, nil
}
func SerializeStatus(values []Status) []string {
result := make([]string, len(values))
for i, v := range values {
result[i] = v.String()
}
return result
}