summaryrefslogtreecommitdiff
path: root/vendor/github.com/dsoprea/go-utility/v2/filesystem/simplefileinfo.go
diff options
context:
space:
mode:
authorLibravatar kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com>2022-02-12 18:27:58 +0000
committerLibravatar GitHub <noreply@github.com>2022-02-12 18:27:58 +0000
commit31935ee206107f077878d3cdb6a26b82436b6893 (patch)
tree2d522bf98013dc5a4539133561b645fd7457eb06 /vendor/github.com/dsoprea/go-utility/v2/filesystem/simplefileinfo.go
parent[chore] Add nightly mirror to Codeberg.org (#392) (diff)
parentGo mod tidy (diff)
downloadgotosocial-31935ee206107f077878d3cdb6a26b82436b6893.tar.xz
Merge pull request #361 from superseriousbusiness/media_refactorv0.2.0
Refactor media handler to allow async media resolution
Diffstat (limited to 'vendor/github.com/dsoprea/go-utility/v2/filesystem/simplefileinfo.go')
-rw-r--r--vendor/github.com/dsoprea/go-utility/v2/filesystem/simplefileinfo.go69
1 files changed, 69 insertions, 0 deletions
diff --git a/vendor/github.com/dsoprea/go-utility/v2/filesystem/simplefileinfo.go b/vendor/github.com/dsoprea/go-utility/v2/filesystem/simplefileinfo.go
new file mode 100644
index 000000000..a227b0b00
--- /dev/null
+++ b/vendor/github.com/dsoprea/go-utility/v2/filesystem/simplefileinfo.go
@@ -0,0 +1,69 @@
+package rifs
+
+import (
+ "os"
+ "time"
+)
+
+// SimpleFileInfo is a simple `os.FileInfo` implementation useful for testing
+// with the bare minimum.
+type SimpleFileInfo struct {
+ filename string
+ isDir bool
+ size int64
+ mode os.FileMode
+ modTime time.Time
+}
+
+// NewSimpleFileInfoWithFile returns a new file-specific SimpleFileInfo.
+func NewSimpleFileInfoWithFile(filename string, size int64, mode os.FileMode, modTime time.Time) *SimpleFileInfo {
+ return &SimpleFileInfo{
+ filename: filename,
+ isDir: false,
+ size: size,
+ mode: mode,
+ modTime: modTime,
+ }
+}
+
+// NewSimpleFileInfoWithDirectory returns a new directory-specific
+// SimpleFileInfo.
+func NewSimpleFileInfoWithDirectory(filename string, modTime time.Time) *SimpleFileInfo {
+ return &SimpleFileInfo{
+ filename: filename,
+ isDir: true,
+ mode: os.ModeDir,
+ modTime: modTime,
+ }
+}
+
+// Name returns the base name of the file.
+func (sfi *SimpleFileInfo) Name() string {
+ return sfi.filename
+}
+
+// Size returns the length in bytes for regular files; system-dependent for
+// others.
+func (sfi *SimpleFileInfo) Size() int64 {
+ return sfi.size
+}
+
+// Mode returns the file mode bits.
+func (sfi *SimpleFileInfo) Mode() os.FileMode {
+ return sfi.mode
+}
+
+// ModTime returns the modification time.
+func (sfi *SimpleFileInfo) ModTime() time.Time {
+ return sfi.modTime
+}
+
+// IsDir returns true if a directory.
+func (sfi *SimpleFileInfo) IsDir() bool {
+ return sfi.isDir
+}
+
+// Sys returns internal state.
+func (sfi *SimpleFileInfo) Sys() interface{} {
+ return nil
+}