Files
sharpcompress/src/SharpCompress/Common/Tar/TarFilePart.cs

39 lines
986 B
C#
Raw Normal View History

2015-12-30 11:19:42 +00:00
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;
}
}
2013-04-28 12:32:55 +01:00
}