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