public void DeleteGame(AowGameType theGameType, string fileName) { if (!theGameType.Equals(AowGameType.Unknown)) { AowGame theGame = GetGameByType(theGameType); if (theGame != null && theGame.IsInstalled) { DirectoryInfo[] theFolders = new DirectoryInfo[] { theGame.EmailIn, theGame.EmailOut, theGame.Save }; string searchPattern = GetSearchPattern(fileName); foreach (DirectoryInfo folder in theFolders) { FileInfo[] matchingFiles = GetAllGameFiles(fileName, folder, searchPattern); if (matchingFiles.Length > 0) { foreach (FileInfo file in matchingFiles) { if (File.Exists(file.FullName)) { File.Delete(file.FullName); } } } } } } else { //If it's an unknown game just delete ClearCheckEmailFolder(fileName); } }
private DirectoryInfo GetSaveFolder(AowGame theGame, EmailSaveFolder saveFolder) { DirectoryInfo returnVal = theGame.EmailIn; if (saveFolder.Equals(EmailSaveFolder.Save)) { returnVal = theGame.Save; } return(returnVal); }
public bool IsInstalled(AowGameType theGameType) { bool returnVal = false; AowGame theGame = GetGameByType(theGameType); if (theGame != null) { returnVal = theGame.IsInstalled; } return(returnVal); }
public void ArchiveEndedGame(AowGameType theGameType, string fileName, string endedFolderName) { if (!theGameType.Equals(AowGameType.Unknown)) { AowGame theGame = GetGameByType(theGameType); if (theGame != null && theGame.IsInstalled) { DirectoryInfo[] theFolders = new DirectoryInfo[] { theGame.EmailIn, theGame.EmailOut, theGame.Save }; string searchPattern = GetSearchPattern(fileName); foreach (DirectoryInfo folder in theFolders) { FileInfo[] matchingFiles = GetAllGameFiles(fileName, folder, searchPattern); if (matchingFiles.Length > 0) { string endedFolderPath = Path.Combine(folder.FullName, endedFolderName); if (!Directory.Exists(endedFolderPath)) { Directory.CreateDirectory(endedFolderPath); } DirectoryInfo theEndedFolder = new DirectoryInfo(endedFolderPath); foreach (FileInfo file in matchingFiles) { string newFileName = Path.Combine(theEndedFolder.FullName, file.Name); try { if (File.Exists(newFileName)) { File.Delete(newFileName); } //This is in a Try Catch incase it tries to move a non virtualized file in virtualization mode (UAC on) File.Move(file.FullName, newFileName); } catch { } } } } } } else { //If it's an unknown game just delete ClearCheckEmailFolder(fileName); } }
public void CopyToEmailOut(MimeData theAttachment, AowGame theGame) { if (theAttachment != null && theGame != null) { string fileName = theAttachment.FileName; if (!string.IsNullOrEmpty(fileName)) { string destPath = Path.Combine(theGame.EmailOut.FullName, fileName); if (File.Exists(destPath)) { File.Delete(destPath); } theAttachment.Save(destPath); } } }
public void StoreDownloadFile(ASGFileInfo theAsgFile, EmailSaveFolder saveFolder) { bool success = false; AowGame theGame = GetGameByType(theAsgFile.GameType); if (theGame != null && theAsgFile.IsValid) { DirectoryInfo saveFolderInfo = GetSaveFolder(theGame, saveFolder); if (saveFolderInfo != null) { theAsgFile.SaveToFolder(saveFolderInfo.FullName); success = true; } } if (success) { RaiseOnGameSaved( theAsgFile.GameType, theAsgFile.FileNameTrue, theAsgFile.GameTitle, theAsgFile.MapTitle, theAsgFile.TurnNumber.ToString()); } else { theAsgFile.SaveToFolder(_checkEmailFolder); RaiseOnGameSaved(AowGameType.Unknown, theAsgFile.FileName); } //OLD CODE /* * switch (theAsgFile.FileType) * { * case ASGFileType.Aow1: * if (IsInstalled(AowGameType.Aow1)) * { * theGame = GetGameByType(AowGameType.Aow1); * theAsgFile.SaveToFolder(GetSaveFolder(theGame, saveFolder).FullName); * } * break; * case ASGFileType.Aow2Sm: * bool aow2 = IsInstalled(AowGameType.Aow2); * bool aowSm = IsInstalled(AowGameType.AowSm); * * if (aow2 && !aowSm) * { * theGame = GetGameByType(AowGameType.Aow2); * theAsgFile.SaveToFolder(GetSaveFolder(theGame, saveFolder).FullName); * } * else if (!aow2 && aowSm) * { * theGame = GetGameByType(AowGameType.AowSm); * theAsgFile.SaveToFolder(GetSaveFolder(theGame, saveFolder).FullName); * } * else if (aow2 && aowSm) * { * theGame = GetGameByFile(theAsgFile.FileName); * * if (theGame != null) * { * theAsgFile.SaveToFolder(GetSaveFolder(theGame, saveFolder).FullName); * } * else * { * theAsgFile.SaveToFolder(_checkEmailFolder); * } * } * break; * } */ }