The user directory employs standard Oracle Commerce Platform SQL repository caching techniques as described in SQL Repository Caching in the Repository Guide. By default, caching is turned off for all user directory item descriptor types.
Each item descriptor type in the user directory has a corresponding cache component that maps repository IDs to persistent repository items. The cache component is identified in the Caching section of the ProfileUserDirectory.properties
file. For example, in the default file, the property userCache
points to the atg/userprofiling/userCache
component (class atg.service.cache.Cache
).
The default properties file for the userCache
component is shown in the following example:
$class=atg.service.cache.Cache # caching is off by default cacheAdapter=/atg/userprofiling/userCacheAdapter
The properties you can set for the userCache
component are shown in the following table:
Property | Default Value/Description |
---|---|
| The Nucleus address of the adapter that retrieves items not found in the cache. Default: |
| The maximum number of entries in the cache. 0 = cache nothing. Always get objects from the -1 = unlimited (Default) |
| The maximum number of bytes in the cache. 0 = cache nothing. Always get objects from the -1 = unlimited (Default) |
| The maximum time, in milliseconds, that an entry can exist in the cache. 0 = cache nothing. Always get objects from the -1 = cache entries never expire (Default) |
| The maximum number of bytes in a single cache entry. 0 = cache nothing. Always get objects from the -1 = unlimited number of cache entries (Default) |
Each cache component points to a corresponding cache adapter component, which retrieves items from the repository that are not in the cache. For example, as shown above, the userCache
component points to atg/userprofiling/userCacheAdapter
(class atg.userdirectory.repository.UserCacheAdapter
). The following sample shows the default properties file for the userCacheAdapter
component:
$class=atg.userdirectory.repository.UserCacheAdapter userDirectory=/atg/userprofiling/ProfileUserDirectory