public class DefaultLdapSyncAdapter extends LdapSyncAdapter
| Modifier and Type | Field and Description |
|---|---|
protected java.util.HashMap |
cachedPreparedStatements
A cache of prepared statements to improve the performance
of the repeatedly executed SQL statements.
|
connection, logger, sqlLogger, userInfo| Constructor and Description |
|---|
DefaultLdapSyncAdapter() |
| Modifier and Type | Method and Description |
|---|---|
protected void |
addMemberRecords(java.sql.Connection con,
SyncData syncData,
MemberDataMap memberDataMap,
java.util.Set members)
Adds member records based on the data provided.
|
protected void |
cachePreparedStatement(java.lang.String query,
java.sql.PreparedStatement stmt)
Puts the statement in the cache based on the query.
|
protected void |
closeCachedPreparedStatements()
Closes all the cached prepared statements.
|
protected void |
deleteMemberRecords(java.sql.Connection con,
SyncData syncData,
MemberDataMap memberDataMap)
Deletes member records based on the data provided.
|
protected void |
deleteRecord(MboRemote mbo)
Deletes an existing mbo.
|
protected java.sql.PreparedStatement |
getCachedPreparedStatement(java.lang.String query)
Returns a cached statement object for the given query.
|
protected java.lang.Object |
getDataMapValue(java.sql.Connection con,
java.lang.String tableId,
java.lang.String columnName,
SyncData syncData,
DataMap dataMap)
Returns the value to be used to for the given table and column based on
the data mapping.
|
protected java.lang.Object |
getMemberDataMapColumnValue(java.sql.Connection con,
java.lang.String column,
SyncData syncData,
MemberDataMap memberDataMap)
Returns the column value for the given column from the
member data mapping.
|
protected java.lang.Object |
getMemberDataMapKeyColumnValue(java.lang.String keyColumn,
SyncData syncData,
MemberDataMap memberDataMap)
Returns the key value for the given key column from the
member data mapping.
|
protected MboRemote |
insertRecord(java.sql.Connection con,
java.lang.String tableId,
MboSetRemote mboSet,
SyncData syncData,
DataMap dataMap)
Inserts a record into MboSet based on the information provided.
|
protected void |
logBindValue(java.lang.String bindColumnName,
java.lang.Object bindValue)
Logs the bind column name and its value.
|
void |
syncEnded(LdapSyncEvent event)
Called by the Synchronizer at the end of a full or incremental
synchronization to let the listener cleanup any references
to objects that are being held for the duration of the
synchronization process.
|
void |
syncGroup(LdapSyncEvent event)
Called by the Synchronizer when a group data need to be synchronized
with the database.
|
void |
syncGroupMembers(LdapSyncEvent event)
Called by the Synchronizer when a group member data need to be
synchronized with the database.
|
void |
syncUser(LdapSyncEvent event)
Called by the Synchronizer when a user data need to be synchronized
with the database.
|
protected void |
updateRecord(java.sql.Connection con,
java.lang.String tableId,
MboRemote mbo,
SyncData syncData,
DataMap dataMap)
Updates an existing mbo based on the information provided.
|
getConnection, getLogger, getSqlLogger, getUserInfo, syncStartingprotected java.util.HashMap cachedPreparedStatements
public void syncUser(LdapSyncEvent event) throws LdapSyncException
syncUser in interface LdapSyncListenersyncUser in class LdapSyncAdapterevent - synchronization event that provides additional details
to perform the user data synchronization with database.LdapSyncException - if the listener fails to perform the
user data synchronization.LdapSyncListener.syncUser(psdi.security.ldap.LdapSyncEvent)public void syncGroup(LdapSyncEvent event) throws LdapSyncException
syncGroup in interface LdapSyncListenersyncGroup in class LdapSyncAdapterevent - synchronization event that provides additional details
to perform the group data synchronization with database.LdapSyncException - if the listener fails to perform the
group data synchronization.LdapSyncListener.syncGroup(psdi.security.ldap.LdapSyncEvent)public void syncGroupMembers(LdapSyncEvent event) throws LdapSyncException
syncGroupMembers in interface LdapSyncListenersyncGroupMembers in class LdapSyncAdapterevent - synchronization event that provides additional details
to perform the group member data synchronization
with database.LdapSyncException - if the listener fails to perform the
group member data synchronization.LdapSyncListener.syncGroupMembers(psdi.security.ldap.LdapSyncEvent)protected void deleteMemberRecords(java.sql.Connection con,
SyncData syncData,
MemberDataMap memberDataMap)
throws java.sql.SQLException
con - database connection to be usedsyncData - synchronization data obtained from LDAP servermemberDataMap - member data mapping to be usedjava.sql.SQLException - if fails to delete membersprotected void addMemberRecords(java.sql.Connection con,
SyncData syncData,
MemberDataMap memberDataMap,
java.util.Set members)
throws LdapSyncException,
java.sql.SQLException
con - database connection to be usedsyncData - synchronization data obtained from LDAP servermemberDataMap - member data mapping to be usedmembers - list of user account namesjava.sql.SQLException - if fails to add membersLdapSyncExceptionprotected java.lang.Object getMemberDataMapKeyColumnValue(java.lang.String keyColumn,
SyncData syncData,
MemberDataMap memberDataMap)
keyColumn - key columnsyncData - synchronization data from LDAP ServermemberDataMap - member data mapprotected java.lang.Object getMemberDataMapColumnValue(java.sql.Connection con,
java.lang.String column,
SyncData syncData,
MemberDataMap memberDataMap)
throws LdapSyncException
column - column namesyncData - synchronization data from LDAP ServermemberDataMap - member data mapLdapSyncExceptionpublic void syncEnded(LdapSyncEvent event) throws LdapSyncException
syncEnded in interface LdapSyncListenersyncEnded in class LdapSyncAdapterevent - synchronization event that provides additional details
to the listener.LdapSyncException - if the listener fails to cleanup.LdapSyncListener.syncEnded(psdi.security.ldap.LdapSyncEvent)protected void cachePreparedStatement(java.lang.String query,
java.sql.PreparedStatement stmt)
query - query to be used as a key.stmt - statement to be cached.protected java.sql.PreparedStatement getCachedPreparedStatement(java.lang.String query)
query - query to be used to retrieve the cached statement.protected void closeCachedPreparedStatements()
protected java.lang.Object getDataMapValue(java.sql.Connection con,
java.lang.String tableId,
java.lang.String columnName,
SyncData syncData,
DataMap dataMap)
throws LdapSyncException
con - database connection to be usedtableId - table idcolumnName - column namesyncData - data from the LDAP serverdataMap - data mappingLdapSyncException - if fails to get the data value.protected MboRemote insertRecord(java.sql.Connection con, java.lang.String tableId, MboSetRemote mboSet, SyncData syncData, DataMap dataMap) throws LdapSyncException, MXException, java.rmi.RemoteException
con - connection to be usedtableId - table idmboSet - The MboSet to get the new record.syncData - data from LDAP ServerdataMap - data mappingLdapSyncExceptionMXExceptionjava.rmi.RemoteExceptionprotected void updateRecord(java.sql.Connection con,
java.lang.String tableId,
MboRemote mbo,
SyncData syncData,
DataMap dataMap)
throws LdapSyncException,
MXException,
java.rmi.RemoteException
con - connection to be usedtableId - table idmbo - The MbosyncData - data from LDAP ServerdataMap - data mappingLdapSyncExceptionMXExceptionjava.rmi.RemoteExceptionprotected void deleteRecord(MboRemote mbo) throws MXException, java.rmi.RemoteException
mbo - The mbo to be deleted.MXExceptionjava.rmi.RemoteExceptionprotected void logBindValue(java.lang.String bindColumnName,
java.lang.Object bindValue)