// Code generated by applyconfiguration-gen. DO NOT EDIT. package v1 // VSpherePlatformTopologyApplyConfiguration represents an declarative configuration of the VSpherePlatformTopology type for use // with apply. type VSpherePlatformTopologyApplyConfiguration struct { Datacenter *string `json:"datacenter,omitempty"` ComputeCluster *string `json:"computeCluster,omitempty"` Networks []string `json:"networks,omitempty"` Datastore *string `json:"datastore,omitempty"` ResourcePool *string `json:"resourcePool,omitempty"` Folder *string `json:"folder,omitempty"` Template *string `json:"template,omitempty"` } // VSpherePlatformTopologyApplyConfiguration constructs an declarative configuration of the VSpherePlatformTopology type for use with // apply. func VSpherePlatformTopology() *VSpherePlatformTopologyApplyConfiguration { return &VSpherePlatformTopologyApplyConfiguration{} } // WithDatacenter sets the Datacenter field in the declarative configuration to the given value // and returns the receiver, so that objects can be built by chaining "With" function invocations. // If called multiple times, the Datacenter field is set to the value of the last call. func (b *VSpherePlatformTopologyApplyConfiguration) WithDatacenter(value string) *VSpherePlatformTopologyApplyConfiguration { b.Datacenter = &value return b } // WithComputeCluster sets the ComputeCluster field in the declarative configuration to the given value // and returns the receiver, so that objects can be built by chaining "With" function invocations. // If called multiple times, the ComputeCluster field is set to the value of the last call. func (b *VSpherePlatformTopologyApplyConfiguration) WithComputeCluster(value string) *VSpherePlatformTopologyApplyConfiguration { b.ComputeCluster = &value return b } // WithNetworks adds the given value to the Networks field in the declarative configuration // and returns the receiver, so that objects can be build by chaining "With" function invocations. // If called multiple times, values provided by each call will be appended to the Networks field. func (b *VSpherePlatformTopologyApplyConfiguration) WithNetworks(values ...string) *VSpherePlatformTopologyApplyConfiguration { for i := range values { b.Networks = append(b.Networks, values[i]) } return b } // WithDatastore sets the Datastore field in the declarative configuration to the given value // and returns the receiver, so that objects can be built by chaining "With" function invocations. // If called multiple times, the Datastore field is set to the value of the last call. func (b *VSpherePlatformTopologyApplyConfiguration) WithDatastore(value string) *VSpherePlatformTopologyApplyConfiguration { b.Datastore = &value return b } // WithResourcePool sets the ResourcePool field in the declarative configuration to the given value // and returns the receiver, so that objects can be built by chaining "With" function invocations. // If called multiple times, the ResourcePool field is set to the value of the last call. func (b *VSpherePlatformTopologyApplyConfiguration) WithResourcePool(value string) *VSpherePlatformTopologyApplyConfiguration { b.ResourcePool = &value return b } // WithFolder sets the Folder field in the declarative configuration to the given value // and returns the receiver, so that objects can be built by chaining "With" function invocations. // If called multiple times, the Folder field is set to the value of the last call. func (b *VSpherePlatformTopologyApplyConfiguration) WithFolder(value string) *VSpherePlatformTopologyApplyConfiguration { b.Folder = &value return b } // WithTemplate sets the Template field in the declarative configuration to the given value // and returns the receiver, so that objects can be built by chaining "With" function invocations. // If called multiple times, the Template field is set to the value of the last call. func (b *VSpherePlatformTopologyApplyConfiguration) WithTemplate(value string) *VSpherePlatformTopologyApplyConfiguration { b.Template = &value return b