private File CheckOut(Folder folder, File file, Connection connection)
{
string localpath = connection.WorkingFoldersManager.GetWorkingFolder(folder.FullName).FullPath;
if (!System.IO.Directory.Exists(localpath))
System.IO.Directory.CreateDirectory(localpath);
VDF.Vault.Settings.AcquireFilesSettings settings = new VDF.Vault.Settings.AcquireFilesSettings(connection);
settings.OptionsRelationshipGathering.FileRelationshipSettings.VersionGatheringOption = VDF.Vault.Currency.VersionGatheringOption.Latest;
settings.OptionsResolution.OverwriteOption = VDF.Vault.Settings.AcquireFilesSettings.AcquireFileResolutionOptions.OverwriteOptions.ForceOverwriteAll;
settings.LocalPath = new VDF.Currency.FolderPathAbsolute(localpath);
settings.AddFileToAcquire(new VDF.Vault.Currency.Entities.FileIteration(connection, file), VDF.Vault.Settings.AcquireFilesSettings.AcquisitionOption.Download | VDF.Vault.Settings.AcquireFilesSettings.AcquisitionOption.Checkout);
VDF.Vault.Results.AcquireFilesResults results = connection.FileManager.AcquireFiles(settings);
foreach(var r in results.FileResults)
{
return connection.WebServiceManager.DocumentService.GetFileById(r.File.EntityIterationId);
}
return null;
}