MCPcopy Create free account
hub / github.com/OpenListTeam/OpenList / GetSortedObjects

Method GetSortedObjects

internal/op/cache.go:206–228  ·  view source on GitHub ↗
(meta driver.Meta)

Source from the content-addressed store, hash-verified

204}
205
206func (dc *directoryCache) GetSortedObjects(meta driver.Meta) []model.Obj {
207 dc.mu.RLock()
208 if dc.dirtyFlags == 0 {
209 dc.mu.RUnlock()
210 return dc.sorted
211 }
212 dc.mu.RUnlock()
213 dc.mu.Lock()
214 defer dc.mu.Unlock()
215
216 sorted := make([]model.Obj, len(dc.objs))
217 copy(sorted, dc.objs)
218 dc.sorted = sorted
219 if dc.dirtyFlags&dirtyUpdate != 0 {
220 storage := meta.GetStorage()
221 if meta.Config().LocalSort {
222 model.SortFiles(sorted, storage.OrderBy, storage.OrderDirection)
223 }
224 model.ExtractFolder(sorted, storage.ExtractFolder)
225 }
226 dc.dirtyFlags = 0
227 return sorted
228}

Callers 2

listFunction · 0.80
GetFunction · 0.80

Calls 5

SortFilesFunction · 0.92
ExtractFolderFunction · 0.92
UnlockMethod · 0.65
GetStorageMethod · 0.65
ConfigMethod · 0.65

Tested by

no test coverage detected