Skip to content

Commit 3a7a359

Browse files
committed
api: CnsVolumeBackingType
This patch updates the CNS API with the new CnsVolumeBackingType enum and its use in AttachDetachVolumeSpec. Signed-off-by: akutz <andrew.kutz@broadcom.com>
1 parent 4da134e commit 3a7a359

2 files changed

Lines changed: 25 additions & 6 deletions

File tree

cns/types/enum.go

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,3 +106,21 @@ const (
106106
func init() {
107107
types.Add("vsan:CnsUnregisterTargetVolumeType", reflect.TypeOf((*CnsUnregisterTargetVolumeType)(nil)).Elem())
108108
}
109+
110+
// CnsVolumeBackingType enumerates types of backing for batch attach operations.
111+
// These values correspond to VirtualDevice.FileBackingInfo subclasses.
112+
type CnsVolumeBackingType string
113+
114+
const (
115+
CnsVolumeBackingTypeFlatVer1BackingInfo = CnsVolumeBackingType("FlatVer1BackingInfo")
116+
CnsVolumeBackingTypeFlatVer2BackingInfo = CnsVolumeBackingType("FlatVer2BackingInfo")
117+
CnsVolumeBackingTypeSparseVer1BackingInfo = CnsVolumeBackingType("SparseVer1BackingInfo")
118+
CnsVolumeBackingTypeSparseVer2BackingInfo = CnsVolumeBackingType("SparseVer2BackingInfo")
119+
CnsVolumeBackingTypeRawDiskMappingVer1BackingInfo = CnsVolumeBackingType("RawDiskMappingVer1BackingInfo")
120+
CnsVolumeBackingTypeSeSparseBackingInfo = CnsVolumeBackingType("SeSparseBackingInfo")
121+
CnsVolumeBackingTypeLocalPMemBackingInfo = CnsVolumeBackingType("LocalPMemBackingInfo")
122+
)
123+
124+
func init() {
125+
types.Add("vsan:CnsVolumeBackingType", reflect.TypeOf((*CnsVolumeBackingType)(nil)).Elem())
126+
}

cns/types/types.go

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -214,12 +214,13 @@ type CnsDetachVolumeResponse struct {
214214
type CnsVolumeAttachDetachSpec struct {
215215
types.DynamicData
216216

217-
VolumeId CnsVolumeId `xml:"volumeId" json:"volumeId"`
218-
Vm types.ManagedObjectReference `xml:"vm" json:"vm"`
219-
DiskMode string `xml:"diskMode,omitempty" json:"diskMode"`
220-
Sharing string `xml:"sharing,omitempty" json:"sharing"`
221-
ControllerKey *int32 `xml:"controllerKey,omitempty" json:"controllerKey"`
222-
UnitNumber *int32 `xml:"unitNumber,omitempty" json:"unitNumber"`
217+
VolumeId CnsVolumeId `xml:"volumeId" json:"volumeId"`
218+
Vm types.ManagedObjectReference `xml:"vm" json:"vm"`
219+
DiskMode string `xml:"diskMode,omitempty" json:"diskMode"`
220+
Sharing string `xml:"sharing,omitempty" json:"sharing"`
221+
ControllerKey *int32 `xml:"controllerKey,omitempty" json:"controllerKey"`
222+
UnitNumber *int32 `xml:"unitNumber,omitempty" json:"unitNumber"`
223+
BackingTypeName CnsVolumeBackingType `xml:"backingTypeName,omitempty" json:"backingTypeName"`
223224
}
224225

225226
func init() {

0 commit comments

Comments
 (0)