mirror of
https://github.com/chrislusf/seaweedfs
synced 2024-09-19 07:21:00 +02:00
refactor
This commit is contained in:
parent
6deee4c0b9
commit
eacaa44dc2
|
@ -66,7 +66,7 @@ var _ = remote_storage.RemoteStorageClient(&hdfsRemoteStorageClient{})
|
||||||
|
|
||||||
func (c *hdfsRemoteStorageClient) Traverse(loc *remote_pb.RemoteStorageLocation, visitFn remote_storage.VisitFunc) (err error) {
|
func (c *hdfsRemoteStorageClient) Traverse(loc *remote_pb.RemoteStorageLocation, visitFn remote_storage.VisitFunc) (err error) {
|
||||||
|
|
||||||
return TraverseBfs(func(parentDir util.FullPath, visitFn remote_storage.VisitFunc) error {
|
return remote_storage.TraverseBfs(func(parentDir util.FullPath, visitFn remote_storage.VisitFunc) error {
|
||||||
children, err := c.client.ReadDir(string(parentDir))
|
children, err := c.client.ReadDir(string(parentDir))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
|
|
@ -1,16 +1,15 @@
|
||||||
package hdfs
|
package remote_storage
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"github.com/chrislusf/seaweedfs/weed/pb/filer_pb"
|
"github.com/chrislusf/seaweedfs/weed/pb/filer_pb"
|
||||||
"github.com/chrislusf/seaweedfs/weed/remote_storage"
|
|
||||||
"github.com/chrislusf/seaweedfs/weed/util"
|
"github.com/chrislusf/seaweedfs/weed/util"
|
||||||
"sync"
|
"sync"
|
||||||
"time"
|
"time"
|
||||||
)
|
)
|
||||||
|
|
||||||
type ListDirectoryFunc func(parentDir util.FullPath, visitFn remote_storage.VisitFunc) error
|
type ListDirectoryFunc func(parentDir util.FullPath, visitFn VisitFunc) error
|
||||||
|
|
||||||
func TraverseBfs(listDirFn ListDirectoryFunc, parentPath util.FullPath, visitFn remote_storage.VisitFunc) (err error) {
|
func TraverseBfs(listDirFn ListDirectoryFunc, parentPath util.FullPath, visitFn VisitFunc) (err error) {
|
||||||
K := 5
|
K := 5
|
||||||
|
|
||||||
var dirQueueWg sync.WaitGroup
|
var dirQueueWg sync.WaitGroup
|
||||||
|
@ -46,7 +45,7 @@ func TraverseBfs(listDirFn ListDirectoryFunc, parentPath util.FullPath, visitFn
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func processOneDirectory(listDirFn ListDirectoryFunc, parentPath util.FullPath, visitFn remote_storage.VisitFunc, dirQueue *util.Queue, dirQueueWg *sync.WaitGroup) (error) {
|
func processOneDirectory(listDirFn ListDirectoryFunc, parentPath util.FullPath, visitFn VisitFunc, dirQueue *util.Queue, dirQueueWg *sync.WaitGroup) (error) {
|
||||||
|
|
||||||
return listDirFn(parentPath, func(dir string, name string, isDirectory bool, remoteEntry *filer_pb.RemoteEntry) error {
|
return listDirFn(parentPath, func(dir string, name string, isDirectory bool, remoteEntry *filer_pb.RemoteEntry) error {
|
||||||
if err := visitFn(dir, name, isDirectory, remoteEntry); err != nil {
|
if err := visitFn(dir, name, isDirectory, remoteEntry); err != nil {
|
Loading…
Reference in a new issue