Tidy IReadOnlyPackage interface and implementations.

This commit is contained in:
Paul Chote
2016-01-20 23:22:58 +00:00
parent feab81bdea
commit 00945dc9ef
13 changed files with 98 additions and 128 deletions

View File

@@ -34,25 +34,28 @@ namespace OpenRA.FileSystem
Directory.CreateDirectory(path);
}
public Stream GetContent(string filename)
public string Name { get { return path; } }
public IEnumerable<string> Contents
{
get
{
foreach (var filename in Directory.GetFiles(path, "*", SearchOption.TopDirectoryOnly))
yield return Path.GetFileName(filename);
}
}
public Stream GetStream(string filename)
{
try { return File.OpenRead(Path.Combine(path, filename)); }
catch { return null; }
}
public IEnumerable<string> AllFileNames()
{
foreach (var filename in Directory.GetFiles(path, "*", SearchOption.TopDirectoryOnly))
yield return Path.GetFileName(filename);
}
public bool Exists(string filename)
public bool Contains(string filename)
{
return File.Exists(Path.Combine(path, filename));
}
public string Name { get { return path; } }
public void Write(Dictionary<string, byte[]> contents)
{
if (!Directory.Exists(path))