mirror of
https://github.com/chrislusf/seaweedfs
synced 2024-07-19 23:48:09 +02:00
refactoring
This commit is contained in:
parent
c0f0fdb3ba
commit
654a69ff52
|
@ -92,3 +92,31 @@ func ReadDirAllEntries(filerClient FilerClient, fullDirPath util.FullPath, prefi
|
||||||
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func Exists(filerClient FilerClient, parentDirectoryPath string, entryName string, isDirectory bool) (exists bool, err error) {
|
||||||
|
|
||||||
|
err = filerClient.WithFilerClient(func(client SeaweedFilerClient) error {
|
||||||
|
|
||||||
|
request := &LookupDirectoryEntryRequest{
|
||||||
|
Directory: parentDirectoryPath,
|
||||||
|
Name: entryName,
|
||||||
|
}
|
||||||
|
|
||||||
|
glog.V(4).Infof("exists entry %v/%v: %v", parentDirectoryPath, entryName, request)
|
||||||
|
resp, err := LookupEntry(client, request)
|
||||||
|
if err != nil {
|
||||||
|
if err == ErrNotFound {
|
||||||
|
exists = false
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
glog.V(0).Infof("exists entry %v: %v", request, err)
|
||||||
|
return fmt.Errorf("exists entry %s/%s: %v", parentDirectoryPath, entryName, err)
|
||||||
|
}
|
||||||
|
|
||||||
|
exists = resp.Entry.IsDirectory == isDirectory
|
||||||
|
|
||||||
|
return nil
|
||||||
|
})
|
||||||
|
|
||||||
|
return
|
||||||
|
}
|
|
@ -153,30 +153,8 @@ func doDeleteEntry(client filer_pb.SeaweedFilerClient, parentDirectoryPath strin
|
||||||
|
|
||||||
func (s3a *S3ApiServer) exists(parentDirectoryPath string, entryName string, isDirectory bool) (exists bool, err error) {
|
func (s3a *S3ApiServer) exists(parentDirectoryPath string, entryName string, isDirectory bool) (exists bool, err error) {
|
||||||
|
|
||||||
err = s3a.WithFilerClient(func(client filer_pb.SeaweedFilerClient) error {
|
return filer_pb.Exists(s3a, parentDirectoryPath, entryName, isDirectory)
|
||||||
|
|
||||||
request := &filer_pb.LookupDirectoryEntryRequest{
|
|
||||||
Directory: parentDirectoryPath,
|
|
||||||
Name: entryName,
|
|
||||||
}
|
|
||||||
|
|
||||||
glog.V(4).Infof("exists entry %v/%v: %v", parentDirectoryPath, entryName, request)
|
|
||||||
resp, err := filer_pb.LookupEntry(client, request)
|
|
||||||
if err != nil {
|
|
||||||
if err == filer_pb.ErrNotFound {
|
|
||||||
exists = false
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
glog.V(0).Infof("exists entry %v: %v", request, err)
|
|
||||||
return fmt.Errorf("exists entry %s/%s: %v", parentDirectoryPath, entryName, err)
|
|
||||||
}
|
|
||||||
|
|
||||||
exists = resp.Entry.IsDirectory == isDirectory
|
|
||||||
|
|
||||||
return nil
|
|
||||||
})
|
|
||||||
|
|
||||||
return
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func objectKey(key *string) *string {
|
func objectKey(key *string) *string {
|
||||||
|
|
|
@ -46,6 +46,10 @@ func (s3a *S3ApiServer) WithFilerClient(fn func(filer_pb.SeaweedFilerClient) err
|
||||||
}, s3a.option.FilerGrpcAddress, s3a.option.GrpcDialOption)
|
}, s3a.option.FilerGrpcAddress, s3a.option.GrpcDialOption)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
func (s3a *S3ApiServer) AdjustedUrl(hostAndPort string) string {
|
||||||
|
return hostAndPort
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// If none of the http routes match respond with MethodNotAllowed
|
// If none of the http routes match respond with MethodNotAllowed
|
||||||
func notFoundHandler(w http.ResponseWriter, r *http.Request) {
|
func notFoundHandler(w http.ResponseWriter, r *http.Request) {
|
||||||
|
|
Loading…
Reference in a new issue