diff options
Diffstat (limited to 'weed/filer/filer.go')
| -rw-r--r-- | weed/filer/filer.go | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/weed/filer/filer.go b/weed/filer/filer.go new file mode 100644 index 000000000..fd23e119c --- /dev/null +++ b/weed/filer/filer.go @@ -0,0 +1,28 @@ +package filer + +type FileId string //file id in SeaweedFS + +type FileEntry struct { + Name string `json:"name,omitempty"` //file name without path + Id FileId `json:"fid,omitempty"` +} + +type DirectoryId int32 + +type DirectoryEntry struct { + Name string //dir name without path + Id DirectoryId +} + +type Filer interface { + CreateFile(fullFileName string, fid string) (err error) + FindFile(fullFileName string) (fid string, err error) + DeleteFile(fullFileName string) (fid string, err error) + + //Optional functions. embedded filer support these + FindDirectory(dirPath string) (dirId DirectoryId, err error) + ListDirectories(dirPath string) (dirs []DirectoryEntry, err error) + ListFiles(dirPath string, lastFileName string, limit int) (files []FileEntry, err error) + DeleteDirectory(dirPath string, recursive bool) (err error) + Move(fromPath string, toPath string) (err error) +} |
