github.com/cloud-foundations/dominator@v0.0.0-20221004181915-6e4fee580046/lib/objectserver/memory/list.go (about)

     1  package memory
     2  
     3  import (
     4  	"github.com/Cloud-Foundations/Dominator/lib/hash"
     5  )
     6  
     7  func (objSrv *ObjectServer) listObjectSizes() map[hash.Hash]uint64 {
     8  	objSrv.rwLock.RLock()
     9  	defer objSrv.rwLock.RUnlock()
    10  	sizesMap := make(map[hash.Hash]uint64, len(objSrv.objectMap))
    11  	for hashVal, data := range objSrv.objectMap {
    12  		sizesMap[hashVal] = uint64(len(data))
    13  	}
    14  	return sizesMap
    15  }
    16  
    17  func (objSrv *ObjectServer) listObjects() []hash.Hash {
    18  	objSrv.rwLock.RLock()
    19  	defer objSrv.rwLock.RUnlock()
    20  	hashes := make([]hash.Hash, 0, len(objSrv.objectMap))
    21  	for hashVal := range objSrv.objectMap {
    22  		hashes = append(hashes, hashVal)
    23  	}
    24  	return hashes
    25  }