Refactor to prep for new filesys.Walk

This commit is contained in:
Jeffrey Regan
2019-11-26 11:34:19 -08:00
parent 73fb32c85a
commit 3b2988bda8
7 changed files with 228 additions and 44 deletions

34
api/filesys/fileinfo.go Normal file
View File

@@ -0,0 +1,34 @@
// Copyright 2019 The Kubernetes Authors.
// SPDX-License-Identifier: Apache-2.0
package filesys
import (
"os"
"time"
)
var _ os.FileInfo = fileInfo{}
// fileInfo implements os.FileInfo for a fileInMemory instance.
type fileInfo struct {
*fileInMemory
}
// Name returns the name of the file
func (fi fileInfo) Name() string { return fi.name }
// Size returns the size of the file
func (fi fileInfo) Size() int64 { return int64(len(fi.content)) }
// Mode returns the file mode
func (fi fileInfo) Mode() os.FileMode { return 0777 }
// ModTime returns a bogus time
func (fi fileInfo) ModTime() time.Time { return time.Time{} }
// IsADir returns if it is a directory
func (fi fileInfo) IsDir() bool { return fi.dir }
// Sys should return underlying data source, but it now returns nil
func (fi fileInfo) Sys() interface{} { return nil }