github.com/vmware/govmomi@v0.51.0/simulator/vm_provisioning_checker.go (about)

     1  // © Broadcom. All Rights Reserved.
     2  // The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.
     3  // SPDX-License-Identifier: Apache-2.0
     4  
     5  package simulator
     6  
     7  import (
     8  	"github.com/vmware/govmomi/vim25/methods"
     9  	"github.com/vmware/govmomi/vim25/mo"
    10  	"github.com/vmware/govmomi/vim25/soap"
    11  	"github.com/vmware/govmomi/vim25/types"
    12  )
    13  
    14  type VmProvisioningChecker struct {
    15  	mo.VirtualMachineProvisioningChecker
    16  }
    17  
    18  func (c *VmProvisioningChecker) CheckRelocateTask(
    19  	ctx *Context,
    20  	r *types.CheckRelocate_Task) soap.HasFault {
    21  
    22  	task := CreateTask(c, "checkRelocate", func(t *Task) (types.AnyType, types.BaseMethodFault) {
    23  		check := types.CheckResult{
    24  			Vm: &r.Vm,
    25  		}
    26  
    27  		return types.ArrayOfCheckResult{
    28  			CheckResult: []types.CheckResult{check},
    29  		}, nil
    30  	})
    31  
    32  	return &methods.CheckRelocate_TaskBody{
    33  		Res: &types.CheckRelocate_TaskResponse{
    34  			Returnval: task.Run(ctx),
    35  		},
    36  	}
    37  }