Helper-class to resolve owner and group ids to strings names. The class uses an instance of LRUCacheTable of size 10 for each value to increase the performance of the lookup. Because of this and the fact that the returned string value is located in an internal member buffer, multithreaded invocations of members GetOwnerName and GetGroupName have to be protected against racing conditions. This is up to the user of the type.
#include <finfo.hpp>
Public Method Index: | |
OwnerAndGroupResolver (PoolAllocator &poolAllocator) | |
ALIB_API const NString & | GetGroupName (const FInfo &fInfo) |
ALIB_API const NString & | GetOwnerName (const FInfo &fInfo) |
void | SetGroupCacheCapacity (integer numberOfLists, integer entriesPerList) |
void | SetOwnerCacheCapacity (integer numberOfLists, integer entriesPerList) |
|
inline |
Constructor.
poolAllocator | The allocator passed to the internal instances of type LRUCacheTable. |
Changes the capacity of the LRUCacheTable for owner names, by calling LRUCacheTable::Reserve.
The default sizes with construction is 6 for both values.
numberOfLists | The number of LRU-lists to use. |
entriesPerList | The maximum length of each cache list. |
Changes the capacity of the LRUCacheTable for owner names, by calling LRUCacheTable::Reserve.
The default sizes with construction is 6 for both values.
numberOfLists | The number of LRU-lists to use. |
entriesPerList | The maximum length of each cache list. |