code: func (virtualDisk *VirtualDisk) Create(ctx context.Context, datastore *vclib.Datastore) (string, error) {
  	if virtualDisk.VolumeOptions.DiskFormat == "" {
  		virtualDisk.VolumeOptions.DiskFormat = vclib.ThinDiskType
  	}
  	if !virtualDisk.VolumeOptions.VerifyVolumeOptions() {
  		klog.Error("VolumeOptions verification failed. volumeOptions: ", virtualDisk.VolumeOptions)
  		return "", vclib.ErrInvalidVolumeOptions
  	}
  	if virtualDisk.VolumeOptions.StoragePolicyID != "" && virtualDisk.VolumeOptions.StoragePolicyName != "" {
  		return "", fmt.Errorf("Storage Policy ID and Storage Policy Name both set, Please set only one parameter")
  	}
  	return getDiskManager(virtualDisk, VirtualDiskCreateOperation).Create(ctx, datastore)
  }
docs: // Create gets appropriate disk manager and calls respective create method