github.com/vmware/govmomi@v0.51.0/vslm/types/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  	"time"
    10  
    11  	"github.com/vmware/govmomi/vim25/types"
    12  )
    13  
    14  // A boxed array of `VslmDatastoreSyncStatus`. To be used in `Any` placeholders.
    15  //
    16  // This structure may be used only with operations rendered under `/vslm`.
    17  type ArrayOfVslmDatastoreSyncStatus struct {
    18  	VslmDatastoreSyncStatus []VslmDatastoreSyncStatus `xml:"VslmDatastoreSyncStatus,omitempty" json:"_value"`
    19  }
    20  
    21  func init() {
    22  	types.Add("vslm:ArrayOfVslmDatastoreSyncStatus", reflect.TypeOf((*ArrayOfVslmDatastoreSyncStatus)(nil)).Elem())
    23  }
    24  
    25  // A boxed array of `VslmQueryDatastoreInfoResult`. To be used in `Any` placeholders.
    26  //
    27  // This structure may be used only with operations rendered under `/vslm`.
    28  type ArrayOfVslmQueryDatastoreInfoResult struct {
    29  	VslmQueryDatastoreInfoResult []VslmQueryDatastoreInfoResult `xml:"VslmQueryDatastoreInfoResult,omitempty" json:"_value"`
    30  }
    31  
    32  func init() {
    33  	types.Add("vslm:ArrayOfVslmQueryDatastoreInfoResult", reflect.TypeOf((*ArrayOfVslmQueryDatastoreInfoResult)(nil)).Elem())
    34  }
    35  
    36  // A boxed array of `VslmVsoVStorageObjectAssociations`. To be used in `Any` placeholders.
    37  //
    38  // This structure may be used only with operations rendered under `/vslm`.
    39  type ArrayOfVslmVsoVStorageObjectAssociations struct {
    40  	VslmVsoVStorageObjectAssociations []VslmVsoVStorageObjectAssociations `xml:"VslmVsoVStorageObjectAssociations,omitempty" json:"_value"`
    41  }
    42  
    43  func init() {
    44  	types.Add("vslm:ArrayOfVslmVsoVStorageObjectAssociations", reflect.TypeOf((*ArrayOfVslmVsoVStorageObjectAssociations)(nil)).Elem())
    45  }
    46  
    47  // A boxed array of `VslmVsoVStorageObjectAssociationsVmDiskAssociation`. To be used in `Any` placeholders.
    48  //
    49  // This structure may be used only with operations rendered under `/vslm`.
    50  type ArrayOfVslmVsoVStorageObjectAssociationsVmDiskAssociation struct {
    51  	VslmVsoVStorageObjectAssociationsVmDiskAssociation []VslmVsoVStorageObjectAssociationsVmDiskAssociation `xml:"VslmVsoVStorageObjectAssociationsVmDiskAssociation,omitempty" json:"_value"`
    52  }
    53  
    54  func init() {
    55  	types.Add("vslm:ArrayOfVslmVsoVStorageObjectAssociationsVmDiskAssociation", reflect.TypeOf((*ArrayOfVslmVsoVStorageObjectAssociationsVmDiskAssociation)(nil)).Elem())
    56  }
    57  
    58  // A boxed array of `VslmVsoVStorageObjectQuerySpec`. To be used in `Any` placeholders.
    59  //
    60  // This structure may be used only with operations rendered under `/vslm`.
    61  type ArrayOfVslmVsoVStorageObjectQuerySpec struct {
    62  	VslmVsoVStorageObjectQuerySpec []VslmVsoVStorageObjectQuerySpec `xml:"VslmVsoVStorageObjectQuerySpec,omitempty" json:"_value"`
    63  }
    64  
    65  func init() {
    66  	types.Add("vslm:ArrayOfVslmVsoVStorageObjectQuerySpec", reflect.TypeOf((*ArrayOfVslmVsoVStorageObjectQuerySpec)(nil)).Elem())
    67  }
    68  
    69  // A boxed array of `VslmVsoVStorageObjectResult`. To be used in `Any` placeholders.
    70  //
    71  // This structure may be used only with operations rendered under `/vslm`.
    72  type ArrayOfVslmVsoVStorageObjectResult struct {
    73  	VslmVsoVStorageObjectResult []VslmVsoVStorageObjectResult `xml:"VslmVsoVStorageObjectResult,omitempty" json:"_value"`
    74  }
    75  
    76  func init() {
    77  	types.Add("vslm:ArrayOfVslmVsoVStorageObjectResult", reflect.TypeOf((*ArrayOfVslmVsoVStorageObjectResult)(nil)).Elem())
    78  }
    79  
    80  // A boxed array of `VslmVsoVStorageObjectSnapshotResult`. To be used in `Any` placeholders.
    81  //
    82  // This structure may be used only with operations rendered under `/vslm`.
    83  type ArrayOfVslmVsoVStorageObjectSnapshotResult struct {
    84  	VslmVsoVStorageObjectSnapshotResult []VslmVsoVStorageObjectSnapshotResult `xml:"VslmVsoVStorageObjectSnapshotResult,omitempty" json:"_value"`
    85  }
    86  
    87  func init() {
    88  	types.Add("vslm:ArrayOfVslmVsoVStorageObjectSnapshotResult", reflect.TypeOf((*ArrayOfVslmVsoVStorageObjectSnapshotResult)(nil)).Elem())
    89  }
    90  
    91  type RetrieveContent RetrieveContentRequestType
    92  
    93  func init() {
    94  	types.Add("vslm:RetrieveContent", reflect.TypeOf((*RetrieveContent)(nil)).Elem())
    95  }
    96  
    97  type RetrieveContentRequestType struct {
    98  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
    99  }
   100  
   101  func init() {
   102  	types.Add("vslm:RetrieveContentRequestType", reflect.TypeOf((*RetrieveContentRequestType)(nil)).Elem())
   103  }
   104  
   105  type RetrieveContentResponse struct {
   106  	Returnval VslmServiceInstanceContent `xml:"returnval" json:"returnval"`
   107  }
   108  
   109  // This data object type describes system information.
   110  //
   111  // This structure may be used only with operations rendered under `/vslm`.
   112  type VslmAboutInfo struct {
   113  	types.DynamicData
   114  
   115  	Name         string `xml:"name" json:"name"`
   116  	FullName     string `xml:"fullName" json:"fullName"`
   117  	Vendor       string `xml:"vendor" json:"vendor"`
   118  	ApiVersion   string `xml:"apiVersion" json:"apiVersion"`
   119  	InstanceUuid string `xml:"instanceUuid" json:"instanceUuid"`
   120  }
   121  
   122  func init() {
   123  	types.Add("vslm:VslmAboutInfo", reflect.TypeOf((*VslmAboutInfo)(nil)).Elem())
   124  }
   125  
   126  // The parameters of `VslmVStorageObjectManager.VslmAttachDisk_Task`.
   127  //
   128  // This structure may be used only with operations rendered under `/vslm`.
   129  type VslmAttachDiskRequestType struct {
   130  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   131  	// The ID of the virtual disk to be operated. See
   132  	// `ID`
   133  	Id types.ID `xml:"id" json:"id"`
   134  	// The virtual machine where the virtual disk is to be attached.
   135  	//
   136  	// Refers instance of `VirtualMachine`.
   137  	Vm types.ManagedObjectReference `xml:"vm" json:"vm"`
   138  	// Key of the controller the disk will connect to.
   139  	// It can be unset if there is only one controller
   140  	// (SCSI or SATA) with the available slot in the
   141  	// virtual machine. If there are multiple SCSI or
   142  	// SATA controllers available, user must specify
   143  	// the controller; if there is no available
   144  	// controllers, a `MissingController`
   145  	// fault will be thrown.
   146  	ControllerKey int32 `xml:"controllerKey,omitempty" json:"controllerKey,omitempty"`
   147  	// The unit number of the attached disk on its controller.
   148  	// If unset, the next available slot on the specified
   149  	// controller or the only available controller will be
   150  	// assigned to the attached disk.
   151  	UnitNumber *int32 `xml:"unitNumber" json:"unitNumber,omitempty"`
   152  }
   153  
   154  func init() {
   155  	types.Add("vslm:VslmAttachDiskRequestType", reflect.TypeOf((*VslmAttachDiskRequestType)(nil)).Elem())
   156  }
   157  
   158  type VslmAttachDisk_Task VslmAttachDiskRequestType
   159  
   160  func init() {
   161  	types.Add("vslm:VslmAttachDisk_Task", reflect.TypeOf((*VslmAttachDisk_Task)(nil)).Elem())
   162  }
   163  
   164  type VslmAttachDisk_TaskResponse struct {
   165  	Returnval types.ManagedObjectReference `xml:"returnval" json:"returnval"`
   166  }
   167  
   168  type VslmAttachTagToVStorageObject VslmAttachTagToVStorageObjectRequestType
   169  
   170  func init() {
   171  	types.Add("vslm:VslmAttachTagToVStorageObject", reflect.TypeOf((*VslmAttachTagToVStorageObject)(nil)).Elem())
   172  }
   173  
   174  // The parameters of `VslmVStorageObjectManager.VslmAttachTagToVStorageObject`.
   175  //
   176  // This structure may be used only with operations rendered under `/vslm`.
   177  type VslmAttachTagToVStorageObjectRequestType struct {
   178  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   179  	// The identifier(ID) of the virtual storage object.
   180  	Id types.ID `xml:"id" json:"id"`
   181  	// The category to which the tag belongs.
   182  	Category string `xml:"category" json:"category"`
   183  	// The tag which has to be associated with the virtual storage
   184  	// object.
   185  	Tag string `xml:"tag" json:"tag"`
   186  }
   187  
   188  func init() {
   189  	types.Add("vslm:VslmAttachTagToVStorageObjectRequestType", reflect.TypeOf((*VslmAttachTagToVStorageObjectRequestType)(nil)).Elem())
   190  }
   191  
   192  type VslmAttachTagToVStorageObjectResponse struct {
   193  }
   194  
   195  type VslmCancelTask VslmCancelTaskRequestType
   196  
   197  func init() {
   198  	types.Add("vslm:VslmCancelTask", reflect.TypeOf((*VslmCancelTask)(nil)).Elem())
   199  }
   200  
   201  type VslmCancelTaskRequestType struct {
   202  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   203  }
   204  
   205  func init() {
   206  	types.Add("vslm:VslmCancelTaskRequestType", reflect.TypeOf((*VslmCancelTaskRequestType)(nil)).Elem())
   207  }
   208  
   209  type VslmCancelTaskResponse struct {
   210  }
   211  
   212  type VslmClearVStorageObjectControlFlags VslmClearVStorageObjectControlFlagsRequestType
   213  
   214  func init() {
   215  	types.Add("vslm:VslmClearVStorageObjectControlFlags", reflect.TypeOf((*VslmClearVStorageObjectControlFlags)(nil)).Elem())
   216  }
   217  
   218  // The parameters of `VslmVStorageObjectManager.VslmClearVStorageObjectControlFlags`.
   219  //
   220  // This structure may be used only with operations rendered under `/vslm`.
   221  type VslmClearVStorageObjectControlFlagsRequestType struct {
   222  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   223  	// The ID of the virtual storage object.
   224  	Id types.ID `xml:"id" json:"id"`
   225  	// control flags enum array to be cleared on the
   226  	// VStorageObject. All control flags not included
   227  	// in the array remain intact.
   228  	ControlFlags []string `xml:"controlFlags,omitempty" json:"controlFlags,omitempty"`
   229  }
   230  
   231  func init() {
   232  	types.Add("vslm:VslmClearVStorageObjectControlFlagsRequestType", reflect.TypeOf((*VslmClearVStorageObjectControlFlagsRequestType)(nil)).Elem())
   233  }
   234  
   235  type VslmClearVStorageObjectControlFlagsResponse struct {
   236  }
   237  
   238  // The parameters of `VslmVStorageObjectManager.VslmCloneVStorageObject_Task`.
   239  //
   240  // This structure may be used only with operations rendered under `/vslm`.
   241  type VslmCloneVStorageObjectRequestType struct {
   242  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   243  	// The ID of the virtual storage object.
   244  	Id types.ID `xml:"id" json:"id"`
   245  	// The specification for cloning the virtual storage
   246  	// object.
   247  	Spec types.VslmCloneSpec `xml:"spec" json:"spec"`
   248  }
   249  
   250  func init() {
   251  	types.Add("vslm:VslmCloneVStorageObjectRequestType", reflect.TypeOf((*VslmCloneVStorageObjectRequestType)(nil)).Elem())
   252  }
   253  
   254  type VslmCloneVStorageObject_Task VslmCloneVStorageObjectRequestType
   255  
   256  func init() {
   257  	types.Add("vslm:VslmCloneVStorageObject_Task", reflect.TypeOf((*VslmCloneVStorageObject_Task)(nil)).Elem())
   258  }
   259  
   260  type VslmCloneVStorageObject_TaskResponse struct {
   261  	Returnval types.ManagedObjectReference `xml:"returnval" json:"returnval"`
   262  }
   263  
   264  // The parameters of `VslmVStorageObjectManager.VslmCreateDiskFromSnapshot_Task`.
   265  //
   266  // This structure may be used only with operations rendered under `/vslm`.
   267  type VslmCreateDiskFromSnapshotRequestType struct {
   268  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   269  	// The ID of the virtual storage object.
   270  	Id types.ID `xml:"id" json:"id"`
   271  	// The ID of the snapshot of the virtual storage object.
   272  	SnapshotId types.ID `xml:"snapshotId" json:"snapshotId"`
   273  	// A user friendly name to be associated with the new disk.
   274  	Name string `xml:"name" json:"name"`
   275  	// SPBM Profile requirement on the new virtual storage object.
   276  	// If not specified datastore default policy would be
   277  	// assigned.
   278  	Profile []types.VirtualMachineProfileSpec `xml:"profile,omitempty" json:"profile,omitempty"`
   279  	// Crypto information of the new disk.
   280  	Crypto *types.CryptoSpec `xml:"crypto,omitempty" json:"crypto,omitempty"`
   281  	// Relative location in the specified datastore where disk needs
   282  	// to be created. If not specified disk gets created at the
   283  	// defualt VStorageObject location on the specified datastore.
   284  	Path string `xml:"path,omitempty" json:"path,omitempty"`
   285  }
   286  
   287  func init() {
   288  	types.Add("vslm:VslmCreateDiskFromSnapshotRequestType", reflect.TypeOf((*VslmCreateDiskFromSnapshotRequestType)(nil)).Elem())
   289  }
   290  
   291  type VslmCreateDiskFromSnapshot_Task VslmCreateDiskFromSnapshotRequestType
   292  
   293  func init() {
   294  	types.Add("vslm:VslmCreateDiskFromSnapshot_Task", reflect.TypeOf((*VslmCreateDiskFromSnapshot_Task)(nil)).Elem())
   295  }
   296  
   297  type VslmCreateDiskFromSnapshot_TaskResponse struct {
   298  	Returnval types.ManagedObjectReference `xml:"returnval" json:"returnval"`
   299  }
   300  
   301  // The parameters of `VslmVStorageObjectManager.VslmCreateDisk_Task`.
   302  //
   303  // This structure may be used only with operations rendered under `/vslm`.
   304  type VslmCreateDiskRequestType struct {
   305  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   306  	// The specification of the virtual storage object
   307  	// to be created.
   308  	Spec types.VslmCreateSpec `xml:"spec" json:"spec"`
   309  }
   310  
   311  func init() {
   312  	types.Add("vslm:VslmCreateDiskRequestType", reflect.TypeOf((*VslmCreateDiskRequestType)(nil)).Elem())
   313  }
   314  
   315  type VslmCreateDisk_Task VslmCreateDiskRequestType
   316  
   317  func init() {
   318  	types.Add("vslm:VslmCreateDisk_Task", reflect.TypeOf((*VslmCreateDisk_Task)(nil)).Elem())
   319  }
   320  
   321  type VslmCreateDisk_TaskResponse struct {
   322  	Returnval types.ManagedObjectReference `xml:"returnval" json:"returnval"`
   323  }
   324  
   325  // The parameters of `VslmVStorageObjectManager.VslmCreateSnapshot_Task`.
   326  //
   327  // This structure may be used only with operations rendered under `/vslm`.
   328  type VslmCreateSnapshotRequestType struct {
   329  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   330  	// The ID of the virtual storage object.
   331  	Id types.ID `xml:"id" json:"id"`
   332  	// A short description to be associated with the snapshot.
   333  	Description string `xml:"description" json:"description"`
   334  }
   335  
   336  func init() {
   337  	types.Add("vslm:VslmCreateSnapshotRequestType", reflect.TypeOf((*VslmCreateSnapshotRequestType)(nil)).Elem())
   338  }
   339  
   340  type VslmCreateSnapshot_Task VslmCreateSnapshotRequestType
   341  
   342  func init() {
   343  	types.Add("vslm:VslmCreateSnapshot_Task", reflect.TypeOf((*VslmCreateSnapshot_Task)(nil)).Elem())
   344  }
   345  
   346  type VslmCreateSnapshot_TaskResponse struct {
   347  	Returnval types.ManagedObjectReference `xml:"returnval" json:"returnval"`
   348  }
   349  
   350  // DatastoreSyncStatus shows the catalog sync status of a datastore
   351  // and is returned as a result of the VStorageObjectManager
   352  // getGlobalCatalogSyncStatus API.
   353  //
   354  // When syncVClock == objectVClock the global catalog is in sync with the
   355  // local catalog
   356  //
   357  // This structure may be used only with operations rendered under `/vslm`.
   358  type VslmDatastoreSyncStatus struct {
   359  	types.DynamicData
   360  
   361  	// The datastore URL as specified in `DatastoreInfo.url`
   362  	DatastoreURL string `xml:"datastoreURL" json:"datastoreURL"`
   363  	ObjectVClock int64  `xml:"objectVClock" json:"objectVClock"`
   364  	SyncVClock   int64  `xml:"syncVClock" json:"syncVClock"`
   365  	// The time representing the last successfull sync of the datastore.
   366  	SyncTime *time.Time `xml:"syncTime" json:"syncTime,omitempty"`
   367  	// The number of retries for the Datastore synchronization in failure
   368  	// cases.
   369  	NumberOfRetries int32 `xml:"numberOfRetries,omitempty" json:"numberOfRetries,omitempty"`
   370  	// The fault is set in case of error conditions.
   371  	//
   372  	// If the fault is set,
   373  	// the objectVClock and syncVClock will be set to -1L.
   374  	// Possible Faults:
   375  	// SyncFault If specified datastoreURL failed to sync.
   376  	Error *types.LocalizedMethodFault `xml:"error,omitempty" json:"error,omitempty"`
   377  }
   378  
   379  func init() {
   380  	types.Add("vslm:VslmDatastoreSyncStatus", reflect.TypeOf((*VslmDatastoreSyncStatus)(nil)).Elem())
   381  }
   382  
   383  // The parameters of `VslmVStorageObjectManager.VslmDeleteSnapshot_Task`.
   384  //
   385  // This structure may be used only with operations rendered under `/vslm`.
   386  type VslmDeleteSnapshotRequestType struct {
   387  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   388  	// The ID of the virtual storage object.
   389  	Id types.ID `xml:"id" json:"id"`
   390  	// The ID of the snapshot of a virtual storage object.
   391  	SnapshotId types.ID `xml:"snapshotId" json:"snapshotId"`
   392  }
   393  
   394  func init() {
   395  	types.Add("vslm:VslmDeleteSnapshotRequestType", reflect.TypeOf((*VslmDeleteSnapshotRequestType)(nil)).Elem())
   396  }
   397  
   398  type VslmDeleteSnapshot_Task VslmDeleteSnapshotRequestType
   399  
   400  func init() {
   401  	types.Add("vslm:VslmDeleteSnapshot_Task", reflect.TypeOf((*VslmDeleteSnapshot_Task)(nil)).Elem())
   402  }
   403  
   404  type VslmDeleteSnapshot_TaskResponse struct {
   405  	Returnval types.ManagedObjectReference `xml:"returnval" json:"returnval"`
   406  }
   407  
   408  // The parameters of `VslmVStorageObjectManager.VslmDeleteVStorageObject_Task`.
   409  //
   410  // This structure may be used only with operations rendered under `/vslm`.
   411  type VslmDeleteVStorageObjectRequestType struct {
   412  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   413  	// The ID of the virtual storage object to be deleted.
   414  	Id types.ID `xml:"id" json:"id"`
   415  }
   416  
   417  func init() {
   418  	types.Add("vslm:VslmDeleteVStorageObjectRequestType", reflect.TypeOf((*VslmDeleteVStorageObjectRequestType)(nil)).Elem())
   419  }
   420  
   421  type VslmDeleteVStorageObject_Task VslmDeleteVStorageObjectRequestType
   422  
   423  func init() {
   424  	types.Add("vslm:VslmDeleteVStorageObject_Task", reflect.TypeOf((*VslmDeleteVStorageObject_Task)(nil)).Elem())
   425  }
   426  
   427  type VslmDeleteVStorageObject_TaskResponse struct {
   428  	Returnval types.ManagedObjectReference `xml:"returnval" json:"returnval"`
   429  }
   430  
   431  type VslmDetachTagFromVStorageObject VslmDetachTagFromVStorageObjectRequestType
   432  
   433  func init() {
   434  	types.Add("vslm:VslmDetachTagFromVStorageObject", reflect.TypeOf((*VslmDetachTagFromVStorageObject)(nil)).Elem())
   435  }
   436  
   437  // The parameters of `VslmVStorageObjectManager.VslmDetachTagFromVStorageObject`.
   438  //
   439  // This structure may be used only with operations rendered under `/vslm`.
   440  type VslmDetachTagFromVStorageObjectRequestType struct {
   441  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   442  	// The identifier(ID) of the virtual storage object.
   443  	Id types.ID `xml:"id" json:"id"`
   444  	// The category to which the tag belongs.
   445  	Category string `xml:"category" json:"category"`
   446  	// The tag which has to be disassociated with the virtual storage
   447  	// object.
   448  	Tag string `xml:"tag" json:"tag"`
   449  }
   450  
   451  func init() {
   452  	types.Add("vslm:VslmDetachTagFromVStorageObjectRequestType", reflect.TypeOf((*VslmDetachTagFromVStorageObjectRequestType)(nil)).Elem())
   453  }
   454  
   455  type VslmDetachTagFromVStorageObjectResponse struct {
   456  }
   457  
   458  // The parameters of `VslmVStorageObjectManager.VslmExtendDisk_Task`.
   459  //
   460  // This structure may be used only with operations rendered under `/vslm`.
   461  type VslmExtendDiskRequestType struct {
   462  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   463  	// The ID of the virtual disk to be extended.
   464  	Id types.ID `xml:"id" json:"id"`
   465  	// The new capacity of the virtual disk in MB.
   466  	NewCapacityInMB int64 `xml:"newCapacityInMB" json:"newCapacityInMB"`
   467  }
   468  
   469  func init() {
   470  	types.Add("vslm:VslmExtendDiskRequestType", reflect.TypeOf((*VslmExtendDiskRequestType)(nil)).Elem())
   471  }
   472  
   473  type VslmExtendDisk_Task VslmExtendDiskRequestType
   474  
   475  func init() {
   476  	types.Add("vslm:VslmExtendDisk_Task", reflect.TypeOf((*VslmExtendDisk_Task)(nil)).Elem())
   477  }
   478  
   479  type VslmExtendDisk_TaskResponse struct {
   480  	Returnval types.ManagedObjectReference `xml:"returnval" json:"returnval"`
   481  }
   482  
   483  // The super class for all VSLM Faults.
   484  //
   485  // This structure may be used only with operations rendered under `/vslm`.
   486  type VslmFault struct {
   487  	types.MethodFault
   488  
   489  	// The fault message if available.
   490  	Msg string `xml:"msg,omitempty" json:"msg,omitempty"`
   491  }
   492  
   493  func init() {
   494  	types.Add("vslm:VslmFault", reflect.TypeOf((*VslmFault)(nil)).Elem())
   495  }
   496  
   497  type VslmFaultFault BaseVslmFault
   498  
   499  func init() {
   500  	types.Add("vslm:VslmFaultFault", reflect.TypeOf((*VslmFaultFault)(nil)).Elem())
   501  }
   502  
   503  // The parameters of `VslmVStorageObjectManager.VslmInflateDisk_Task`.
   504  //
   505  // This structure may be used only with operations rendered under `/vslm`.
   506  type VslmInflateDiskRequestType struct {
   507  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   508  	// The ID of the virtual disk to be inflated.
   509  	Id types.ID `xml:"id" json:"id"`
   510  }
   511  
   512  func init() {
   513  	types.Add("vslm:VslmInflateDiskRequestType", reflect.TypeOf((*VslmInflateDiskRequestType)(nil)).Elem())
   514  }
   515  
   516  type VslmInflateDisk_Task VslmInflateDiskRequestType
   517  
   518  func init() {
   519  	types.Add("vslm:VslmInflateDisk_Task", reflect.TypeOf((*VslmInflateDisk_Task)(nil)).Elem())
   520  }
   521  
   522  type VslmInflateDisk_TaskResponse struct {
   523  	Returnval types.ManagedObjectReference `xml:"returnval" json:"returnval"`
   524  }
   525  
   526  type VslmListTagsAttachedToVStorageObject VslmListTagsAttachedToVStorageObjectRequestType
   527  
   528  func init() {
   529  	types.Add("vslm:VslmListTagsAttachedToVStorageObject", reflect.TypeOf((*VslmListTagsAttachedToVStorageObject)(nil)).Elem())
   530  }
   531  
   532  // The parameters of `VslmVStorageObjectManager.VslmListTagsAttachedToVStorageObject`.
   533  //
   534  // This structure may be used only with operations rendered under `/vslm`.
   535  type VslmListTagsAttachedToVStorageObjectRequestType struct {
   536  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   537  	// The ID of the virtual storage object.
   538  	Id types.ID `xml:"id" json:"id"`
   539  }
   540  
   541  func init() {
   542  	types.Add("vslm:VslmListTagsAttachedToVStorageObjectRequestType", reflect.TypeOf((*VslmListTagsAttachedToVStorageObjectRequestType)(nil)).Elem())
   543  }
   544  
   545  type VslmListTagsAttachedToVStorageObjectResponse struct {
   546  	Returnval []types.VslmTagEntry `xml:"returnval,omitempty" json:"returnval,omitempty"`
   547  }
   548  
   549  type VslmListVStorageObjectForSpec VslmListVStorageObjectForSpecRequestType
   550  
   551  func init() {
   552  	types.Add("vslm:VslmListVStorageObjectForSpec", reflect.TypeOf((*VslmListVStorageObjectForSpec)(nil)).Elem())
   553  }
   554  
   555  // The parameters of `VslmVStorageObjectManager.VslmListVStorageObjectForSpec`.
   556  //
   557  // This structure may be used only with operations rendered under `/vslm`.
   558  type VslmListVStorageObjectForSpecRequestType struct {
   559  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   560  	// Query defined using array of
   561  	// `VslmVsoVStorageObjectQuerySpec` objects.
   562  	Query []VslmVsoVStorageObjectQuerySpec `xml:"query,omitempty" json:"query,omitempty"`
   563  	// Maximum number of virtual storage object IDs to return.
   564  	MaxResult int32 `xml:"maxResult" json:"maxResult"`
   565  }
   566  
   567  func init() {
   568  	types.Add("vslm:VslmListVStorageObjectForSpecRequestType", reflect.TypeOf((*VslmListVStorageObjectForSpecRequestType)(nil)).Elem())
   569  }
   570  
   571  type VslmListVStorageObjectForSpecResponse struct {
   572  	Returnval *VslmVsoVStorageObjectQueryResult `xml:"returnval,omitempty" json:"returnval,omitempty"`
   573  }
   574  
   575  type VslmListVStorageObjectsAttachedToTag VslmListVStorageObjectsAttachedToTagRequestType
   576  
   577  func init() {
   578  	types.Add("vslm:VslmListVStorageObjectsAttachedToTag", reflect.TypeOf((*VslmListVStorageObjectsAttachedToTag)(nil)).Elem())
   579  }
   580  
   581  // The parameters of `VslmVStorageObjectManager.VslmListVStorageObjectsAttachedToTag`.
   582  //
   583  // This structure may be used only with operations rendered under `/vslm`.
   584  type VslmListVStorageObjectsAttachedToTagRequestType struct {
   585  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   586  	// The category to which the tag belongs.
   587  	Category string `xml:"category" json:"category"`
   588  	// The tag to be queried.
   589  	Tag string `xml:"tag" json:"tag"`
   590  }
   591  
   592  func init() {
   593  	types.Add("vslm:VslmListVStorageObjectsAttachedToTagRequestType", reflect.TypeOf((*VslmListVStorageObjectsAttachedToTagRequestType)(nil)).Elem())
   594  }
   595  
   596  type VslmListVStorageObjectsAttachedToTagResponse struct {
   597  	Returnval []types.ID `xml:"returnval,omitempty" json:"returnval,omitempty"`
   598  }
   599  
   600  type VslmLoginByToken VslmLoginByTokenRequestType
   601  
   602  func init() {
   603  	types.Add("vslm:VslmLoginByToken", reflect.TypeOf((*VslmLoginByToken)(nil)).Elem())
   604  }
   605  
   606  // The parameters of `VslmSessionManager.VslmLoginByToken`.
   607  //
   608  // This structure may be used only with operations rendered under `/vslm`.
   609  type VslmLoginByTokenRequestType struct {
   610  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   611  	// The delegated token will be retrieved by the
   612  	// client and delegated to VSLM. VSLM will use this token, on user's
   613  	// behalf, to login to VC for authorization purposes. It is necessary
   614  	// to convert the token to XML because the SAML token itself is
   615  	// not a VMODL Data Object and cannot be used as a parameter.
   616  	DelegatedTokenXml string `xml:"delegatedTokenXml" json:"delegatedTokenXml"`
   617  }
   618  
   619  func init() {
   620  	types.Add("vslm:VslmLoginByTokenRequestType", reflect.TypeOf((*VslmLoginByTokenRequestType)(nil)).Elem())
   621  }
   622  
   623  type VslmLoginByTokenResponse struct {
   624  }
   625  
   626  type VslmLogout VslmLogoutRequestType
   627  
   628  func init() {
   629  	types.Add("vslm:VslmLogout", reflect.TypeOf((*VslmLogout)(nil)).Elem())
   630  }
   631  
   632  type VslmLogoutRequestType struct {
   633  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   634  }
   635  
   636  func init() {
   637  	types.Add("vslm:VslmLogoutRequestType", reflect.TypeOf((*VslmLogoutRequestType)(nil)).Elem())
   638  }
   639  
   640  type VslmLogoutResponse struct {
   641  }
   642  
   643  type VslmQueryChangedDiskAreas VslmQueryChangedDiskAreasRequestType
   644  
   645  func init() {
   646  	types.Add("vslm:VslmQueryChangedDiskAreas", reflect.TypeOf((*VslmQueryChangedDiskAreas)(nil)).Elem())
   647  }
   648  
   649  // The parameters of `VslmVStorageObjectManager.VslmQueryChangedDiskAreas`.
   650  //
   651  // This structure may be used only with operations rendered under `/vslm`.
   652  type VslmQueryChangedDiskAreasRequestType struct {
   653  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   654  	// The ID of the virtual storage object.
   655  	Id types.ID `xml:"id" json:"id"`
   656  	// The ID of the snapshot of a virtual storage object for
   657  	// which changes that have been made since "changeId"
   658  	// should be computed.
   659  	SnapshotId types.ID `xml:"snapshotId" json:"snapshotId"`
   660  	// Start Offset in bytes at which to start computing
   661  	// changes. Typically, callers will make multiple calls
   662  	// to this function, starting with startOffset 0 and then
   663  	// examine the "length" property in the returned
   664  	// DiskChangeInfo structure, repeatedly calling
   665  	// queryChangedDiskAreas until a map for the entire
   666  	// virtual disk has been obtained.
   667  	StartOffset int64 `xml:"startOffset" json:"startOffset"`
   668  	// Identifier referring to a point in the past that should
   669  	// be used as the point in time at which to begin including
   670  	// changes to the disk in the result. A typical use case
   671  	// would be a backup application obtaining a changeId from
   672  	// a virtual disk's backing info when performing a backup.
   673  	// When a subsequent incremental backup is to be performed,
   674  	// this change Id can be used to obtain a list of changed
   675  	// areas on disk.
   676  	ChangeId string `xml:"changeId" json:"changeId"`
   677  }
   678  
   679  func init() {
   680  	types.Add("vslm:VslmQueryChangedDiskAreasRequestType", reflect.TypeOf((*VslmQueryChangedDiskAreasRequestType)(nil)).Elem())
   681  }
   682  
   683  type VslmQueryChangedDiskAreasResponse struct {
   684  	Returnval types.DiskChangeInfo `xml:"returnval" json:"returnval"`
   685  }
   686  
   687  type VslmQueryDatastoreInfo VslmQueryDatastoreInfoRequestType
   688  
   689  func init() {
   690  	types.Add("vslm:VslmQueryDatastoreInfo", reflect.TypeOf((*VslmQueryDatastoreInfo)(nil)).Elem())
   691  }
   692  
   693  // The parameters of `VslmStorageLifecycleManager.VslmQueryDatastoreInfo`.
   694  //
   695  // This structure may be used only with operations rendered under `/vslm`.
   696  type VslmQueryDatastoreInfoRequestType struct {
   697  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   698  	// The datastore URL as specified in
   699  	// `DatastoreInfo.url`
   700  	DatastoreUrl string `xml:"datastoreUrl" json:"datastoreUrl"`
   701  }
   702  
   703  func init() {
   704  	types.Add("vslm:VslmQueryDatastoreInfoRequestType", reflect.TypeOf((*VslmQueryDatastoreInfoRequestType)(nil)).Elem())
   705  }
   706  
   707  type VslmQueryDatastoreInfoResponse struct {
   708  	Returnval []VslmQueryDatastoreInfoResult `xml:"returnval,omitempty" json:"returnval,omitempty"`
   709  }
   710  
   711  // The `VslmQueryDatastoreInfoResult` provides mapping information
   712  // between `Datacenter` and `Datastore`.
   713  //
   714  // This API is returned as a result of
   715  // `VslmStorageLifecycleManager.VslmQueryDatastoreInfo` invocation.
   716  //
   717  // This structure may be used only with operations rendered under `/vslm`.
   718  type VslmQueryDatastoreInfoResult struct {
   719  	types.DynamicData
   720  
   721  	// Indicates the datacenter containing the
   722  	// `VslmQueryDatastoreInfoResult.datastore`.
   723  	//
   724  	// Refers instance of `Datacenter`.
   725  	Datacenter types.ManagedObjectReference `xml:"datacenter" json:"datacenter"`
   726  	// Indicates the datastore which is contained within the
   727  	// `VslmQueryDatastoreInfoResult.datacenter`.
   728  	//
   729  	// Refers instance of `Datastore`.
   730  	Datastore types.ManagedObjectReference `xml:"datastore" json:"datastore"`
   731  }
   732  
   733  func init() {
   734  	types.Add("vslm:VslmQueryDatastoreInfoResult", reflect.TypeOf((*VslmQueryDatastoreInfoResult)(nil)).Elem())
   735  }
   736  
   737  type VslmQueryGlobalCatalogSyncStatus VslmQueryGlobalCatalogSyncStatusRequestType
   738  
   739  func init() {
   740  	types.Add("vslm:VslmQueryGlobalCatalogSyncStatus", reflect.TypeOf((*VslmQueryGlobalCatalogSyncStatus)(nil)).Elem())
   741  }
   742  
   743  type VslmQueryGlobalCatalogSyncStatusForDatastore VslmQueryGlobalCatalogSyncStatusForDatastoreRequestType
   744  
   745  func init() {
   746  	types.Add("vslm:VslmQueryGlobalCatalogSyncStatusForDatastore", reflect.TypeOf((*VslmQueryGlobalCatalogSyncStatusForDatastore)(nil)).Elem())
   747  }
   748  
   749  // The parameters of `VslmVStorageObjectManager.VslmQueryGlobalCatalogSyncStatusForDatastore`.
   750  //
   751  // This structure may be used only with operations rendered under `/vslm`.
   752  type VslmQueryGlobalCatalogSyncStatusForDatastoreRequestType struct {
   753  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   754  	// URL of the datastore to check synchronization status for
   755  	DatastoreURL string `xml:"datastoreURL" json:"datastoreURL"`
   756  }
   757  
   758  func init() {
   759  	types.Add("vslm:VslmQueryGlobalCatalogSyncStatusForDatastoreRequestType", reflect.TypeOf((*VslmQueryGlobalCatalogSyncStatusForDatastoreRequestType)(nil)).Elem())
   760  }
   761  
   762  type VslmQueryGlobalCatalogSyncStatusForDatastoreResponse struct {
   763  	Returnval *VslmDatastoreSyncStatus `xml:"returnval,omitempty" json:"returnval,omitempty"`
   764  }
   765  
   766  type VslmQueryGlobalCatalogSyncStatusRequestType struct {
   767  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   768  }
   769  
   770  func init() {
   771  	types.Add("vslm:VslmQueryGlobalCatalogSyncStatusRequestType", reflect.TypeOf((*VslmQueryGlobalCatalogSyncStatusRequestType)(nil)).Elem())
   772  }
   773  
   774  type VslmQueryGlobalCatalogSyncStatusResponse struct {
   775  	Returnval []VslmDatastoreSyncStatus `xml:"returnval,omitempty" json:"returnval,omitempty"`
   776  }
   777  
   778  type VslmQueryInfo VslmQueryInfoRequestType
   779  
   780  func init() {
   781  	types.Add("vslm:VslmQueryInfo", reflect.TypeOf((*VslmQueryInfo)(nil)).Elem())
   782  }
   783  
   784  type VslmQueryInfoRequestType struct {
   785  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   786  }
   787  
   788  func init() {
   789  	types.Add("vslm:VslmQueryInfoRequestType", reflect.TypeOf((*VslmQueryInfoRequestType)(nil)).Elem())
   790  }
   791  
   792  type VslmQueryInfoResponse struct {
   793  	Returnval VslmTaskInfo `xml:"returnval" json:"returnval"`
   794  }
   795  
   796  type VslmQueryTaskResult VslmQueryTaskResultRequestType
   797  
   798  func init() {
   799  	types.Add("vslm:VslmQueryTaskResult", reflect.TypeOf((*VslmQueryTaskResult)(nil)).Elem())
   800  }
   801  
   802  type VslmQueryTaskResultRequestType struct {
   803  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   804  }
   805  
   806  func init() {
   807  	types.Add("vslm:VslmQueryTaskResultRequestType", reflect.TypeOf((*VslmQueryTaskResultRequestType)(nil)).Elem())
   808  }
   809  
   810  type VslmQueryTaskResultResponse struct {
   811  	Returnval types.AnyType `xml:"returnval,omitempty,typeattr" json:"returnval,omitempty"`
   812  }
   813  
   814  // The parameters of `VslmVStorageObjectManager.VslmReconcileDatastoreInventory_Task`.
   815  //
   816  // This structure may be used only with operations rendered under `/vslm`.
   817  type VslmReconcileDatastoreInventoryRequestType struct {
   818  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   819  	// The datastore that needs to be reconciled.
   820  	//
   821  	// Refers instance of `Datastore`.
   822  	Datastore types.ManagedObjectReference `xml:"datastore" json:"datastore"`
   823  }
   824  
   825  func init() {
   826  	types.Add("vslm:VslmReconcileDatastoreInventoryRequestType", reflect.TypeOf((*VslmReconcileDatastoreInventoryRequestType)(nil)).Elem())
   827  }
   828  
   829  type VslmReconcileDatastoreInventory_Task VslmReconcileDatastoreInventoryRequestType
   830  
   831  func init() {
   832  	types.Add("vslm:VslmReconcileDatastoreInventory_Task", reflect.TypeOf((*VslmReconcileDatastoreInventory_Task)(nil)).Elem())
   833  }
   834  
   835  type VslmReconcileDatastoreInventory_TaskResponse struct {
   836  	Returnval types.ManagedObjectReference `xml:"returnval" json:"returnval"`
   837  }
   838  
   839  type VslmRegisterDisk VslmRegisterDiskRequestType
   840  
   841  func init() {
   842  	types.Add("vslm:VslmRegisterDisk", reflect.TypeOf((*VslmRegisterDisk)(nil)).Elem())
   843  }
   844  
   845  // The parameters of `VslmVStorageObjectManager.VslmRegisterDisk`.
   846  //
   847  // This structure may be used only with operations rendered under `/vslm`.
   848  type VslmRegisterDiskRequestType struct {
   849  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   850  	// URL path to the virtual disk.
   851  	Path string `xml:"path" json:"path"`
   852  	// The descriptive name of the disk object. If
   853  	// unset the name will be automatically determined
   854  	// from the path. @see vim.vslm.BaseConfigInfo.name
   855  	Name string `xml:"name,omitempty" json:"name,omitempty"`
   856  }
   857  
   858  func init() {
   859  	types.Add("vslm:VslmRegisterDiskRequestType", reflect.TypeOf((*VslmRegisterDiskRequestType)(nil)).Elem())
   860  }
   861  
   862  type VslmRegisterDiskResponse struct {
   863  	Returnval types.VStorageObject `xml:"returnval" json:"returnval"`
   864  }
   865  
   866  // The parameters of `VslmVStorageObjectManager.VslmRelocateVStorageObject_Task`.
   867  //
   868  // This structure may be used only with operations rendered under `/vslm`.
   869  type VslmRelocateVStorageObjectRequestType struct {
   870  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   871  	// The ID of the virtual storage object.
   872  	Id types.ID `xml:"id" json:"id"`
   873  	// The specification for relocation of the virtual
   874  	// storage object.
   875  	Spec types.VslmRelocateSpec `xml:"spec" json:"spec"`
   876  }
   877  
   878  func init() {
   879  	types.Add("vslm:VslmRelocateVStorageObjectRequestType", reflect.TypeOf((*VslmRelocateVStorageObjectRequestType)(nil)).Elem())
   880  }
   881  
   882  type VslmRelocateVStorageObject_Task VslmRelocateVStorageObjectRequestType
   883  
   884  func init() {
   885  	types.Add("vslm:VslmRelocateVStorageObject_Task", reflect.TypeOf((*VslmRelocateVStorageObject_Task)(nil)).Elem())
   886  }
   887  
   888  type VslmRelocateVStorageObject_TaskResponse struct {
   889  	Returnval types.ManagedObjectReference `xml:"returnval" json:"returnval"`
   890  }
   891  
   892  type VslmRenameVStorageObject VslmRenameVStorageObjectRequestType
   893  
   894  func init() {
   895  	types.Add("vslm:VslmRenameVStorageObject", reflect.TypeOf((*VslmRenameVStorageObject)(nil)).Elem())
   896  }
   897  
   898  // The parameters of `VslmVStorageObjectManager.VslmRenameVStorageObject`.
   899  //
   900  // This structure may be used only with operations rendered under `/vslm`.
   901  type VslmRenameVStorageObjectRequestType struct {
   902  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   903  	// The ID of the virtual storage object to be renamed.
   904  	Id types.ID `xml:"id" json:"id"`
   905  	// The new name for the virtual storage object.
   906  	Name string `xml:"name" json:"name"`
   907  }
   908  
   909  func init() {
   910  	types.Add("vslm:VslmRenameVStorageObjectRequestType", reflect.TypeOf((*VslmRenameVStorageObjectRequestType)(nil)).Elem())
   911  }
   912  
   913  type VslmRenameVStorageObjectResponse struct {
   914  }
   915  
   916  type VslmRetrieveSnapshotDetails VslmRetrieveSnapshotDetailsRequestType
   917  
   918  func init() {
   919  	types.Add("vslm:VslmRetrieveSnapshotDetails", reflect.TypeOf((*VslmRetrieveSnapshotDetails)(nil)).Elem())
   920  }
   921  
   922  // The parameters of `VslmVStorageObjectManager.VslmRetrieveSnapshotDetails`.
   923  //
   924  // This structure may be used only with operations rendered under `/vslm`.
   925  type VslmRetrieveSnapshotDetailsRequestType struct {
   926  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   927  	// The ID of the virtual storage object.
   928  	Id types.ID `xml:"id" json:"id"`
   929  	// The ID of the snapshot of a virtual storage object.
   930  	SnapshotId types.ID `xml:"snapshotId" json:"snapshotId"`
   931  }
   932  
   933  func init() {
   934  	types.Add("vslm:VslmRetrieveSnapshotDetailsRequestType", reflect.TypeOf((*VslmRetrieveSnapshotDetailsRequestType)(nil)).Elem())
   935  }
   936  
   937  type VslmRetrieveSnapshotDetailsResponse struct {
   938  	Returnval types.VStorageObjectSnapshotDetails `xml:"returnval" json:"returnval"`
   939  }
   940  
   941  type VslmRetrieveSnapshotInfo VslmRetrieveSnapshotInfoRequestType
   942  
   943  func init() {
   944  	types.Add("vslm:VslmRetrieveSnapshotInfo", reflect.TypeOf((*VslmRetrieveSnapshotInfo)(nil)).Elem())
   945  }
   946  
   947  // The parameters of `VslmVStorageObjectManager.VslmRetrieveSnapshotInfo`.
   948  //
   949  // This structure may be used only with operations rendered under `/vslm`.
   950  type VslmRetrieveSnapshotInfoRequestType struct {
   951  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   952  	// The ID of the virtual storage object.
   953  	Id types.ID `xml:"id" json:"id"`
   954  }
   955  
   956  func init() {
   957  	types.Add("vslm:VslmRetrieveSnapshotInfoRequestType", reflect.TypeOf((*VslmRetrieveSnapshotInfoRequestType)(nil)).Elem())
   958  }
   959  
   960  type VslmRetrieveSnapshotInfoResponse struct {
   961  	Returnval types.VStorageObjectSnapshotInfo `xml:"returnval" json:"returnval"`
   962  }
   963  
   964  type VslmRetrieveVStorageInfrastructureObjectPolicy VslmRetrieveVStorageInfrastructureObjectPolicyRequestType
   965  
   966  func init() {
   967  	types.Add("vslm:VslmRetrieveVStorageInfrastructureObjectPolicy", reflect.TypeOf((*VslmRetrieveVStorageInfrastructureObjectPolicy)(nil)).Elem())
   968  }
   969  
   970  // The parameters of `VslmVStorageObjectManager.VslmRetrieveVStorageInfrastructureObjectPolicy`.
   971  //
   972  // This structure may be used only with operations rendered under `/vslm`.
   973  type VslmRetrieveVStorageInfrastructureObjectPolicyRequestType struct {
   974  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
   975  	// Datastore on which policy needs to be retrieved.
   976  	//
   977  	// Refers instance of `Datastore`.
   978  	Datastore types.ManagedObjectReference `xml:"datastore" json:"datastore"`
   979  }
   980  
   981  func init() {
   982  	types.Add("vslm:VslmRetrieveVStorageInfrastructureObjectPolicyRequestType", reflect.TypeOf((*VslmRetrieveVStorageInfrastructureObjectPolicyRequestType)(nil)).Elem())
   983  }
   984  
   985  type VslmRetrieveVStorageInfrastructureObjectPolicyResponse struct {
   986  	Returnval []types.VslmInfrastructureObjectPolicy `xml:"returnval,omitempty" json:"returnval,omitempty"`
   987  }
   988  
   989  type VslmRetrieveVStorageObject VslmRetrieveVStorageObjectRequestType
   990  
   991  func init() {
   992  	types.Add("vslm:VslmRetrieveVStorageObject", reflect.TypeOf((*VslmRetrieveVStorageObject)(nil)).Elem())
   993  }
   994  
   995  type VslmRetrieveVStorageObjectAssociations VslmRetrieveVStorageObjectAssociationsRequestType
   996  
   997  func init() {
   998  	types.Add("vslm:VslmRetrieveVStorageObjectAssociations", reflect.TypeOf((*VslmRetrieveVStorageObjectAssociations)(nil)).Elem())
   999  }
  1000  
  1001  // The parameters of `VslmVStorageObjectManager.VslmRetrieveVStorageObjectAssociations`.
  1002  //
  1003  // This structure may be used only with operations rendered under `/vslm`.
  1004  type VslmRetrieveVStorageObjectAssociationsRequestType struct {
  1005  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
  1006  	// The IDs of the virtual storage objects of the query.
  1007  	Ids []types.ID `xml:"ids,omitempty" json:"ids,omitempty"`
  1008  }
  1009  
  1010  func init() {
  1011  	types.Add("vslm:VslmRetrieveVStorageObjectAssociationsRequestType", reflect.TypeOf((*VslmRetrieveVStorageObjectAssociationsRequestType)(nil)).Elem())
  1012  }
  1013  
  1014  type VslmRetrieveVStorageObjectAssociationsResponse struct {
  1015  	Returnval []VslmVsoVStorageObjectAssociations `xml:"returnval,omitempty" json:"returnval,omitempty"`
  1016  }
  1017  
  1018  type VslmRetrieveVStorageObjectMetadata VslmRetrieveVStorageObjectMetadataRequestType
  1019  
  1020  func init() {
  1021  	types.Add("vslm:VslmRetrieveVStorageObjectMetadata", reflect.TypeOf((*VslmRetrieveVStorageObjectMetadata)(nil)).Elem())
  1022  }
  1023  
  1024  // The parameters of `VslmVStorageObjectManager.VslmRetrieveVStorageObjectMetadata`.
  1025  //
  1026  // This structure may be used only with operations rendered under `/vslm`.
  1027  type VslmRetrieveVStorageObjectMetadataRequestType struct {
  1028  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
  1029  	// The ID of the virtual storage object.
  1030  	Id types.ID `xml:"id" json:"id"`
  1031  	// The ID of the snapshot of virtual storage object.
  1032  	SnapshotId *types.ID `xml:"snapshotId,omitempty" json:"snapshotId,omitempty"`
  1033  	// The prefix of the metadata key that needs to be retrieved
  1034  	Prefix string `xml:"prefix,omitempty" json:"prefix,omitempty"`
  1035  }
  1036  
  1037  func init() {
  1038  	types.Add("vslm:VslmRetrieveVStorageObjectMetadataRequestType", reflect.TypeOf((*VslmRetrieveVStorageObjectMetadataRequestType)(nil)).Elem())
  1039  }
  1040  
  1041  type VslmRetrieveVStorageObjectMetadataResponse struct {
  1042  	Returnval []types.KeyValue `xml:"returnval,omitempty" json:"returnval,omitempty"`
  1043  }
  1044  
  1045  type VslmRetrieveVStorageObjectMetadataValue VslmRetrieveVStorageObjectMetadataValueRequestType
  1046  
  1047  func init() {
  1048  	types.Add("vslm:VslmRetrieveVStorageObjectMetadataValue", reflect.TypeOf((*VslmRetrieveVStorageObjectMetadataValue)(nil)).Elem())
  1049  }
  1050  
  1051  // The parameters of `VslmVStorageObjectManager.VslmRetrieveVStorageObjectMetadataValue`.
  1052  //
  1053  // This structure may be used only with operations rendered under `/vslm`.
  1054  type VslmRetrieveVStorageObjectMetadataValueRequestType struct {
  1055  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
  1056  	// The ID of the virtual storage object.
  1057  	Id types.ID `xml:"id" json:"id"`
  1058  	// The ID of the snapshot of virtual storage object.
  1059  	SnapshotId *types.ID `xml:"snapshotId,omitempty" json:"snapshotId,omitempty"`
  1060  	// The key for the the virtual storage object
  1061  	Key string `xml:"key" json:"key"`
  1062  }
  1063  
  1064  func init() {
  1065  	types.Add("vslm:VslmRetrieveVStorageObjectMetadataValueRequestType", reflect.TypeOf((*VslmRetrieveVStorageObjectMetadataValueRequestType)(nil)).Elem())
  1066  }
  1067  
  1068  type VslmRetrieveVStorageObjectMetadataValueResponse struct {
  1069  	Returnval string `xml:"returnval" json:"returnval"`
  1070  }
  1071  
  1072  // The parameters of `VslmVStorageObjectManager.VslmRetrieveVStorageObject`.
  1073  //
  1074  // This structure may be used only with operations rendered under `/vslm`.
  1075  type VslmRetrieveVStorageObjectRequestType struct {
  1076  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
  1077  	// The ID of the virtual storage object to be retrieved.
  1078  	Id types.ID `xml:"id" json:"id"`
  1079  }
  1080  
  1081  func init() {
  1082  	types.Add("vslm:VslmRetrieveVStorageObjectRequestType", reflect.TypeOf((*VslmRetrieveVStorageObjectRequestType)(nil)).Elem())
  1083  }
  1084  
  1085  type VslmRetrieveVStorageObjectResponse struct {
  1086  	Returnval types.VStorageObject `xml:"returnval" json:"returnval"`
  1087  }
  1088  
  1089  type VslmRetrieveVStorageObjectState VslmRetrieveVStorageObjectStateRequestType
  1090  
  1091  func init() {
  1092  	types.Add("vslm:VslmRetrieveVStorageObjectState", reflect.TypeOf((*VslmRetrieveVStorageObjectState)(nil)).Elem())
  1093  }
  1094  
  1095  // The parameters of `VslmVStorageObjectManager.VslmRetrieveVStorageObjectState`.
  1096  //
  1097  // This structure may be used only with operations rendered under `/vslm`.
  1098  type VslmRetrieveVStorageObjectStateRequestType struct {
  1099  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
  1100  	// The ID of the virtual storage object the state to be retrieved.
  1101  	Id types.ID `xml:"id" json:"id"`
  1102  }
  1103  
  1104  func init() {
  1105  	types.Add("vslm:VslmRetrieveVStorageObjectStateRequestType", reflect.TypeOf((*VslmRetrieveVStorageObjectStateRequestType)(nil)).Elem())
  1106  }
  1107  
  1108  type VslmRetrieveVStorageObjectStateResponse struct {
  1109  	Returnval types.VStorageObjectStateInfo `xml:"returnval" json:"returnval"`
  1110  }
  1111  
  1112  type VslmRetrieveVStorageObjects VslmRetrieveVStorageObjectsRequestType
  1113  
  1114  func init() {
  1115  	types.Add("vslm:VslmRetrieveVStorageObjects", reflect.TypeOf((*VslmRetrieveVStorageObjects)(nil)).Elem())
  1116  }
  1117  
  1118  // The parameters of `VslmVStorageObjectManager.VslmRetrieveVStorageObjects`.
  1119  //
  1120  // This structure may be used only with operations rendered under `/vslm`.
  1121  type VslmRetrieveVStorageObjectsRequestType struct {
  1122  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
  1123  	// The array of IDs of the virtual storage object to be
  1124  	// retrieved.
  1125  	Ids []types.ID `xml:"ids,omitempty" json:"ids,omitempty"`
  1126  }
  1127  
  1128  func init() {
  1129  	types.Add("vslm:VslmRetrieveVStorageObjectsRequestType", reflect.TypeOf((*VslmRetrieveVStorageObjectsRequestType)(nil)).Elem())
  1130  }
  1131  
  1132  type VslmRetrieveVStorageObjectsResponse struct {
  1133  	Returnval []VslmVsoVStorageObjectResult `xml:"returnval,omitempty" json:"returnval,omitempty"`
  1134  }
  1135  
  1136  // The parameters of `VslmVStorageObjectManager.VslmRevertVStorageObject_Task`.
  1137  //
  1138  // This structure may be used only with operations rendered under `/vslm`.
  1139  type VslmRevertVStorageObjectRequestType struct {
  1140  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
  1141  	// The ID of the virtual storage object.
  1142  	Id types.ID `xml:"id" json:"id"`
  1143  	// The ID of the snapshot of a virtual storage object.
  1144  	SnapshotId types.ID `xml:"snapshotId" json:"snapshotId"`
  1145  }
  1146  
  1147  func init() {
  1148  	types.Add("vslm:VslmRevertVStorageObjectRequestType", reflect.TypeOf((*VslmRevertVStorageObjectRequestType)(nil)).Elem())
  1149  }
  1150  
  1151  type VslmRevertVStorageObject_Task VslmRevertVStorageObjectRequestType
  1152  
  1153  func init() {
  1154  	types.Add("vslm:VslmRevertVStorageObject_Task", reflect.TypeOf((*VslmRevertVStorageObject_Task)(nil)).Elem())
  1155  }
  1156  
  1157  type VslmRevertVStorageObject_TaskResponse struct {
  1158  	Returnval types.ManagedObjectReference `xml:"returnval" json:"returnval"`
  1159  }
  1160  
  1161  type VslmScheduleReconcileDatastoreInventory VslmScheduleReconcileDatastoreInventoryRequestType
  1162  
  1163  func init() {
  1164  	types.Add("vslm:VslmScheduleReconcileDatastoreInventory", reflect.TypeOf((*VslmScheduleReconcileDatastoreInventory)(nil)).Elem())
  1165  }
  1166  
  1167  // The parameters of `VslmVStorageObjectManager.VslmScheduleReconcileDatastoreInventory`.
  1168  //
  1169  // This structure may be used only with operations rendered under `/vslm`.
  1170  type VslmScheduleReconcileDatastoreInventoryRequestType struct {
  1171  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
  1172  	// The datastore that needs to be reconciled.
  1173  	//
  1174  	// Refers instance of `Datastore`.
  1175  	Datastore types.ManagedObjectReference `xml:"datastore" json:"datastore"`
  1176  }
  1177  
  1178  func init() {
  1179  	types.Add("vslm:VslmScheduleReconcileDatastoreInventoryRequestType", reflect.TypeOf((*VslmScheduleReconcileDatastoreInventoryRequestType)(nil)).Elem())
  1180  }
  1181  
  1182  type VslmScheduleReconcileDatastoreInventoryResponse struct {
  1183  }
  1184  
  1185  // The `VslmServiceInstanceContent` data object defines properties for the
  1186  // `VslmServiceInstance` managed object.
  1187  //
  1188  // This structure may be used only with operations rendered under `/vslm`.
  1189  type VslmServiceInstanceContent struct {
  1190  	types.DynamicData
  1191  
  1192  	// Contains information that identifies the Storage Lifecycle Management
  1193  	// service.
  1194  	AboutInfo VslmAboutInfo `xml:"aboutInfo" json:"aboutInfo"`
  1195  	// `VslmSessionManager` contains login APIs to connect to VSLM
  1196  	// service.
  1197  	//
  1198  	// Refers instance of `VslmSessionManager`.
  1199  	SessionManager types.ManagedObjectReference `xml:"sessionManager" json:"sessionManager"`
  1200  	// `VslmVStorageObjectManager` contains virtual storage object
  1201  	// APIs.
  1202  	//
  1203  	// Refers instance of `VslmVStorageObjectManager`.
  1204  	VStorageObjectManager types.ManagedObjectReference `xml:"vStorageObjectManager" json:"vStorageObjectManager"`
  1205  	// `VslmStorageLifecycleManager` contains callback APIs to VSLM
  1206  	// service.
  1207  	//
  1208  	// Refers instance of `VslmStorageLifecycleManager`.
  1209  	StorageLifecycleManager types.ManagedObjectReference `xml:"storageLifecycleManager" json:"storageLifecycleManager"`
  1210  }
  1211  
  1212  func init() {
  1213  	types.Add("vslm:VslmServiceInstanceContent", reflect.TypeOf((*VslmServiceInstanceContent)(nil)).Elem())
  1214  }
  1215  
  1216  type VslmSetVStorageObjectControlFlags VslmSetVStorageObjectControlFlagsRequestType
  1217  
  1218  func init() {
  1219  	types.Add("vslm:VslmSetVStorageObjectControlFlags", reflect.TypeOf((*VslmSetVStorageObjectControlFlags)(nil)).Elem())
  1220  }
  1221  
  1222  // The parameters of `VslmVStorageObjectManager.VslmSetVStorageObjectControlFlags`.
  1223  //
  1224  // This structure may be used only with operations rendered under `/vslm`.
  1225  type VslmSetVStorageObjectControlFlagsRequestType struct {
  1226  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
  1227  	// The ID of the virtual storage object.
  1228  	Id types.ID `xml:"id" json:"id"`
  1229  	// control flags enum array to be set on the
  1230  	// VStorageObject. All control flags not included
  1231  	// in the array remain intact.
  1232  	ControlFlags []string `xml:"controlFlags,omitempty" json:"controlFlags,omitempty"`
  1233  }
  1234  
  1235  func init() {
  1236  	types.Add("vslm:VslmSetVStorageObjectControlFlagsRequestType", reflect.TypeOf((*VslmSetVStorageObjectControlFlagsRequestType)(nil)).Elem())
  1237  }
  1238  
  1239  type VslmSetVStorageObjectControlFlagsResponse struct {
  1240  }
  1241  
  1242  type VslmSyncDatastore VslmSyncDatastoreRequestType
  1243  
  1244  func init() {
  1245  	types.Add("vslm:VslmSyncDatastore", reflect.TypeOf((*VslmSyncDatastore)(nil)).Elem())
  1246  }
  1247  
  1248  // The parameters of `VslmStorageLifecycleManager.VslmSyncDatastore`.
  1249  //
  1250  // This structure may be used only with operations rendered under `/vslm`.
  1251  type VslmSyncDatastoreRequestType struct {
  1252  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
  1253  	// The datastore URL as specified in
  1254  	// `DatastoreInfo.url`
  1255  	DatastoreUrl string `xml:"datastoreUrl" json:"datastoreUrl"`
  1256  	// If this is set to true, all information for this datastore
  1257  	// will be discarded from the catalog and reloaded from the
  1258  	// datastore's catalog
  1259  	FullSync bool `xml:"fullSync" json:"fullSync"`
  1260  	// If set, this call blocks until fcdId is persisited into db
  1261  	// if this fcdId is not found in queue, assume persisted and return
  1262  	FcdId *types.ID `xml:"fcdId,omitempty" json:"fcdId,omitempty"`
  1263  }
  1264  
  1265  func init() {
  1266  	types.Add("vslm:VslmSyncDatastoreRequestType", reflect.TypeOf((*VslmSyncDatastoreRequestType)(nil)).Elem())
  1267  }
  1268  
  1269  type VslmSyncDatastoreResponse struct {
  1270  }
  1271  
  1272  // An SyncFault fault is thrown when there is a failure to synchronize
  1273  // the FCD global catalog information with the local catalog information.
  1274  //
  1275  // Pandora synchronizes the datastore periodically in the background, it
  1276  // recovers from any transient failures affecting the datastore or
  1277  // individual FCDs. In cases where the sync fault needs to be resolved
  1278  // immediately, explicitly triggering a
  1279  // `VslmStorageLifecycleManager.VslmSyncDatastore` should resolve the
  1280  // issue, unless there are underlying infrastructure issues affecting the
  1281  // datastore or FCD. If the fault is ignored there is
  1282  // a possibility that the FCD is unrecognized by Pandora or Pandora
  1283  // DB having stale information, consequently, affecting the return of
  1284  // `VslmVStorageObjectManager.VslmListVStorageObjectForSpec` and
  1285  // `VslmVStorageObjectManager.VslmRetrieveVStorageObjects` APIs.
  1286  // In cases where the `VslmSyncFault.id` is specified,
  1287  // the client can explicitly trigger
  1288  // `VslmStorageLifecycleManager.VslmSyncDatastore` to resolve
  1289  // the issue, else, could ignore the fault in anticipation of Pandora
  1290  // automatically resolving the error.
  1291  //
  1292  // This structure may be used only with operations rendered under `/vslm`.
  1293  type VslmSyncFault struct {
  1294  	VslmFault
  1295  
  1296  	Id *types.ID `xml:"id,omitempty" json:"id,omitempty"`
  1297  }
  1298  
  1299  func init() {
  1300  	types.Add("vslm:VslmSyncFault", reflect.TypeOf((*VslmSyncFault)(nil)).Elem())
  1301  }
  1302  
  1303  type VslmSyncFaultFault VslmSyncFault
  1304  
  1305  func init() {
  1306  	types.Add("vslm:VslmSyncFaultFault", reflect.TypeOf((*VslmSyncFaultFault)(nil)).Elem())
  1307  }
  1308  
  1309  // This data object type contains all information about a VSLM task.
  1310  //
  1311  // A task represents an operation performed by VirtualCenter or ESX.
  1312  //
  1313  // This structure may be used only with operations rendered under `/vslm`.
  1314  type VslmTaskInfo struct {
  1315  	types.DynamicData
  1316  
  1317  	// The unique key for the task.
  1318  	Key string `xml:"key" json:"key"`
  1319  	// The managed object that represents this task.
  1320  	//
  1321  	// Refers instance of `VslmTask`.
  1322  	Task types.ManagedObjectReference `xml:"task" json:"task"`
  1323  	// The description field of the task describes the current phase of
  1324  	// operation of the task.
  1325  	//
  1326  	// For a task that does a single monolithic
  1327  	// activity, this will be fixed and unchanging.
  1328  	// For tasks that have various substeps, this field will change
  1329  	// as the task progresses from one phase to another.
  1330  	Description *types.LocalizableMessage `xml:"description,omitempty" json:"description,omitempty"`
  1331  	// The name of the operation that created the task.
  1332  	//
  1333  	// This is not set
  1334  	// for internal tasks.
  1335  	Name string `xml:"name,omitempty" json:"name,omitempty"`
  1336  	// An identifier for this operation.
  1337  	//
  1338  	// This includes publicly visible
  1339  	// internal tasks and is a lookup in the TaskDescription methodInfo
  1340  	// data object.
  1341  	DescriptionId string `xml:"descriptionId" json:"descriptionId"`
  1342  	// Managed entity to which the operation applies.
  1343  	//
  1344  	// Refers instance of `ManagedEntity`.
  1345  	Entity *types.ManagedObjectReference `xml:"entity,omitempty" json:"entity,omitempty"`
  1346  	// The name of the managed entity, locale-specific, retained for the
  1347  	// history collector database.
  1348  	EntityName string `xml:"entityName,omitempty" json:"entityName,omitempty"`
  1349  	// If the state of the task is "running", then this property is a list of
  1350  	// managed entities that the operation has locked, with a shared lock.
  1351  	//
  1352  	// Refers instances of `ManagedEntity`.
  1353  	Locked []types.ManagedObjectReference `xml:"locked,omitempty" json:"locked,omitempty"`
  1354  	// Runtime status of the task.
  1355  	State VslmTaskInfoState `xml:"state" json:"state"`
  1356  	// Flag to indicate whether or not the client requested
  1357  	// cancellation of the task.
  1358  	Cancelled bool `xml:"cancelled" json:"cancelled"`
  1359  	// Flag to indicate whether or not the cancel task operation is supported.
  1360  	Cancelable bool `xml:"cancelable" json:"cancelable"`
  1361  	// If the task state is "error", then this property contains the fault code.
  1362  	Error *types.LocalizedMethodFault `xml:"error,omitempty" json:"error,omitempty"`
  1363  	// If the task state is "success", then this property may be used
  1364  	// to hold a return value.
  1365  	Result types.AnyType `xml:"result,omitempty,typeattr" json:"result,omitempty"`
  1366  	// If the task state is "running", then this property contains a
  1367  	// progress measurement, expressed as percentage completed, from 0 to 100.
  1368  	//
  1369  	// If this property is not set, then the command does not report progress.
  1370  	Progress int32 `xml:"progress,omitempty" json:"progress,omitempty"`
  1371  	// Kind of entity responsible for creating this task.
  1372  	Reason BaseVslmTaskReason `xml:"reason,typeattr" json:"reason"`
  1373  	// Time stamp when the task was created.
  1374  	QueueTime time.Time `xml:"queueTime" json:"queueTime"`
  1375  	// Time stamp when the task started running.
  1376  	StartTime *time.Time `xml:"startTime" json:"startTime,omitempty"`
  1377  	// Time stamp when the task was completed (whether success or failure).
  1378  	CompleteTime *time.Time `xml:"completeTime" json:"completeTime,omitempty"`
  1379  	// Event chain ID that leads to the corresponding events.
  1380  	EventChainId int32 `xml:"eventChainId" json:"eventChainId"`
  1381  	// The user entered tag to identify the operations and their side effects
  1382  	ChangeTag string `xml:"changeTag,omitempty" json:"changeTag,omitempty"`
  1383  	// Tasks can be created by another task.
  1384  	//
  1385  	// This shows `VslmTaskInfo.key` of the task spun off this task. This is to
  1386  	// track causality between tasks.
  1387  	ParentTaskKey string `xml:"parentTaskKey,omitempty" json:"parentTaskKey,omitempty"`
  1388  	// Tasks can be created by another task and such creation can go on for
  1389  	// multiple levels.
  1390  	//
  1391  	// This is the `VslmTaskInfo.key` of the task
  1392  	// that started the chain of tasks.
  1393  	RootTaskKey string `xml:"rootTaskKey,omitempty" json:"rootTaskKey,omitempty"`
  1394  	// The activation Id is a client-provided token to link an API call with a task.
  1395  	ActivationId string `xml:"activationId,omitempty" json:"activationId,omitempty"`
  1396  }
  1397  
  1398  func init() {
  1399  	types.Add("vslm:VslmTaskInfo", reflect.TypeOf((*VslmTaskInfo)(nil)).Elem())
  1400  }
  1401  
  1402  // Base type for all task reasons.
  1403  //
  1404  // Task reasons represent the kind of entity responsible for a task's creation.
  1405  //
  1406  // This structure may be used only with operations rendered under `/vslm`.
  1407  type VslmTaskReason struct {
  1408  	types.DynamicData
  1409  }
  1410  
  1411  func init() {
  1412  	types.Add("vslm:VslmTaskReason", reflect.TypeOf((*VslmTaskReason)(nil)).Elem())
  1413  }
  1414  
  1415  // Indicates that the task was queued by an alarm.
  1416  //
  1417  // This structure may be used only with operations rendered under `/vslm`.
  1418  type VslmTaskReasonAlarm struct {
  1419  	VslmTaskReason
  1420  
  1421  	// The name of the alarm that queued the task, retained in the history
  1422  	// collector database.
  1423  	AlarmName string `xml:"alarmName" json:"alarmName"`
  1424  	// The alarm object that queued the task.
  1425  	//
  1426  	// Refers instance of `Alarm`.
  1427  	Alarm types.ManagedObjectReference `xml:"alarm" json:"alarm"`
  1428  	// The name of the managed entity on which the alarm is triggered,
  1429  	// retained in the history collector database.
  1430  	EntityName string `xml:"entityName" json:"entityName"`
  1431  	// The managed entity object on which the alarm is triggered.
  1432  	//
  1433  	// Refers instance of `ManagedEntity`.
  1434  	Entity types.ManagedObjectReference `xml:"entity" json:"entity"`
  1435  }
  1436  
  1437  func init() {
  1438  	types.Add("vslm:VslmTaskReasonAlarm", reflect.TypeOf((*VslmTaskReasonAlarm)(nil)).Elem())
  1439  }
  1440  
  1441  // Indicates that the task was queued by a scheduled task.
  1442  //
  1443  // This structure may be used only with operations rendered under `/vslm`.
  1444  type VslmTaskReasonSchedule struct {
  1445  	VslmTaskReason
  1446  
  1447  	// The name of the scheduled task that queued this task.
  1448  	Name string `xml:"name" json:"name"`
  1449  	// The scheduledTask object that queued this task.
  1450  	//
  1451  	// Refers instance of `ScheduledTask`.
  1452  	ScheduledTask types.ManagedObjectReference `xml:"scheduledTask" json:"scheduledTask"`
  1453  }
  1454  
  1455  func init() {
  1456  	types.Add("vslm:VslmTaskReasonSchedule", reflect.TypeOf((*VslmTaskReasonSchedule)(nil)).Elem())
  1457  }
  1458  
  1459  // Indicates that the task was started by the system (a default task).
  1460  //
  1461  // This structure may be used only with operations rendered under `/vslm`.
  1462  type VslmTaskReasonSystem struct {
  1463  	VslmTaskReason
  1464  }
  1465  
  1466  func init() {
  1467  	types.Add("vslm:VslmTaskReasonSystem", reflect.TypeOf((*VslmTaskReasonSystem)(nil)).Elem())
  1468  }
  1469  
  1470  // Indicates that the task was queued by a specific user.
  1471  //
  1472  // This structure may be used only with operations rendered under `/vslm`.
  1473  type VslmTaskReasonUser struct {
  1474  	VslmTaskReason
  1475  
  1476  	// Name of the user that queued the task.
  1477  	UserName string `xml:"userName" json:"userName"`
  1478  }
  1479  
  1480  func init() {
  1481  	types.Add("vslm:VslmTaskReasonUser", reflect.TypeOf((*VslmTaskReasonUser)(nil)).Elem())
  1482  }
  1483  
  1484  // The parameters of `VslmVStorageObjectManager.VslmUpdateVStorageInfrastructureObjectPolicy_Task`.
  1485  //
  1486  // This structure may be used only with operations rendered under `/vslm`.
  1487  type VslmUpdateVStorageInfrastructureObjectPolicyRequestType struct {
  1488  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
  1489  	// specification to assign a SPBM policy to FCD infrastructure
  1490  	// object.
  1491  	Spec types.VslmInfrastructureObjectPolicySpec `xml:"spec" json:"spec"`
  1492  }
  1493  
  1494  func init() {
  1495  	types.Add("vslm:VslmUpdateVStorageInfrastructureObjectPolicyRequestType", reflect.TypeOf((*VslmUpdateVStorageInfrastructureObjectPolicyRequestType)(nil)).Elem())
  1496  }
  1497  
  1498  type VslmUpdateVStorageInfrastructureObjectPolicy_Task VslmUpdateVStorageInfrastructureObjectPolicyRequestType
  1499  
  1500  func init() {
  1501  	types.Add("vslm:VslmUpdateVStorageInfrastructureObjectPolicy_Task", reflect.TypeOf((*VslmUpdateVStorageInfrastructureObjectPolicy_Task)(nil)).Elem())
  1502  }
  1503  
  1504  type VslmUpdateVStorageInfrastructureObjectPolicy_TaskResponse struct {
  1505  	Returnval types.ManagedObjectReference `xml:"returnval" json:"returnval"`
  1506  }
  1507  
  1508  // The parameters of `VslmVStorageObjectManager.VslmUpdateVStorageObjectMetadata_Task`.
  1509  //
  1510  // This structure may be used only with operations rendered under `/vslm`.
  1511  type VslmUpdateVStorageObjectMetadataRequestType struct {
  1512  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
  1513  	// The ID of the virtual storage object.
  1514  	Id types.ID `xml:"id" json:"id"`
  1515  	// array of key/value strings. (keys must be unique
  1516  	// within the list)
  1517  	Metadata []types.KeyValue `xml:"metadata,omitempty" json:"metadata,omitempty"`
  1518  	// array of keys need to be deleted
  1519  	DeleteKeys []string `xml:"deleteKeys,omitempty" json:"deleteKeys,omitempty"`
  1520  }
  1521  
  1522  func init() {
  1523  	types.Add("vslm:VslmUpdateVStorageObjectMetadataRequestType", reflect.TypeOf((*VslmUpdateVStorageObjectMetadataRequestType)(nil)).Elem())
  1524  }
  1525  
  1526  type VslmUpdateVStorageObjectMetadata_Task VslmUpdateVStorageObjectMetadataRequestType
  1527  
  1528  func init() {
  1529  	types.Add("vslm:VslmUpdateVStorageObjectMetadata_Task", reflect.TypeOf((*VslmUpdateVStorageObjectMetadata_Task)(nil)).Elem())
  1530  }
  1531  
  1532  type VslmUpdateVStorageObjectMetadata_TaskResponse struct {
  1533  	Returnval types.ManagedObjectReference `xml:"returnval" json:"returnval"`
  1534  }
  1535  
  1536  // The parameters of `VslmVStorageObjectManager.VslmUpdateVstorageObjectCrypto_Task`.
  1537  //
  1538  // This structure may be used only with operations rendered under `/vslm`.
  1539  type VslmUpdateVstorageObjectCryptoRequestType struct {
  1540  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
  1541  	// The ID of the virtual storage object.
  1542  	Id types.ID `xml:"id" json:"id"`
  1543  	// New profile requirement on the virtual storage object.
  1544  	Profile []types.VirtualMachineProfileSpec `xml:"profile,omitempty" json:"profile,omitempty"`
  1545  	// The crypto information of each disk on the chain.
  1546  	DisksCrypto *types.DiskCryptoSpec `xml:"disksCrypto,omitempty" json:"disksCrypto,omitempty"`
  1547  }
  1548  
  1549  func init() {
  1550  	types.Add("vslm:VslmUpdateVstorageObjectCryptoRequestType", reflect.TypeOf((*VslmUpdateVstorageObjectCryptoRequestType)(nil)).Elem())
  1551  }
  1552  
  1553  type VslmUpdateVstorageObjectCrypto_Task VslmUpdateVstorageObjectCryptoRequestType
  1554  
  1555  func init() {
  1556  	types.Add("vslm:VslmUpdateVstorageObjectCrypto_Task", reflect.TypeOf((*VslmUpdateVstorageObjectCrypto_Task)(nil)).Elem())
  1557  }
  1558  
  1559  type VslmUpdateVstorageObjectCrypto_TaskResponse struct {
  1560  	Returnval types.ManagedObjectReference `xml:"returnval" json:"returnval"`
  1561  }
  1562  
  1563  // The parameters of `VslmVStorageObjectManager.VslmUpdateVstorageObjectPolicy_Task`.
  1564  //
  1565  // This structure may be used only with operations rendered under `/vslm`.
  1566  type VslmUpdateVstorageObjectPolicyRequestType struct {
  1567  	This types.ManagedObjectReference `xml:"_this" json:"_this"`
  1568  	// The ID of the virtual storage object.
  1569  	Id types.ID `xml:"id" json:"id"`
  1570  	// New profile requirement on the virtual storage object.
  1571  	Profile []types.VirtualMachineProfileSpec `xml:"profile,omitempty" json:"profile,omitempty"`
  1572  }
  1573  
  1574  func init() {
  1575  	types.Add("vslm:VslmUpdateVstorageObjectPolicyRequestType", reflect.TypeOf((*VslmUpdateVstorageObjectPolicyRequestType)(nil)).Elem())
  1576  }
  1577  
  1578  type VslmUpdateVstorageObjectPolicy_Task VslmUpdateVstorageObjectPolicyRequestType
  1579  
  1580  func init() {
  1581  	types.Add("vslm:VslmUpdateVstorageObjectPolicy_Task", reflect.TypeOf((*VslmUpdateVstorageObjectPolicy_Task)(nil)).Elem())
  1582  }
  1583  
  1584  type VslmUpdateVstorageObjectPolicy_TaskResponse struct {
  1585  	Returnval types.ManagedObjectReference `xml:"returnval" json:"returnval"`
  1586  }
  1587  
  1588  // This data object is a key-value pair whose key is the virtual storage
  1589  // object id, and value is the vm association information.
  1590  //
  1591  // This structure may be used only with operations rendered under `/vslm`.
  1592  type VslmVsoVStorageObjectAssociations struct {
  1593  	types.DynamicData
  1594  
  1595  	// ID of this virtual storage object.
  1596  	Id types.ID `xml:"id" json:"id"`
  1597  	// Array of vm associations related to the virtual storage object.
  1598  	VmDiskAssociation []VslmVsoVStorageObjectAssociationsVmDiskAssociation `xml:"vmDiskAssociation,omitempty" json:"vmDiskAssociation,omitempty"`
  1599  	// Received error while generating associations.
  1600  	Fault *types.LocalizedMethodFault `xml:"fault,omitempty" json:"fault,omitempty"`
  1601  }
  1602  
  1603  func init() {
  1604  	types.Add("vslm:VslmVsoVStorageObjectAssociations", reflect.TypeOf((*VslmVsoVStorageObjectAssociations)(nil)).Elem())
  1605  }
  1606  
  1607  // This data object contains infomation of a VM Disk association.
  1608  //
  1609  // This structure may be used only with operations rendered under `/vslm`.
  1610  type VslmVsoVStorageObjectAssociationsVmDiskAssociation struct {
  1611  	types.DynamicData
  1612  
  1613  	// ID of the virtual machine.
  1614  	VmId string `xml:"vmId" json:"vmId"`
  1615  	// Device key of the disk attached to the VM.
  1616  	DiskKey int32 `xml:"diskKey" json:"diskKey"`
  1617  }
  1618  
  1619  func init() {
  1620  	types.Add("vslm:VslmVsoVStorageObjectAssociationsVmDiskAssociation", reflect.TypeOf((*VslmVsoVStorageObjectAssociationsVmDiskAssociation)(nil)).Elem())
  1621  }
  1622  
  1623  // The `VslmVsoVStorageObjectQueryResult` contains the result of
  1624  // `VslmVStorageObjectManager.VslmListVStorageObjectForSpec` API.
  1625  //
  1626  // This structure may be used only with operations rendered under `/vslm`.
  1627  type VslmVsoVStorageObjectQueryResult struct {
  1628  	types.DynamicData
  1629  
  1630  	// If set to false, more results were found than could be returned (either
  1631  	// limited by maxResult input argument in the
  1632  	// `VslmVStorageObjectManager.VslmListVStorageObjectForSpec` API or
  1633  	// truncated because the number of results exceeded the internal limit).
  1634  	AllRecordsReturned bool `xml:"allRecordsReturned" json:"allRecordsReturned"`
  1635  	// IDs of the VStorageObjects matching the query criteria
  1636  	// NOTE: This field will be removed once the dev/qe code is refactored.
  1637  	//
  1638  	// IDs will be returned in ascending order. If
  1639  	// `VslmVsoVStorageObjectQueryResult.allRecordsReturned` is set to false,
  1640  	// to get the additional results, repeat the query with ID > last ID as
  1641  	// part of the query spec `VslmVsoVStorageObjectQuerySpec`.
  1642  	Id []types.ID `xml:"id,omitempty" json:"id,omitempty"`
  1643  	// Results of the query criteria.
  1644  	//
  1645  	// `IDs` will be returned in
  1646  	// ascending order. If `VslmVsoVStorageObjectQueryResult.allRecordsReturned`
  1647  	// is set to false,then, to get the additional results, repeat the query
  1648  	// with ID > last ID as part of the query spec
  1649  	// `VslmVsoVStorageObjectQuerySpec`.
  1650  	QueryResults []VslmVsoVStorageObjectResult `xml:"queryResults,omitempty" json:"queryResults,omitempty"`
  1651  }
  1652  
  1653  func init() {
  1654  	types.Add("vslm:VslmVsoVStorageObjectQueryResult", reflect.TypeOf((*VslmVsoVStorageObjectQueryResult)(nil)).Elem())
  1655  }
  1656  
  1657  // The `VslmVsoVStorageObjectQuerySpec` describes the criteria to query
  1658  // VStorageObject from global catalog.
  1659  //
  1660  // `VslmVsoVStorageObjectQuerySpec` is sent as input to
  1661  // `VslmVStorageObjectManager.VslmListVStorageObjectForSpec` API.
  1662  //
  1663  // This structure may be used only with operations rendered under `/vslm`.
  1664  type VslmVsoVStorageObjectQuerySpec struct {
  1665  	types.DynamicData
  1666  
  1667  	// This field specifies the searchable field.
  1668  	//
  1669  	// This can be one of the values from
  1670  	// `VslmVsoVStorageObjectQuerySpecQueryFieldEnum_enum`.
  1671  	QueryField string `xml:"queryField" json:"queryField"`
  1672  	// This field specifies the operator to compare the searchable field
  1673  	// `VslmVsoVStorageObjectQuerySpec.queryField` with the specified
  1674  	// value `VslmVsoVStorageObjectQuerySpec.queryValue`.
  1675  	//
  1676  	// This can be one of the values from `VslmVsoVStorageObjectQuerySpecQueryOperatorEnum_enum`.
  1677  	QueryOperator string `xml:"queryOperator" json:"queryOperator"`
  1678  	// This field specifies the value to be compared with the searchable field.
  1679  	QueryValue []string `xml:"queryValue,omitempty" json:"queryValue,omitempty"`
  1680  }
  1681  
  1682  func init() {
  1683  	types.Add("vslm:VslmVsoVStorageObjectQuerySpec", reflect.TypeOf((*VslmVsoVStorageObjectQuerySpec)(nil)).Elem())
  1684  }
  1685  
  1686  // The `VslmVsoVStorageObjectResult` contains the result objects of
  1687  // `VslmVsoVStorageObjectQueryResult` which is returned as a result of
  1688  // `VslmVStorageObjectManager.VslmListVStorageObjectForSpec` and
  1689  // `VslmVStorageObjectManager.VslmRetrieveVStorageObjects` APIs.
  1690  //
  1691  // This structure may be used only with operations rendered under `/vslm`.
  1692  type VslmVsoVStorageObjectResult struct {
  1693  	types.DynamicData
  1694  
  1695  	// The ID of the virtual storage object.
  1696  	Id types.ID `xml:"id" json:"id"`
  1697  	// Name of FCD.
  1698  	Name string `xml:"name,omitempty" json:"name,omitempty"`
  1699  	// The size in MB of this object.
  1700  	//
  1701  	// If the faults are set,
  1702  	// then the capacityInMB will be -1
  1703  	CapacityInMB int64 `xml:"capacityInMB" json:"capacityInMB"`
  1704  	// The create time information of the FCD.
  1705  	CreateTime *time.Time `xml:"createTime" json:"createTime,omitempty"`
  1706  	// The Datastore URL containing the FCD.
  1707  	DatastoreUrl string `xml:"datastoreUrl,omitempty" json:"datastoreUrl,omitempty"`
  1708  	// The disk path of the FCD.
  1709  	DiskPath string `xml:"diskPath,omitempty" json:"diskPath,omitempty"`
  1710  	// The rolled up used capacity of the FCD and it's snapshots.
  1711  	//
  1712  	// Returns -1L if the space information is currently unavailable.
  1713  	UsedCapacityInMB int64 `xml:"usedCapacityInMB,omitempty" json:"usedCapacityInMB,omitempty"`
  1714  	// The ID of the backing object of the virtual storage object.
  1715  	BackingObjectId *types.ID `xml:"backingObjectId,omitempty" json:"backingObjectId,omitempty"`
  1716  	// VStorageObjectSnapshotResult array containing information about all the
  1717  	// snapshots of the virtual storage object.
  1718  	SnapshotInfo []VslmVsoVStorageObjectSnapshotResult `xml:"snapshotInfo,omitempty" json:"snapshotInfo,omitempty"`
  1719  	// Metadata array of key/value strings.
  1720  	Metadata []types.KeyValue `xml:"metadata,omitempty" json:"metadata,omitempty"`
  1721  	// The fault is set in case of error conditions and this property will
  1722  	// have the reason.
  1723  	//
  1724  	// Possible Faults:
  1725  	// NotFound If specified virtual storage object cannot be found.
  1726  	Error *types.LocalizedMethodFault `xml:"error,omitempty" json:"error,omitempty"`
  1727  }
  1728  
  1729  func init() {
  1730  	types.Add("vslm:VslmVsoVStorageObjectResult", reflect.TypeOf((*VslmVsoVStorageObjectResult)(nil)).Elem())
  1731  }
  1732  
  1733  // The `VslmVsoVStorageObjectSnapshotResult` contains brief information about a
  1734  // snapshot of the object `VslmVsoVStorageObjectResult` which is returned as a
  1735  // result of `VslmVStorageObjectManager.VslmRetrieveVStorageObjects` API.
  1736  //
  1737  // This structure may be used only with operations rendered under `/vslm`.
  1738  type VslmVsoVStorageObjectSnapshotResult struct {
  1739  	types.DynamicData
  1740  
  1741  	// The ID of the vsan object backing a snapshot of the virtual storage
  1742  	// object.
  1743  	BackingObjectId types.ID `xml:"backingObjectId" json:"backingObjectId"`
  1744  	// The description user passed in when creating this snapshot.
  1745  	Description string `xml:"description,omitempty" json:"description,omitempty"`
  1746  	// The ID of this snapshot, created and used in fcd layer.
  1747  	SnapshotId *types.ID `xml:"snapshotId,omitempty" json:"snapshotId,omitempty"`
  1748  	// The file path of this snapshot.
  1749  	DiskPath string `xml:"diskPath,omitempty" json:"diskPath,omitempty"`
  1750  }
  1751  
  1752  func init() {
  1753  	types.Add("vslm:VslmVsoVStorageObjectSnapshotResult", reflect.TypeOf((*VslmVsoVStorageObjectSnapshotResult)(nil)).Elem())
  1754  }
  1755  
  1756  type VersionURI string
  1757  
  1758  func init() {
  1759  	types.Add("vslm:versionURI", reflect.TypeOf((*VersionURI)(nil)).Elem())
  1760  }