Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ParseRequest ¶
func ParseRequest[R Request, T Validatable[R]](r *http.Request, rq T) error
func VerFromDec ¶
Parse xxxyyyzzz to xxx.yyy.zzz for version numbers
Types ¶
type LoginRequest ¶
func (LoginRequest) Validate ¶
func (s LoginRequest) Validate() error
type Request ¶
type Request interface { UserCreateRequest | LoginRequest | SetStateRequest | VMCreateRequest }
type SetStateRequest ¶
type SetStateRequest struct {
State string `json:"state"`
}
func (SetStateRequest) Validate ¶
func (s SetStateRequest) Validate() error
type UserCreateRequest ¶
type UserCreateRequest struct { Name string `json:"name"` Email string `json:"email"` Password string `json:"password"` Disabled bool `json:"disabled"` IsAdmin bool `json:"is_admin"` Remarks string `json:"remarks"` }
func (UserCreateRequest) Validate ¶
func (s UserCreateRequest) Validate() error
type VMCreateRequest ¶
type VMCreateRequest struct { User uuid.UUID `json:"user"` Id uuid.UUID `json:"id"` Hostname string `json:"hostname"` CPU int `json:"cpu"` Memory int `json:"memory"` Image string `json:"image"` Cloud bool `json:"cloud"` CloudImage string `json:"cloud_image"` OSVariant string `json:"os_variant"` UserData string `json:"user_data"` MetaData string `json:"meta_data"` Disk []struct { Id int `json:"id"` Size int `json:"size"` Path string `json:"path"` } `json:"disk"` Iface []struct { Bridge string `json:"bridge"` MAC string `json:"mac"` } `json:"iface"` }
func (VMCreateRequest) Validate ¶
func (s VMCreateRequest) Validate() error
type Validatable ¶
Click to show internal directories.
Click to hide internal directories.