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