mirror of
https://github.com/aaru-dps/Aaru.Server.git
synced 2025-12-16 19:24:27 +00:00
Add support to show available options from IReadOnlyFilesystems.
This commit is contained in:
@@ -57,6 +57,11 @@ namespace DiscImageChef.Filesystems.AppleDOS
|
||||
public string Name => "Apple DOS File System";
|
||||
public Guid Id => new Guid("8658A1E9-B2E7-4BCC-9638-157A31B0A700\n");
|
||||
|
||||
public (string name, Type type, string description)[] ListOptions()
|
||||
{
|
||||
return new(string name, Type type, string description)[] { };
|
||||
}
|
||||
|
||||
static Dictionary<string, string> GetDefaultOptions()
|
||||
{
|
||||
return new Dictionary<string, string> {{"debug", false.ToString()}};
|
||||
@@ -70,17 +75,17 @@ namespace DiscImageChef.Filesystems.AppleDOS
|
||||
/// <summary>Caches catalog</summary>
|
||||
Dictionary<string, ushort> catalogCache;
|
||||
/// <summary>Caches file size</summary>
|
||||
Dictionary<string, int> fileSizeCache;
|
||||
Dictionary<string, int> fileSizeCache;
|
||||
/// <summary>Caches VTOC</summary>
|
||||
byte[] vtocBlocks;
|
||||
byte[] vtocBlocks;
|
||||
/// <summary>Caches catalog</summary>
|
||||
byte[] catalogBlocks;
|
||||
byte[] catalogBlocks;
|
||||
/// <summary>Caches boot code</summary>
|
||||
byte[] bootBlocks;
|
||||
byte[] bootBlocks;
|
||||
/// <summary>Caches file type</summary>
|
||||
Dictionary<string, byte> fileTypeCache;
|
||||
Dictionary<string, byte> fileTypeCache;
|
||||
/// <summary>Caches locked files</summary>
|
||||
List<string> lockedFiles;
|
||||
List<string> lockedFiles;
|
||||
#endregion Caches
|
||||
}
|
||||
}
|
||||
@@ -71,5 +71,11 @@ namespace DiscImageChef.Filesystems.AppleMFS
|
||||
{
|
||||
return new Dictionary<string, string> {{"debug", false.ToString()}};
|
||||
}
|
||||
|
||||
// TODO: Implement Finder namespace (requires decoding Desktop database)
|
||||
public (string name, Type type, string description)[] ListOptions()
|
||||
{
|
||||
return new(string name, Type type, string description)[] { };
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -117,6 +117,11 @@ namespace DiscImageChef.Filesystems.CPM
|
||||
public string Name => "CP/M File System";
|
||||
public Guid Id => new Guid("AA2B8585-41DF-4E3B-8A35-D1A935E2F8A1");
|
||||
|
||||
public (string name, Type type, string description)[] ListOptions()
|
||||
{
|
||||
return new(string name, Type type, string description)[] { };
|
||||
}
|
||||
|
||||
static Dictionary<string, string> GetDefaultOptions()
|
||||
{
|
||||
return new Dictionary<string, string> {{"debug", false.ToString()}};
|
||||
|
||||
@@ -35,6 +35,9 @@
|
||||
<HintPath>..\packages\Claunia.Encoding.1.4.0\lib\portable40-net40+sl5+win8+wp8\Claunia.Encoding.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.ValueTuple, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51">
|
||||
<HintPath>..\packages\System.ValueTuple.4.4.0\lib\portable-net40+sl4+win8+wp8\System.ValueTuple.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
|
||||
@@ -31,6 +31,7 @@
|
||||
// Copyright © 2011-2018 Natalia Portillo
|
||||
// ****************************************************************************/
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using DiscImageChef.CommonTypes;
|
||||
@@ -129,5 +130,10 @@ namespace DiscImageChef.Filesystems
|
||||
/// <param name="path">Link path.</param>
|
||||
/// <param name="dest">Link destination.</param>
|
||||
Errno ReadLink(string path, out string dest);
|
||||
|
||||
/// <summary>
|
||||
/// Retrieves a list of options supported by the filesystem, with name, type and description
|
||||
/// </summary>
|
||||
(string name, Type type, string description)[] ListOptions();
|
||||
}
|
||||
}
|
||||
@@ -56,6 +56,12 @@ namespace DiscImageChef.Filesystems.LisaFS
|
||||
public Encoding Encoding { get; private set; }
|
||||
public FileSystemType XmlFsType { get; private set; }
|
||||
|
||||
// TODO: Implement Lisa 7/7 namespace (needs decoding {!CATALOG} file)
|
||||
public (string name, Type type, string description)[] ListOptions()
|
||||
{
|
||||
return new(string name, Type type, string description)[] { };
|
||||
}
|
||||
|
||||
static Dictionary<string, string> GetDefaultOptions()
|
||||
{
|
||||
return new Dictionary<string, string> {{"debug", false.ToString()}};
|
||||
@@ -65,17 +71,17 @@ namespace DiscImageChef.Filesystems.LisaFS
|
||||
/// <summary>Caches Extents Files</summary>
|
||||
Dictionary<short, ExtentFile> extentCache;
|
||||
/// <summary>Caches system files</summary>
|
||||
Dictionary<short, byte[]> systemFileCache;
|
||||
Dictionary<short, byte[]> systemFileCache;
|
||||
/// <summary>Caches user files files</summary>
|
||||
Dictionary<short, byte[]> fileCache;
|
||||
Dictionary<short, byte[]> fileCache;
|
||||
/// <summary>Caches catalogs</summary>
|
||||
List<CatalogEntry> catalogCache;
|
||||
List<CatalogEntry> catalogCache;
|
||||
/// <summary>Caches file size</summary>
|
||||
Dictionary<short, int> fileSizeCache;
|
||||
Dictionary<short, int> fileSizeCache;
|
||||
/// <summary>Lists Extents Files already printed in debug mode to not repeat them</summary>
|
||||
List<short> printedExtents;
|
||||
List<short> printedExtents;
|
||||
/// <summary>Caches the creation times for subdirectories as to not have to traverse the Catalog File on each stat</summary>
|
||||
Dictionary<short, DateTime> directoryDtcCache;
|
||||
Dictionary<short, DateTime> directoryDtcCache;
|
||||
#endregion Caches
|
||||
}
|
||||
}
|
||||
@@ -73,6 +73,11 @@ namespace DiscImageChef.Filesystems.UCSDPascal
|
||||
return Errno.NotSupported;
|
||||
}
|
||||
|
||||
public (string name, Type type, string description)[] ListOptions()
|
||||
{
|
||||
return new(string name, Type type, string description)[] { };
|
||||
}
|
||||
|
||||
static Dictionary<string, string> GetDefaultOptions()
|
||||
{
|
||||
return new Dictionary<string, string> {{"debug", false.ToString()}};
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Claunia.Encoding" version="1.4.0" targetFramework="net40" />
|
||||
<package id="System.ValueTuple" version="4.4.0" targetFramework="net40" />
|
||||
</packages>
|
||||
Reference in New Issue
Block a user