org.jboss.portal.identity.ldap
Class LDAPUserModule

java.lang.Object
  extended by org.jboss.portal.identity.service.IdentityModuleService
      extended by org.jboss.portal.identity.service.UserModuleService
          extended by org.jboss.portal.identity.ldap.LDAPUserModule
All Implemented Interfaces:
UserModule
Direct Known Subclasses:
LDAPUserModuleImpl

public abstract class LDAPUserModule
extends UserModuleService

Abstract LDAPUserModule that should be extended to provide compabitibility across identity modules

Version:
$Revision: 1.1 $
Author:
Boleslaw Dawidowicz

Field Summary
 
Fields inherited from class org.jboss.portal.identity.service.IdentityModuleService
moduleType
 
Constructor Summary
LDAPUserModule()
           
 
Method Summary
 LDAPUserImpl createUserInstance(javax.naming.directory.Attributes attrs, java.lang.String dn)
           
 User findUserByDN(java.lang.String dn)
          method not belonging to UserModule interface - ldap specific.
protected  java.util.Map getAttributesToAdd()
           
protected  LDAPConnectionContext getConnectionContext()
           
protected  java.lang.String getContainerDN()
           
protected  java.lang.String getPasswordAttributeId()
           
protected  java.lang.String getPrincipalPreffix()
           
protected  java.lang.String getPrincipalSuffix()
           
protected  int getSearchScope()
           
protected  int getSearchTimeLimit()
           
protected  java.lang.String getUidAttributeID()
           
protected  UserProfileModule getUserProfileModule()
           
protected  java.lang.String getUserSearchCtxDN()
           
protected  java.lang.String getUserSearchFilter()
           
abstract  java.util.List searchUsers(java.lang.String filter, java.lang.Object[] filterArgs)
          This method should be used by over modules to perform searches.
 void setConnectionContext(LDAPConnectionContext connectionContext)
           
 void start()
           
 void updatePassword(LDAPUserImpl ldapu, java.lang.String password)
           
 boolean validatePassword(LDAPUserImpl ldapu, java.lang.String password)
           
 
Methods inherited from class org.jboss.portal.identity.service.UserModuleService
fireUserCreatedEvent, fireUserDestroyedEvent
 
Methods inherited from class org.jboss.portal.identity.service.IdentityModuleService
getConnectionJNDIName, getIdentityConfiguration, getIdentityContext, getIdentityEventBroadcaster, getInitOptions, getJndiBinder, getJNDIName, getModuleType, setConnectionJNDIName, setIdentityContext, setInitOptions, setJndiBinder, setJNDIName, setModuleType, stop
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.jboss.portal.identity.UserModule
createUser, findUserById, findUserById, findUserByUserName, findUsers, findUsersFilteredByUserName, getUserCount, removeUser
 

Constructor Detail

LDAPUserModule

public LDAPUserModule()
Method Detail

start

public void start()
           throws java.lang.Exception
Overrides:
start in class IdentityModuleService
Throws:
java.lang.Exception

updatePassword

public void updatePassword(LDAPUserImpl ldapu,
                           java.lang.String password)
                    throws IdentityException
Throws:
IdentityException

validatePassword

public boolean validatePassword(LDAPUserImpl ldapu,
                                java.lang.String password)
                         throws IdentityException
Throws:
IdentityException

createUserInstance

public LDAPUserImpl createUserInstance(javax.naming.directory.Attributes attrs,
                                       java.lang.String dn)
                                throws IdentityException
Throws:
IdentityException

findUserByDN

public User findUserByDN(java.lang.String dn)
                  throws IdentityException,
                         java.lang.IllegalArgumentException,
                         NoSuchUserException
method not belonging to UserModule interface - ldap specific.

Throws:
IdentityException
java.lang.IllegalArgumentException
NoSuchUserException

searchUsers

public abstract java.util.List searchUsers(java.lang.String filter,
                                           java.lang.Object[] filterArgs)
                                    throws javax.naming.NamingException,
                                           IdentityException
This method should be used by over modules to perform searches. It will allow user module implementation to apply proper filter and search scope from the configuration

Parameters:
filter - that will be concatenated with proper user search filter from the module
filterArgs -
Returns:
Throws:
javax.naming.NamingException
IdentityException

getUserProfileModule

protected UserProfileModule getUserProfileModule()
                                          throws IdentityException
Throws:
IdentityException

getUidAttributeID

protected java.lang.String getUidAttributeID()
                                      throws IdentityException
Throws:
IdentityException

getConnectionContext

protected LDAPConnectionContext getConnectionContext()
                                              throws IdentityException
Throws:
IdentityException

getContainerDN

protected java.lang.String getContainerDN()
                                   throws IdentityException
Throws:
IdentityException

getPrincipalPreffix

protected java.lang.String getPrincipalPreffix()
                                        throws IdentityException
Throws:
IdentityException

getPrincipalSuffix

protected java.lang.String getPrincipalSuffix()
                                       throws IdentityException
Throws:
IdentityException

getPasswordAttributeId

protected java.lang.String getPasswordAttributeId()
                                           throws IdentityException
Throws:
IdentityException

getUserSearchFilter

protected java.lang.String getUserSearchFilter()
                                        throws IdentityException
Throws:
IdentityException

getUserSearchCtxDN

protected java.lang.String getUserSearchCtxDN()
                                       throws IdentityException
Throws:
IdentityException

getSearchTimeLimit

protected int getSearchTimeLimit()
                          throws IdentityException
Throws:
IdentityException

getSearchScope

protected int getSearchScope()
                      throws IdentityException
Throws:
IdentityException

getAttributesToAdd

protected java.util.Map getAttributesToAdd()
                                    throws IdentityException
Throws:
IdentityException

setConnectionContext

public void setConnectionContext(LDAPConnectionContext connectionContext)