private IFileSystemManager GetFileSystem(GameModel model)
{
if (model == null) {
throw new ArgumentException("model argument cannot be null");
}
IFileSystemManager fileSystem;
if (FileSystems.TryGetValue(model, out fileSystem)) {
return fileSystem;
}
fileSystem = App.Kernel.Get<IFileSystemManager>();
FileSystems.TryAdd(model, fileSystem);
fileSystem.WriteStatusChanged += (s, e) => {
OnStatusChanged(UpdateStatusEventArgs.Stage.INSTALLING, 1, 1, e.FileNumber, e.FileCount, 0, 1);
};
return fileSystem;
}