mirror of
https://github.com/adamhathcock/sharpcompress.git
synced 2026-02-14 05:25:41 +00:00
39 lines
1.0 KiB
C#
39 lines
1.0 KiB
C#
using System.IO;
|
|
using SharpCompress.Common.Tar.Headers;
|
|
using SharpCompress.IO;
|
|
|
|
namespace SharpCompress.Common.Tar
|
|
{
|
|
internal class TarFilePart : FilePart
|
|
{
|
|
private readonly Stream seekableStream;
|
|
|
|
internal TarFilePart(TarHeader header, Stream seekableStream)
|
|
{
|
|
this.seekableStream = seekableStream;
|
|
Header = header;
|
|
}
|
|
|
|
internal TarHeader Header { get; private set; }
|
|
|
|
internal override string FilePartName
|
|
{
|
|
get { return Header.Name; }
|
|
}
|
|
|
|
internal override Stream GetCompressedStream()
|
|
{
|
|
if (seekableStream != null)
|
|
{
|
|
seekableStream.Position = Header.DataStartPosition.Value;
|
|
return new ReadOnlySubStream(seekableStream, Header.Size);
|
|
}
|
|
return Header.PackedStream;
|
|
}
|
|
|
|
internal override Stream GetRawStream()
|
|
{
|
|
return null;
|
|
}
|
|
}
|
|
} |