cloud/azure/compute/models/data_disk.go
package models
// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command
import (
strfmt "github.com/go-openapi/strfmt"
"github.com/go-openapi/swag"
"github.com/go-openapi/errors"
"github.com/go-openapi/validate"
)
// DataDisk Describes a data disk.
// swagger:model DataDisk
type DataDisk struct {
// The caching type.
Caching Caching `json:"caching,omitempty"`
// The create option.
// Required: true
CreateOption CreateOption `json:"createOption"`
// The initial disk size in GB for blank data disks, and the new desired size for resizing existing OS and data disks.
DiskSizeGB int32 `json:"diskSizeGB,omitempty"`
// The source user image virtual hard disk. This virtual hard disk will be copied before using it to attach to the virtual machine. If SourceImage is provided, the destination virtual hard disk must not exist.
Image *VirtualHardDisk `json:"image,omitempty"`
// The logical unit number.
// Required: true
Lun *int32 `json:"lun"`
// The managed disk parameters.
ManagedDisk *ManagedDiskParameters `json:"managedDisk,omitempty"`
// The disk name.
Name string `json:"name,omitempty"`
// The virtual hard disk.
Vhd *VirtualHardDisk `json:"vhd,omitempty"`
}
// Validate validates this data disk
func (m *DataDisk) Validate(formats strfmt.Registry) error {
var res []error
if err := m.validateCaching(formats); err != nil {
// prop
res = append(res, err)
}
if err := m.validateCreateOption(formats); err != nil {
// prop
res = append(res, err)
}
if err := m.validateImage(formats); err != nil {
// prop
res = append(res, err)
}
if err := m.validateLun(formats); err != nil {
// prop
res = append(res, err)
}
if err := m.validateManagedDisk(formats); err != nil {
// prop
res = append(res, err)
}
if err := m.validateVhd(formats); err != nil {
// prop
res = append(res, err)
}
if len(res) > 0 {
return errors.CompositeValidationError(res...)
}
return nil
}
func (m *DataDisk) validateCaching(formats strfmt.Registry) error {
if swag.IsZero(m.Caching) { // not required
return nil
}
if err := m.Caching.Validate(formats); err != nil {
return err
}
return nil
}
func (m *DataDisk) validateCreateOption(formats strfmt.Registry) error {
if err := m.CreateOption.Validate(formats); err != nil {
return err
}
return nil
}
func (m *DataDisk) validateImage(formats strfmt.Registry) error {
if swag.IsZero(m.Image) { // not required
return nil
}
if m.Image != nil {
if err := m.Image.Validate(formats); err != nil {
return err
}
}
return nil
}
func (m *DataDisk) validateLun(formats strfmt.Registry) error {
if err := validate.Required("lun", "body", m.Lun); err != nil {
return err
}
return nil
}
func (m *DataDisk) validateManagedDisk(formats strfmt.Registry) error {
if swag.IsZero(m.ManagedDisk) { // not required
return nil
}
if m.ManagedDisk != nil {
if err := m.ManagedDisk.Validate(formats); err != nil {
return err
}
}
return nil
}
func (m *DataDisk) validateVhd(formats strfmt.Registry) error {
if swag.IsZero(m.Vhd) { // not required
return nil
}
if m.Vhd != nil {
if err := m.Vhd.Validate(formats); err != nil {
return err
}
}
return nil
}