main pico / pkg / rsync-receiver / utils / fs.go
Eric Bower  ·  2026-05-31
 1package utils
 2
 3import (
 4	"io"
 5	"os"
 6)
 7
 8type ReaderAtCloser interface {
 9	io.Reader
10	io.ReaderAt
11	io.Closer
12}
13
14// File System: need to handle all type of files: regular, folder, symlink, etc.
15type FS interface {
16	Put(*ReceiverFile) (int64, error)
17	List(string) ([]os.FileInfo, error)
18	Read(*SenderFile) (os.FileInfo, ReaderAtCloser, error)
19	Remove([]*ReceiverFile) error
20}