vsphere/resource_vsphere_storage_drs_vm_override.go
func resourceVSphereStorageDrsVMOverrideObjects(
	d *schema.ResourceData,
	meta interface{},
) (*object.StoragePod, *object.VirtualMachine, error) {
	if d.Id() != "" {
		return resourceVSphereStorageDrsVMOverrideObjectsFromID(d, meta)
	}
	return resourceVSphereStorageDrsVMOverrideObjectsFromAttributes(d, meta)
}
func resourceVSphereStorageDrsVMOverrideObjects(
	d *schema.ResourceData,
	meta interface{},
) (*object.StoragePod, *object.VirtualMachine, error) {
	if d.Id() != "" {
		return resourceVSphereStorageDrsVMOverrideObjectsFromID(d, meta)
	}
	return resourceVSphereStorageDrsVMOverrideObjectsFromAttributes(d, meta)
}
// resourceVSphereStorageDrsVMOverrideObjects handles the fetching of the
// datastore cluster and virtual machine depending on what attributes are
// available:
// * If the resource ID is available, the data is derived from the ID.
// * If not, it's derived from the datastore_cluster_id and virtual_machine_id
// attributes.