55 lines
953 B
Go
55 lines
953 B
Go
package enum
|
|
|
|
type StorageSize int
|
|
|
|
// StorageType - Enum that defines the type of storage
|
|
const (
|
|
GB StorageSize = iota
|
|
MB
|
|
KB
|
|
TB
|
|
)
|
|
|
|
var argoType = [...]string{
|
|
"Gi",
|
|
"Mi",
|
|
"Ki",
|
|
"Ti",
|
|
}
|
|
|
|
// Size to string
|
|
func (t StorageSize) String() string {
|
|
return [...]string{"GB", "MB", "KB", "TB"}[t]
|
|
}
|
|
|
|
func (t StorageSize) SizeList() []StorageSize {
|
|
return []StorageSize{GB, MB, KB, TB}
|
|
}
|
|
|
|
// New creates a new instance of the StorageResource struct
|
|
func (dma StorageSize) ToArgo() string {
|
|
return argoType[dma]
|
|
}
|
|
|
|
// enum of a data type
|
|
type StorageType int
|
|
|
|
const (
|
|
FILE = iota
|
|
STREAM
|
|
API
|
|
DATABASE
|
|
S3
|
|
MEMORY
|
|
HARDWARE
|
|
)
|
|
|
|
// String() - Returns the string representation of the storage type
|
|
func (t StorageType) String() string {
|
|
return [...]string{"FILE", "STREAM", "API", "DATABASE", "S3", "MEMORY", "HARDWARE"}[t]
|
|
}
|
|
|
|
func (t StorageType) TypeList() []StorageType {
|
|
return []StorageType{FILE, STREAM, API, DATABASE, S3, MEMORY, HARDWARE}
|
|
}
|