Exemplo n.º 1
0
        public void HandleUpdateSaveGames(ISourcePortData sourcePort, IGameFile gameFile, IFileData[] files)
        {
            foreach (IFileData file in files)
            {
                FileInfo fi = new FileInfo(Path.Combine(sourcePort.GetSavePath().GetFullPath(), file.OriginalFileName));

                if (fi.Exists)
                {
                    if (file.DateCreated == fi.LastWriteTime)
                    {
                        continue;
                    }

                    try
                    {
                        fi.CopyTo(Path.Combine(SaveGameDirectory.GetFullPath(), file.FileName), true);
                    }
                    catch
                    {
                        //failed, nothing to do
                    }

                    //check to see if the save name changed
                    string saveName = GetSaveGameName(sourcePort, fi);
                    if (saveName != file.Description)
                    {
                        file.Description = saveName;
                    }

                    file.DateCreated = fi.LastWriteTime;
                    DataSourceAdapter.UpdateFile(file);
                }
            }
        }
Exemplo n.º 2
0
        public void CopySaveGamesToSourcePort(ISourcePortData sourcePort, IFileData[] files)
        {
            foreach (IFileData file in files)
            {
                string   savePath = sourcePort.GetSavePath().GetFullPath();
                string   fileName = Path.Combine(sourcePort.GetSavePath().GetFullPath(), file.OriginalFileName);
                FileInfo fiFrom   = new FileInfo(Path.Combine(SaveGameDirectory.GetFullPath(), file.FileName));

                try
                {
                    if (fiFrom.Exists)
                    {
                        DirectoryInfo di = new DirectoryInfo(Path.Combine(savePath, file.OriginalFilePath));

                        if (!di.Exists)
                        {
                            di.Create();
                        }

                        fiFrom.CopyTo(fileName, true);
                    }
                }
                catch
                {
                    //failed, nothing to do
                }
            }
        }
Exemplo n.º 3
0
        public void CopySaveGamesToSourcePort(ISourcePort sourcePort, IFileData[] files)
        {
            files = files.Where(x => x.SourcePortID == sourcePort.SourcePortID).ToArray();

            foreach (IFileData file in files)
            {
                string   fileName = Path.Combine(sourcePort.Directory.GetFullPath(), file.OriginalFileName);
                FileInfo fiFrom   = new FileInfo(Path.Combine(SaveGameDirectory.GetFullPath(), file.FileName));
                try
                {
                    if (fiFrom.Exists)
                    {
                        DirectoryInfo di = new DirectoryInfo(Path.Combine(sourcePort.Directory.GetFullPath(), file.OriginalFilePath));

                        if (!di.Exists)
                        {
                            di.Create();
                        }

                        fiFrom.CopyTo(fileName);
                    }
                }
                catch
                {
                    //failed, nothing to do
                }
            }
        }
Exemplo n.º 4
0
        public IEnumerable <IFileData> HandleNewSaveGames(ISourcePort sourcePort, IGameFile gameFile, string[] files)
        {
            List <IFileData> ret = new List <IFileData>();

            if (gameFile != null && gameFile.GameFileID.HasValue)
            {
                foreach (string file in files)
                {
                    try
                    {
                        FileInfo fi       = new FileInfo(file);
                        string   fileName = Guid.NewGuid().ToString() + fi.Extension;
                        fi.CopyTo(Path.Combine(SaveGameDirectory.GetFullPath(), fileName));

                        FileData fileData = new FileData();
                        fileData.Description      = fi.Name;
                        fileData.OriginalFileName = fi.Name;
                        fileData.FileName         = fileName;
                        fileData.GameFileID       = gameFile.GameFileID.Value;
                        fileData.SourcePortID     = sourcePort.SourcePortID;
                        fileData.FileTypeID       = FileType.SaveGame;

                        DataSourceAdapter.InsertFile(fileData);
                        ret.Add(fileData);
                    }
                    catch
                    {
                        //failed, nothing to do
                    }
                }
            }

            return(ret);
        }
Exemplo n.º 5
0
        public void HandleUpdateSaveGames(ISourcePort sourcePort, IGameFile gameFile, IFileData[] files)
        {
            foreach (IFileData file in files)
            {
                FileInfo fi = new FileInfo(Path.Combine(sourcePort.Directory.GetFullPath(), file.OriginalFileName));

                if (fi.Exists)
                {
                    try
                    {
                        fi.CopyTo(Path.Combine(SaveGameDirectory.GetFullPath(), file.FileName), true);
                    }
                    catch
                    {
                        //failed, nothing to do
                    }
                }
            }
        }