public class AccessControlListIndexService extends Object implements SubService
Modifier and Type | Field and Description |
---|---|
static String |
DEFERRED_ACL_RESOLUTION_SEQ_NAME
The name of the deferred ACL resolution sequence.
|
static String |
DEFERRED_ACL_RESOLUTION_TABLE_NAME
The name of the deferred ACL resolution table.
|
protected AccessControlListDiscoverAccessService |
m_AclDiscoverAccessService
The ACL resolver service.
|
protected AccessControlListProxyService |
m_AclProxyService
The ACL proxy service.
|
protected Boolean |
m_AclResolutionSynchronous
An indication as to whether ACL resolution of the discoverers
table is performed synchronously or asynchronously
(true indicates synchronous).
|
protected Long |
m_GroupIndexPropertyBundleClassId
The Class ID of the Folder Index Properties PropertyBundle
|
protected Long |
m_GroupIndexPropertyBundleId
The ID of the Folder Index Properties PropertyBundle
|
protected DirectoryGroupIndexService |
m_GroupIndexService
The Group index service.
|
protected S_LibraryService |
m_Service
The parent library service
|
protected static String |
REPOS_PARAM_RESOLUTIONMODE_KEY
The repository parameter key, used to indicate resolution mode.
|
protected static String |
REPOS_PARAM_RESOLUTIONMODE_VALUE_ASYNC
The repository parameter value of the REPOS_PARAM_RESOLUTIONMODE_KEY key
that indicates asynchronous resolution mode.
|
protected static String |
REPOS_PARAM_RESOLUTIONMODE_VALUE_SYNC
The repository parameter value of the REPOS_PARAM_RESOLUTIONMODE_KEY key
that indicates synchronous resolution mode.
|
protected static String |
STATEMENT_DELETE_DEFERRED_RESOLUTION_ROW |
protected static String |
STATEMENT_INSERT_DEFERRED_RESOLUTION_ROW |
protected static String |
STATEMENT_SELECT_DEFERRED_RESOLUTION_ROWS |
Modifier | Constructor and Description |
---|---|
protected |
AccessControlListIndexService(S_LibraryService service)
Construct a AccessControlListIndexService.
|
Modifier and Type | Method and Description |
---|---|
protected void |
addToGroup(S_LibrarySession sess,
long parentid,
long childid)
Register a member added to a group.
|
protected void |
applyDeferredUpdate(S_LibrarySession sess,
AccessControlListDeferredUpdate acldu,
boolean deleteAfterProcessing)
Apply a deferred update entry.
|
protected void |
changeUpdateMode(S_LibrarySession session,
boolean isSync) |
protected void |
clearAclResolutionMode()
Clears the cached ACL resolution mode.
|
protected PreparedStatement |
constructPreparedStatement(LibraryConnection lc,
Connection conn,
String key,
String sql)
Constructs a PreparedStatement.
|
protected void |
createDeferredUpdate(S_LibrarySession session,
int operationType,
long leftId,
long rightId)
Create a deferred update entry
|
protected void |
deleteDeferredUpdate(S_LibrarySession session,
Long id)
Delete a set of deferred update entries
|
protected void |
deleteDeferredUpdates(S_LibrarySession session,
Long[] ids)
Delete a set of deferred update entries
|
void |
dispose()
Terminate this subservice.
|
protected AccessControlListDiscoverAccessService |
getAccessControlListDiscoverAccessService()
Gets the AccessControlListProxyService for this S_LibraryService.
|
protected AccessControlListProxyService |
getAccessControlListProxyService()
Gets the AccessControlListProxyService for this S_LibraryService.
|
protected DirectoryGroupIndexService |
getDirectoryGroupIndexService()
Gets the DirectoryGroupIndexService for this S_LibraryService.
|
protected Long |
getGroupIndexPropertyBundleClassId(S_LibrarySession sess)
Get the Class ID of the PropertyBundle used for Group Index properties.
|
protected Long |
getGroupIndexPropertyBundleId(S_LibrarySession sess)
Get the ID of the PropertyBundle used for Group Index properties.
|
protected PreparedStatement |
getPreparedStatement(LibraryConnection lc,
Connection conn,
String key)
Gets a PreparedStatement that matches the specified key.
|
protected void |
init(AccessControlListProxyService proxyServ,
AccessControlListDiscoverAccessService aclrServ,
DirectoryGroupIndexService groupServ)
Initialize this subservice.
|
protected boolean |
isAclResolutionSynchronous()
Returns the ACL resolution mode.
|
protected void |
postEvent(S_LibrarySession sess)
Post an IfsEvent.
|
protected void |
registerNewDirectoryObject(S_LibrarySession sess,
long id)
Register a new DirectoryObject.
|
protected void |
removeFromGroup(S_LibrarySession sess,
long parentid,
long childid)
Register a member being removed from a group.
|
protected Vector |
selectDeferredResolutionEntries(S_LibrarySession session,
int maxItems)
Select a set of deferred update entries
|
protected void |
unregisterFreedDirectoryObject(S_LibrarySession sess,
long id)
Unregister a freed DirectoryObject.
|
protected void |
updateAclDiscovererTable(S_LibrarySession session,
Long aclId)
Handles a request to update the ACL discoverer table.
|
protected static final String REPOS_PARAM_RESOLUTIONMODE_KEY
protected static final String REPOS_PARAM_RESOLUTIONMODE_VALUE_SYNC
protected static final String REPOS_PARAM_RESOLUTIONMODE_VALUE_ASYNC
public static final String DEFERRED_ACL_RESOLUTION_TABLE_NAME
public static final String DEFERRED_ACL_RESOLUTION_SEQ_NAME
protected static final String STATEMENT_SELECT_DEFERRED_RESOLUTION_ROWS
protected static final String STATEMENT_INSERT_DEFERRED_RESOLUTION_ROW
protected static final String STATEMENT_DELETE_DEFERRED_RESOLUTION_ROW
protected S_LibraryService m_Service
protected Boolean m_AclResolutionSynchronous
protected AccessControlListProxyService m_AclProxyService
protected AccessControlListDiscoverAccessService m_AclDiscoverAccessService
protected DirectoryGroupIndexService m_GroupIndexService
protected Long m_GroupIndexPropertyBundleId
protected Long m_GroupIndexPropertyBundleClassId
protected AccessControlListIndexService(S_LibraryService service) throws IfsException
service
- the requesting library serviceIfsException
- if operation fails.protected void init(AccessControlListProxyService proxyServ, AccessControlListDiscoverAccessService aclrServ, DirectoryGroupIndexService groupServ) throws IfsException
Hold on to the 3 inner subservices.
proxyServ
- the AccessControlListProxyServiceaclrServ
- the AccessControlListDiscoverAccessServicegroupServ
- the DirectoryGroupIndexServiceIfsException
- if the operation failspublic void dispose() throws IfsException
This method is required by the SubService interface; it currently does nothing.
dispose
in interface SubService
IfsException
- if the operation failsprotected AccessControlListProxyService getAccessControlListProxyService()
protected AccessControlListDiscoverAccessService getAccessControlListDiscoverAccessService()
protected DirectoryGroupIndexService getDirectoryGroupIndexService()
protected final boolean isAclResolutionSynchronous()
protected final void clearAclResolutionMode()
protected void changeUpdateMode(S_LibrarySession session, boolean isSync) throws IfsException
IfsException
protected void createDeferredUpdate(S_LibrarySession session, int operationType, long leftId, long rightId) throws IfsException
session
- the sessionoperationType
- the Operation typeleftId
- the ID of the left objectrightId
- the ID of the right object (if any)IfsException
- (IFS-10064) if the operation failsprotected void deleteDeferredUpdate(S_LibrarySession session, Long id) throws IfsException
session
- the sessionid
- the ID of the deferred update entryIfsException
- (IFS-10062) if the operation failsprotected void deleteDeferredUpdates(S_LibrarySession session, Long[] ids) throws IfsException
session
- the sessionids
- the IDs of the deferred update entriesIfsException
- (IFS-10062) if the operation failsprotected Vector selectDeferredResolutionEntries(S_LibrarySession session, int maxItems) throws IfsException
session
- the sessionmaxItems
- max number of entries to selectIfsException
- (IFS-10063) if the operation failsprotected void applyDeferredUpdate(S_LibrarySession sess, AccessControlListDeferredUpdate acldu, boolean deleteAfterProcessing) throws IfsException
sess
- the sessionacldu
- the deferred update entrydeleteAfterProcessing
- whether to delete the entry after processingIfsException
- (IFS-10063) if the operation failsprotected void postEvent(S_LibrarySession sess) throws IfsException
sess
- the sessionIfsException
- if the operation failsprotected Long getGroupIndexPropertyBundleId(S_LibrarySession sess) throws IfsException
sess
- the sessionIfsException
- if the operation failsprotected Long getGroupIndexPropertyBundleClassId(S_LibrarySession sess) throws IfsException
sess
- the sessionIfsException
- if the operation failsprotected void registerNewDirectoryObject(S_LibrarySession sess, long id) throws IfsException
sess
- the sessionid
- the DirectoryObject IDIfsException
- if the operation failsprotected void unregisterFreedDirectoryObject(S_LibrarySession sess, long id) throws IfsException
sess
- the sessionid
- the DirectoryObject IDIfsException
- if the operation failsprotected void addToGroup(S_LibrarySession sess, long parentid, long childid) throws IfsException
sess
- the sessionparentid
- the group IDchildid
- the member IDIfsException
- if the operation failsprotected void removeFromGroup(S_LibrarySession sess, long parentid, long childid) throws IfsException
sess
- the sessionparentid
- the group IDchildid
- the member IDIfsException
- if the operation failsprotected void updateAclDiscovererTable(S_LibrarySession session, Long aclId) throws IfsException
If ASYNC mode is in effect, create a deferred update entry
session
- the sessionaclId
- the ID of the ACLIfsException
- (IFS-10065) if the operation failsprotected PreparedStatement getPreparedStatement(LibraryConnection lc, Connection conn, String key)
lc
- the LibraryConnectionconn
- the Connectionkey
- the statement keyIfsException
- if the operation failsprotected PreparedStatement constructPreparedStatement(LibraryConnection lc, Connection conn, String key, String sql) throws SQLException
lc
- the LibraryConnectionconn
- the Connectionkey
- the statement keysql
- the SQL textIfsException
- if the operation failsSQLException
Copyright © 2023. All rights reserved.