Files
goget/internal/archive/tarbz2.go
T

26 lines
512 B
Go

//go:build linux || freebsd
// +build linux freebsd
package archive
import (
"compress/bzip2"
"io"
)
type tarBz2Extractor struct {
*BaseExtractor
tar *tarExtractor
}
func NewTarBz2Extractor() *tarBz2Extractor {
return &tarBz2Extractor{NewBaseExtractor("tar.bz2", []string{".tar.bz2", ".tbz2"}), NewTarExtractor()}
}
func (t *tarBz2Extractor) Extract(r io.Reader, destDir string) error {
bz2r := bzip2.NewReader(r)
return t.tar.Extract(bz2r, destDir)
}
func init() { Register(NewTarBz2Extractor()) }