Introduce IReadOnlyFileSystem interface.

This commit is contained in:
Paul Chote
2016-02-15 00:54:50 +00:00
parent 4d3a4a32b9
commit 9978e20a83
2 changed files with 11 additions and 1 deletions

View File

@@ -17,7 +17,15 @@ using OpenRA.Primitives;
namespace OpenRA.FileSystem
{
public class FileSystem
public interface IReadOnlyFileSystem
{
Stream Open(string filename);
bool TryGetPackageContaining(string path, out IReadOnlyPackage package, out string filename);
bool TryOpen(string filename, out Stream s);
bool Exists(string filename);
}
public class FileSystem : IReadOnlyFileSystem
{
public IEnumerable<IReadOnlyPackage> MountedPackages { get { return mountedPackages.Keys; } }
readonly Dictionary<IReadOnlyPackage, int> mountedPackages = new Dictionary<IReadOnlyPackage, int>();