Update: update list dir add lastFileName params
This commit is contained in:
parent
2b468c79a9
commit
7b4f4b389d
@ -62,7 +62,7 @@ func (s *Service) HandleListDirectory(
|
|||||||
limit := req.QueryInt("limit")
|
limit := req.QueryInt("limit")
|
||||||
newPath := utils.NormalizePath(path)
|
newPath := utils.NormalizePath(path)
|
||||||
|
|
||||||
rawEntries, moreAvailable, err := s.FileSystemManager.ListDirectoryEntries(
|
rawEntries, moreAvailable, lastFileName, err := s.FileSystemManager.ListDirectoryEntries(
|
||||||
context.Background(),
|
context.Background(),
|
||||||
utils.FullPath(newPath),
|
utils.FullPath(newPath),
|
||||||
startFileName,
|
startFileName,
|
||||||
@ -92,7 +92,7 @@ func (s *Service) HandleListDirectory(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
result.Entries = entries
|
result.Entries = entries
|
||||||
result.LastFileName = entries[len(entries)-1].Name
|
result.LastFileName = lastFileName
|
||||||
}
|
}
|
||||||
|
|
||||||
return resp.OK(result).JSON()
|
return resp.OK(result).JSON()
|
||||||
|
|||||||
@ -88,11 +88,11 @@ func (f *FileSystemManager) MakeDirectory(ctx context.Context, path utils.FullPa
|
|||||||
return f.meta.InsertEntry(ctx, entry)
|
return f.meta.InsertEntry(ctx, entry)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (f *FileSystemManager) ListDirectoryEntries(ctx context.Context, p utils.FullPath, startFileName string, inclusive bool, limit int64) (entries []*utils.Entry, hasMore bool, err error) {
|
func (f *FileSystemManager) ListDirectoryEntries(ctx context.Context, p utils.FullPath, startFileName string, inclusive bool, limit int64) (entries []*utils.Entry, hasMore bool, lastFileName string, err error) {
|
||||||
f.RLock()
|
f.RLock()
|
||||||
defer f.RUnlock()
|
defer f.RUnlock()
|
||||||
|
|
||||||
_, err = f.StreamListDirectoryEntries(ctx, p, startFileName, inclusive, limit+1, func(entry *utils.Entry) bool {
|
lastFileName, err = f.StreamListDirectoryEntries(ctx, p, startFileName, inclusive, limit+1, func(entry *utils.Entry) bool {
|
||||||
entries = append(entries, entry)
|
entries = append(entries, entry)
|
||||||
return true
|
return true
|
||||||
})
|
})
|
||||||
@ -102,7 +102,7 @@ func (f *FileSystemManager) ListDirectoryEntries(ctx context.Context, p utils.Fu
|
|||||||
entries = entries[:limit]
|
entries = entries[:limit]
|
||||||
}
|
}
|
||||||
|
|
||||||
return entries, hasMore, err
|
return entries, hasMore, lastFileName, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (f *FileSystemManager) StreamListDirectoryEntries(ctx context.Context, p utils.FullPath, startFileName string, inclusive bool, limit int64, eachEntryFunc meta.ListEachEntryFunc) (lastFileName string, err error) {
|
func (f *FileSystemManager) StreamListDirectoryEntries(ctx context.Context, p utils.FullPath, startFileName string, inclusive bool, limit int64, eachEntryFunc meta.ListEachEntryFunc) (lastFileName string, err error) {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user