github.com/vmware/govmomi@v0.37.2/vslm/types/types.go (about)

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