2025-09-01 03:21:28 +01:00
|
|
|
using System;
|
2025-09-01 06:04:12 +01:00
|
|
|
using System.IO;
|
|
|
|
|
using System.Text;
|
2025-09-01 03:21:28 +01:00
|
|
|
using Aaru.CommonTypes.Interfaces;
|
|
|
|
|
|
|
|
|
|
namespace Aaru.Archives;
|
|
|
|
|
|
2025-09-01 03:55:48 +01:00
|
|
|
public sealed partial class Arc : IArchive
|
2025-09-01 03:21:28 +01:00
|
|
|
{
|
2025-09-01 06:04:12 +01:00
|
|
|
const string MODULE_NAME = "arc Archive Plugin";
|
|
|
|
|
Encoding _encoding;
|
|
|
|
|
ArchiveSupportedFeature _features;
|
|
|
|
|
Stream _stream;
|
2025-09-01 03:21:28 +01:00
|
|
|
|
|
|
|
|
#region IArchive Members
|
|
|
|
|
|
|
|
|
|
/// <inheritdoc />
|
|
|
|
|
public string Name => "arc";
|
|
|
|
|
/// <inheritdoc />
|
|
|
|
|
public Guid Id => new("D5C49A41-B10D-4DFE-B75E-3DAD11818818");
|
|
|
|
|
/// <inheritdoc />
|
|
|
|
|
public string Author => Authors.NataliaPortillo;
|
|
|
|
|
/// <inheritdoc />
|
2025-09-01 06:04:12 +01:00
|
|
|
public bool Opened { get; private set; }
|
2025-09-01 03:21:28 +01:00
|
|
|
/// <inheritdoc />
|
2025-09-01 06:04:12 +01:00
|
|
|
public ArchiveSupportedFeature ArchiveFeatures => !Opened
|
|
|
|
|
? ArchiveSupportedFeature.SupportsCompression |
|
|
|
|
|
ArchiveSupportedFeature.SupportsFilenames |
|
|
|
|
|
ArchiveSupportedFeature.HasEntryTimestamp
|
|
|
|
|
: _features;
|
2025-09-01 03:21:28 +01:00
|
|
|
/// <inheritdoc />
|
2025-09-01 06:04:12 +01:00
|
|
|
public int NumberOfEntries => Opened ? _entries.Count : -1;
|
2025-09-01 03:21:28 +01:00
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
}
|