Documentation
¶
Index ¶
- func TarGzipReader(r io.Reader) (*tar.Reader, func() error, error)
- func ZipReaderFromReader(r io.Reader, limit int) (*zip.Reader, error)
- type FileWalkFn
- type FileWalkerProviderFunc
- type FormatType
- type ReaderWalkerProviderFunc
- type WalkFn
- type WalkerProvider
- func TarArchiveWalkers() WalkerProvider
- func TarBz2Walkers() WalkerProvider
- func TarGzWalkers() WalkerProvider
- func WalkerFromReaderWalkerProvider(reader ReaderWalkerProviderFunc) WalkerProvider
- func WalkerProviderFromFuncs(file FileWalkerProviderFunc, reader ReaderWalkerProviderFunc) WalkerProvider
- func ZipArchiveWalkers(maxReadLimit int) WalkerProvider
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func TarGzipReader ¶ added in v1.0.0
TarGzipReader creates a reader for gzipped tar content. The returned function should be called to release all underlying resources.
func ZipReaderFromReader ¶ added in v1.0.0
ZipReaderFromReader creates a new *zip.Reader from the given io.Reader, r. The full contents of r are read into memory to be able to create an io.ReaderAt and know the size of the buffer for the zip.NewReader function. limit is the maximum number of bytes to read to craete the zip.Reader.
Types ¶
type FileWalkFn ¶ added in v0.5.0
type FileWalkFn func(ctx context.Context, path string, size int64, contents io.Reader) (proceed bool, err error)
FileWalkFn is called by a WalkFn on each file contained in an archive.
type FileWalkerProviderFunc ¶ added in v1.0.0
FileWalkerProviderFunc creates a WalkFn and closing function from a file.
type FormatType ¶ added in v1.0.0
type FormatType int
FormatType specifies the type of archive format the identifier should expect.
const ( UnsupportedArchive FormatType = iota TarArchive TarGzArchive TarBz2Archive ZipArchive )
func ParseArchiveFormatFromFile ¶ added in v1.0.0
func ParseArchiveFormatFromFile(filename string) (FormatType, bool)
type ReaderWalkerProviderFunc ¶ added in v1.0.0
ReaderWalkerProviderFunc creates a WalkFn and closing function from a reader.
type WalkFn ¶ added in v0.5.0
type WalkFn func(ctx context.Context, walkFn FileWalkFn) error
A WalkFn iterates through an archive, calling FileWalkFn on each member file.
type WalkerProvider ¶ added in v1.0.0
type WalkerProvider interface { FromFile(*os.File) (WalkFn, func() error, error) FromReader(io.Reader) (WalkFn, func() error, error) }
WalkerProvider creates WalkFn and closing function from certain resources.
func TarArchiveWalkers ¶ added in v1.0.0
func TarArchiveWalkers() WalkerProvider
TarArchiveWalkers creates a WalkerProvider for tar content.
func TarBz2Walkers ¶ added in v1.0.0
func TarBz2Walkers() WalkerProvider
TarBz2Walkers creates a WalkerProvider for bz2 zipped tar content.
func TarGzWalkers ¶ added in v1.0.0
func TarGzWalkers() WalkerProvider
TarGzWalkers creates a WalkerProvider for gzipped tar content.
func WalkerFromReaderWalkerProvider ¶ added in v1.0.0
func WalkerFromReaderWalkerProvider(reader ReaderWalkerProviderFunc) WalkerProvider
WalkerFromReaderWalkerProvider creates a WalkerProvider where the same function is used for both the FromFile and FromReader methods. For the FromFile, the file pointer is passed directly to reader.
func WalkerProviderFromFuncs ¶ added in v1.0.0
func WalkerProviderFromFuncs(file FileWalkerProviderFunc, reader ReaderWalkerProviderFunc) WalkerProvider
WalkerProviderFromFuncs creates a WalkerProvider from the given file and reader functions.
func ZipArchiveWalkers ¶ added in v1.0.0
func ZipArchiveWalkers(maxReadLimit int) WalkerProvider
ZipArchiveWalkers creates a WalkerProvider for zipped file content. maxReadLimit is the maximum amount of data to read from a reader when FromReader is called. If the reader content is larger than maxReadLimit an error will be returned.