tarsum: TarSum is not the interface

don't export the exsisting TarSum struct and call the interface 'TarSum'
instead.

Signed-off-by: Vincent Batts <vbatts@redhat.com>
This commit is contained in:
Vincent Batts 2014-09-10 21:56:20 -04:00
parent 14689ec238
commit ed3d01687d

View file

@ -28,24 +28,24 @@ const (
// This is used for calculating checksums of layers of an image, in some cases // This is used for calculating checksums of layers of an image, in some cases
// including the byte payload of the image's json metadata as well, and for // including the byte payload of the image's json metadata as well, and for
// calculating the checksums for buildcache. // calculating the checksums for buildcache.
func NewTarSum(r io.Reader, dc bool, v Version) (TarSumInterface, error) { func NewTarSum(r io.Reader, dc bool, v Version) (TarSum, error) {
if _, ok := tarSumVersions[v]; !ok { if _, ok := tarSumVersions[v]; !ok {
return nil, ErrVersionNotImplemented return nil, ErrVersionNotImplemented
} }
return &TarSum{Reader: r, DisableCompression: dc, tarSumVersion: v}, nil return &tarSum{Reader: r, DisableCompression: dc, tarSumVersion: v}, nil
} }
// TarSumInterface is the generic interface for calculating fixed time // TarSum is the generic interface for calculating fixed time
// checksums of a tar archive // checksums of a tar archive
type TarSumInterface interface { type TarSum interface {
io.Reader io.Reader
GetSums() map[string]string GetSums() map[string]string
Sum([]byte) string Sum([]byte) string
Version() Version Version() Version
} }
// TarSum struct is the structure for a Version0 checksum calculation // tarSum struct is the structure for a Version0 checksum calculation
type TarSum struct { type tarSum struct {
io.Reader io.Reader
tarR *tar.Reader tarR *tar.Reader
tarW *tar.Writer tarW *tar.Writer
@ -62,11 +62,11 @@ type TarSum struct {
tarSumVersion Version // this field is not exported so it can not be mutated during use tarSumVersion Version // this field is not exported so it can not be mutated during use
} }
func (ts TarSum) Version() Version { func (ts tarSum) Version() Version {
return ts.tarSumVersion return ts.tarSumVersion
} }
func (ts TarSum) selectHeaders(h *tar.Header, v Version) (set [][2]string) { func (ts tarSum) selectHeaders(h *tar.Header, v Version) (set [][2]string) {
for _, elem := range [][2]string{ for _, elem := range [][2]string{
{"name", h.Name}, {"name", h.Name},
{"mode", strconv.Itoa(int(h.Mode))}, {"mode", strconv.Itoa(int(h.Mode))},
@ -89,7 +89,7 @@ func (ts TarSum) selectHeaders(h *tar.Header, v Version) (set [][2]string) {
return return
} }
func (ts *TarSum) encodeHeader(h *tar.Header) error { func (ts *tarSum) encodeHeader(h *tar.Header) error {
for _, elem := range ts.selectHeaders(h, ts.Version()) { for _, elem := range ts.selectHeaders(h, ts.Version()) {
if _, err := ts.h.Write([]byte(elem[0] + elem[1])); err != nil { if _, err := ts.h.Write([]byte(elem[0] + elem[1])); err != nil {
return err return err
@ -98,7 +98,7 @@ func (ts *TarSum) encodeHeader(h *tar.Header) error {
return nil return nil
} }
func (ts *TarSum) Read(buf []byte) (int, error) { func (ts *tarSum) Read(buf []byte) (int, error) {
if ts.gz == nil { if ts.gz == nil {
ts.bufTar = bytes.NewBuffer([]byte{}) ts.bufTar = bytes.NewBuffer([]byte{})
ts.bufGz = bytes.NewBuffer([]byte{}) ts.bufGz = bytes.NewBuffer([]byte{})
@ -197,7 +197,7 @@ func (ts *TarSum) Read(buf []byte) (int, error) {
return ts.bufGz.Read(buf) return ts.bufGz.Read(buf)
} }
func (ts *TarSum) Sum(extra []byte) string { func (ts *tarSum) Sum(extra []byte) string {
var sums []string var sums []string
for _, sum := range ts.sums { for _, sum := range ts.sums {
@ -217,6 +217,6 @@ func (ts *TarSum) Sum(extra []byte) string {
return checksum return checksum
} }
func (ts *TarSum) GetSums() map[string]string { func (ts *tarSum) GetSums() map[string]string {
return ts.sums return ts.sums
} }