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 }