From 70c66853f90d04254c577233abe3de1785d08ac5 Mon Sep 17 00:00:00 2001 From: Shelikhoo Date: Sun, 5 Sep 2021 14:37:24 +0100 Subject: [PATCH] isolate filesystem interface package --- common/environment/base.go | 8 ++++---- common/platform/filesystem/file.go | 13 ++++--------- common/platform/filesystem/fsifce/ifce.go | 9 +++++++++ 3 files changed, 17 insertions(+), 13 deletions(-) create mode 100644 common/platform/filesystem/fsifce/ifce.go diff --git a/common/environment/base.go b/common/environment/base.go index 7c69e3d6b..804d3b257 100644 --- a/common/environment/base.go +++ b/common/environment/base.go @@ -2,7 +2,7 @@ package environment import ( "github.com/v2fly/v2ray-core/v4/common/log" - "github.com/v2fly/v2ray-core/v4/common/platform/filesystem" + "github.com/v2fly/v2ray-core/v4/common/platform/filesystem/fsifce" "github.com/v2fly/v2ray-core/v4/transport/internet" "github.com/v2fly/v2ray-core/v4/transport/internet/tagged" ) @@ -35,7 +35,7 @@ type LogCapabilitySet interface { } type FileSystemCapabilitySet interface { - OpenFileForReadSeek() filesystem.FileSeekerFunc - OpenFileForRead() filesystem.FileReaderFunc - OpenFileForWrite() filesystem.FileWriterFunc + OpenFileForReadSeek() fsifce.FileSeekerFunc + OpenFileForRead() fsifce.FileReaderFunc + OpenFileForWrite() fsifce.FileWriterFunc } diff --git a/common/platform/filesystem/file.go b/common/platform/filesystem/file.go index c3cfc989e..58997adfc 100644 --- a/common/platform/filesystem/file.go +++ b/common/platform/filesystem/file.go @@ -1,6 +1,7 @@ package filesystem import ( + "github.com/v2fly/v2ray-core/v4/common/platform/filesystem/fsifce" "io" "os" @@ -8,21 +9,15 @@ import ( "github.com/v2fly/v2ray-core/v4/common/platform" ) -type FileSeekerFunc func(path string) (io.ReadSeekCloser, error) - -type FileReaderFunc func(path string) (io.ReadCloser, error) - -type FileWriterFunc func(path string) (io.WriteCloser, error) - -var NewFileSeeker FileSeekerFunc = func(path string) (io.ReadSeekCloser, error) { +var NewFileSeeker fsifce.FileSeekerFunc = func(path string) (io.ReadSeekCloser, error) { return os.Open(path) } -var NewFileReader FileReaderFunc = func(path string) (io.ReadCloser, error) { +var NewFileReader fsifce.FileReaderFunc = func(path string) (io.ReadCloser, error) { return os.Open(path) } -var NewFileWriter FileWriterFunc = func(path string) (io.WriteCloser, error) { +var NewFileWriter fsifce.FileWriterFunc = func(path string) (io.WriteCloser, error) { return os.Create(path) } diff --git a/common/platform/filesystem/fsifce/ifce.go b/common/platform/filesystem/fsifce/ifce.go new file mode 100644 index 000000000..9aaabcff8 --- /dev/null +++ b/common/platform/filesystem/fsifce/ifce.go @@ -0,0 +1,9 @@ +package fsifce + +import "io" + +type FileSeekerFunc func(path string) (io.ReadSeekCloser, error) + +type FileReaderFunc func(path string) (io.ReadCloser, error) + +type FileWriterFunc func(path string) (io.WriteCloser, error)