|
Oracle® Fusion Middleware Remote Intradoc Client (RIDC) Java API Reference 11g Release 1 (11.1.1) E17274-02 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object
oracle.stellent.ridc.convenience.usersecurity.impl.UserSecurityGroupsCache
public class UserSecurityGroupsCache
Implementation of Content Security will check Security Groups
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface oracle.stellent.ridc.convenience.usersecurity.IUserSecurityCache |
---|
IUserSecurityCache.AdminType |
Field Summary | |
---|---|
protected java.util.List<IAccessResolver> |
m_accessResolvers |
protected IdcClient |
m_idcClient |
protected ILog |
m_log |
protected IAccessResolver |
m_securityGroupsResolver |
protected long |
m_timeToLive |
protected java.util.Map<java.lang.String,CachedDataBinder> |
m_userCache |
Constructor Summary | |
---|---|
UserSecurityGroupsCache(IdcClient idcClient, int cacheMaxSize, long timeToLive) Create a security implementation that checks Security Groups |
|
UserSecurityGroupsCache(IdcClient idcClient, int cacheMaxSize, long timeToLive, IServiceCallUtils serviceCallUtils) Create a security implementation that checks Security Groups overriding the default ServiceCallUtils |
Method Summary | |
---|---|
void |
addAccessResolver(IAccessResolver accessResolver) Adds an access handler to the chain |
void |
clearCache() Clear the cache completely |
int |
getAccessLevelForDocument(CacheId id, DataObject docInfo) Deprecated. this method swallows IdcClientExceptions |
int |
getAccessLevelForDocument(CacheId id, DataObject docInfo, ITrace trace) Get the user's access level for a document. |
CacheId |
getCacheIdForUser(IdcContext userContext) Deprecated. this method swallows IdcClientExceptions |
CacheId |
getCacheIdForUser(IdcContext userContext, ITrace trace) Get the CacheId. |
IdcClient |
getIdcClient() Get the IdcClient used for this cache |
int |
getInUseCount() Get number of active entries in cache |
DataBinder |
getPermissions(CacheId id, ITrace trace) Get the permissions for a user |
IServiceCallUtils |
getServiceCallUtils() |
void |
initializeCache(int maxSize, long timeToLive) Initialize the cache with maximum size and length to live |
boolean |
isAdmin(CacheId id, DataObject docInfo, IUserSecurityCache.AdminType adminType) Deprecated. this method swallows IdcClientExceptions |
boolean |
isAdmin(CacheId id, DataObject docInfo, IUserSecurityCache.AdminType adminType, ITrace trace) Returns the Admin flag for the specific admin type. |
protected void |
putPermissions(CacheId id, CachedDataBinder permissions) Remember user's permissions |
DataBinder |
removeCacheId(CacheId id) Drop the permissions for this user from the cache |
protected CachedDataBinder |
removePermissions(CacheId id) Remove user's permissions |
void |
removeStaleEntries() Remove entries from cache that are too old |
void |
setIdcClient(IdcClient idcClient) For this Cache, set the communication information |
void |
setServiceCallUtils(IServiceCallUtils serviceCallUtils) |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected ILog m_log
protected IAccessResolver m_securityGroupsResolver
protected java.util.List<IAccessResolver> m_accessResolvers
protected java.util.Map<java.lang.String,CachedDataBinder> m_userCache
protected IdcClient m_idcClient
protected long m_timeToLive
Constructor Detail |
---|
public UserSecurityGroupsCache(IdcClient idcClient, int cacheMaxSize, long timeToLive)
idcClient
- RIDC connection informationcacheMaxSize
- Number of entries (userids) to keep in LRU cachetimeToLive
- Number of milliseconds before an entry is too oldpublic UserSecurityGroupsCache(IdcClient idcClient, int cacheMaxSize, long timeToLive, IServiceCallUtils serviceCallUtils)
idcClient
- RIDC connection informationcacheMaxSize
- Number of entries (userids) to keep in LRU cachetimeToLive
- Number of milliseconds before an entry is too oldserviceCallUtils
- util class perhaps a mock object for testingMethod Detail |
---|
public void initializeCache(int maxSize, long timeToLive)
initializeCache
in interface IUserSecurityCache
maxSize
- Assuming an LRU cache, the maximum number of entriestimeToLive
- positive number of milliseconds for each entry to be validpublic IServiceCallUtils getServiceCallUtils()
public void setServiceCallUtils(IServiceCallUtils serviceCallUtils)
public void addAccessResolver(IAccessResolver accessResolver)
addAccessResolver
in interface IUserSecurityCache
accessResolver
-public void clearCache()
clearCache
in interface IUserSecurityCache
public CacheId getCacheIdForUser(IdcContext userContext)
getCacheIdForUser
in interface IUserSecurityCache
userContext
- the IdcContentpublic CacheId getCacheIdForUser(IdcContext userContext, ITrace trace) throws IdcClientException
getCacheIdForUser
in interface IUserSecurityCache
userContext
- the IdcContenttrace
-IdcClientException
public DataBinder removeCacheId(CacheId id)
removeCacheId
in interface IUserSecurityCache
id
- CacheIDpublic int getAccessLevelForDocument(CacheId id, DataObject docInfo)
getAccessLevelForDocument
in interface IUserSecurityCache
id
- CacheIddocInfo
- document info either from LocalData or from DOC_INFO resultsetpublic int getAccessLevelForDocument(CacheId id, DataObject docInfo, ITrace trace) throws IdcClientException
getAccessLevelForDocument
in interface IUserSecurityCache
id
- CacheIddocInfo
- document info either from LocalData or from DOC_INFO resultsetIdcClientException
public boolean isAdmin(CacheId id, DataObject docInfo, IUserSecurityCache.AdminType adminType)
isAdmin
in interface IUserSecurityCache
id
- CacheIddocInfo
- document info either from LocalData or from DOC_INFO resultsetadminType
-public boolean isAdmin(CacheId id, DataObject docInfo, IUserSecurityCache.AdminType adminType, ITrace trace) throws IdcClientException
isAdmin
in interface IUserSecurityCache
id
- CacheIddocInfo
- document info either from LocalData or from DOC_INFO resultsetadminType
-trace
-IdcClientException
public void setIdcClient(IdcClient idcClient)
idcClient
- Information for the connection to refresh cachepublic IdcClient getIdcClient()
public int getInUseCount()
public void removeStaleEntries()
public DataBinder getPermissions(CacheId id, ITrace trace) throws IdcClientException
id
- CacheIdtrace
-IdcClientException
protected void putPermissions(CacheId id, CachedDataBinder permissions)
id
- CacheIdpermissions
- Databinder from the GET_USER_PERMISSIONS callprotected CachedDataBinder removePermissions(CacheId id)
id
- CacheId
|
Oracle® Fusion Middleware Remote Intradoc Client (RIDC) Java API Reference 11g Release 1 (11.1.1) E17274-02 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |