github.com/vmware/govmomi@v0.51.0/cns/types/unreleased_types.go (about)

     1  // © Broadcom. All Rights Reserved.
     2  // The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.
     3  // SPDX-License-Identifier: Apache-2.0
     4  
     5  package types
     6  
     7  import (
     8  	"reflect"
     9  
    10  	"github.com/vmware/govmomi/vim25/types"
    11  )
    12  
    13  // CnsBlockCreateSpec is the specification for creating block volumes.
    14  type CnsBlockCreateSpec struct {
    15  	CnsBaseCreateSpec
    16  
    17  	// Crypto specifies the encryption settings for the volume to be created.
    18  	// Works with block volumes only.
    19  	CryptoSpec types.BaseCryptoSpec `xml:"cryptoSpec,omitempty,typeattr" json:"cryptoSpec"`
    20  }
    21  
    22  func init() {
    23  	types.Add("CnsBlockCreateSpec", reflect.TypeOf((*CnsBlockCreateSpec)(nil)).Elem())
    24  }
    25  
    26  type CnsUpdateVolumeCryptoRequestType struct {
    27  	This        types.ManagedObjectReference `xml:"_this" json:"-"`
    28  	UpdateSpecs []CnsVolumeCryptoUpdateSpec  `xml:"updateSpecs,omitempty" json:"updateSpecs"`
    29  }
    30  
    31  func init() {
    32  	types.Add("CnsUpdateVolumeCryptoRequestType", reflect.TypeOf((*CnsUpdateVolumeCryptoRequestType)(nil)).Elem())
    33  }
    34  
    35  type CnsUpdateVolumeCrypto CnsUpdateVolumeCryptoRequestType
    36  
    37  func init() {
    38  	types.Add("CnsUpdateVolumeCrypto", reflect.TypeOf((*CnsUpdateVolumeCrypto)(nil)).Elem())
    39  }
    40  
    41  type CnsUpdateVolumeCryptoResponse struct {
    42  	Returnval types.ManagedObjectReference `xml:"returnval" json:"returnval"`
    43  }
    44  
    45  // CnsVolumeCryptoUpdateSpec is the specification for volume crypto update operation.
    46  type CnsVolumeCryptoUpdateSpec struct {
    47  	types.DynamicData
    48  
    49  	VolumeId    CnsVolumeId                           `xml:"volumeId" json:"volumeId"`
    50  	Profile     []types.BaseVirtualMachineProfileSpec `xml:"profile,omitempty,typeattr" json:"profile"`
    51  	DisksCrypto *types.DiskCryptoSpec                 `xml:"disksCrypto,omitempty" json:"disksCrypto"`
    52  }
    53  
    54  func init() {
    55  	types.Add("CnsVolumeCryptoUpdateSpec", reflect.TypeOf((*CnsVolumeCryptoUpdateSpec)(nil)).Elem())
    56  }