github.com/vmware/govmomi@v0.51.0/view/managed_object_view.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 view 6 7 import ( 8 "context" 9 10 "github.com/vmware/govmomi/object" 11 "github.com/vmware/govmomi/vim25" 12 "github.com/vmware/govmomi/vim25/methods" 13 "github.com/vmware/govmomi/vim25/types" 14 ) 15 16 type ManagedObjectView struct { 17 object.Common 18 } 19 20 func NewManagedObjectView(c *vim25.Client, ref types.ManagedObjectReference) *ManagedObjectView { 21 return &ManagedObjectView{ 22 Common: object.NewCommon(c, ref), 23 } 24 } 25 26 func (v *ManagedObjectView) TraversalSpec() *types.TraversalSpec { 27 return &types.TraversalSpec{ 28 Path: "view", 29 Type: v.Reference().Type, 30 } 31 } 32 33 func (v *ManagedObjectView) Destroy(ctx context.Context) error { 34 req := types.DestroyView{ 35 This: v.Reference(), 36 } 37 38 _, err := methods.DestroyView(ctx, v.Client(), &req) 39 return err 40 }