aboutsummaryrefslogtreecommitdiff
path: root/weed/filer/client_operations.go
diff options
context:
space:
mode:
Diffstat (limited to 'weed/filer/client_operations.go')
-rw-r--r--weed/filer/client_operations.go19
1 files changed, 18 insertions, 1 deletions
diff --git a/weed/filer/client_operations.go b/weed/filer/client_operations.go
index 95dd26396..057fb4c66 100644
--- a/weed/filer/client_operations.go
+++ b/weed/filer/client_operations.go
@@ -65,7 +65,7 @@ func GetFileContent(server string, fileId string) (ret *GetFileContentResult, er
}
type ListDirectoriesResult struct {
- Directories []DirectoryEntry
+ Directories []DirectoryName
Error string `json:"error,omitempty"`
}
@@ -80,6 +80,23 @@ func ListDirectories(server string, directory string) (ret *ListDirectoriesResul
return nil, err
}
+type LookupDirectoryEntryResult struct {
+ Found bool
+ FileId string
+ Error string `json:"error,omitempty"`
+}
+
+func LookupDirectoryEntry(server string, directory string, name string) (ret *LookupDirectoryEntryResult, err error) {
+ ret = new(LookupDirectoryEntryResult)
+ if err := call(server, ApiRequest{Command: "lookupDirectoryEntry", Directory: directory, FileName: name}, ret); err == nil {
+ if ret.Error != "" {
+ return nil, errors.New(ret.Error)
+ }
+ return ret, nil
+ }
+ return nil, err
+}
+
func DeleteDirectoryOrFile(server string, path string, isDir bool) error {
destUrl := fmt.Sprintf("http://%s%s", server, path)
if isDir {