it.sistematica.isharedoc.security
Class UserServiceLdapImpl

java.lang.Object
  extended by it.neverworks.security.service.UserServiceImpl
      extended by it.sistematica.isharedoc.security.UserServiceLdapImpl
All Implemented Interfaces:
it.neverworks.security.service.UserService, java.io.Serializable, org.springframework.security.userdetails.AuthenticationUserDetailsService, org.springframework.security.userdetails.UserDetailsService

public class UserServiceLdapImpl
extends it.neverworks.security.service.UserServiceImpl

See Also:
Serialized Form

Field Summary
protected  java.lang.String baseGroupDn
           
protected  java.lang.String baseRoleDn
           
protected  java.lang.String baseUserDn
           
protected  java.lang.String groupObjectClass
           
protected  boolean ignorePartialResultException
           
protected  java.lang.String ldapDateFormat
           
protected  java.text.SimpleDateFormat ldapDateFormatter
           
protected  org.springframework.ldap.core.LdapTemplate ldapTemplate
           
protected  it.neverworks.security.service.PasswordChecker passwordChecker
           
protected  java.lang.String passwordNeverExpirePolicyDn
           
protected  boolean persistInLdap
           
protected  java.lang.String roleName
           
protected  java.lang.String roleObjectClass
           
protected  boolean userEnableFlagInLdap
           
protected  java.lang.String userFilter
           
protected  java.lang.String userObjectClass
           
 
Fields inherited from class it.neverworks.security.service.UserServiceImpl
logger, passwordEncoder, saltSource, userDAO
 
Constructor Summary
UserServiceLdapImpl()
           
 
Method Summary
protected  boolean containsErrorMessage(java.lang.Throwable ex, java.lang.String innerMessage)
           
protected  void create(it.neverworks.security.User user, java.util.Map<java.lang.String,java.lang.String> flags)
           
 it.neverworks.security.User createUser(it.neverworks.security.User user)
           
 it.neverworks.security.User createUser(it.neverworks.security.User user, java.util.Map<java.lang.String,java.lang.String> flags)
           
 void deleteUser(it.neverworks.security.User user)
           
 boolean existUser(it.neverworks.security.User user)
           
 java.util.List<it.neverworks.security.User> findUserByExample(it.neverworks.security.User user)
           
 it.neverworks.data.Finder<it.neverworks.security.User> findUsers()
           
protected  javax.naming.Name getDn(it.neverworks.security.User user)
           
protected  int getErrorCode(java.lang.Throwable ex)
           
 boolean isEnabledFor(it.neverworks.security.User user, java.lang.String appId)
           
 boolean isLocked(it.neverworks.security.User user)
           
 boolean isNeverExpire(it.neverworks.security.User user)
           
protected  boolean isPPolicyActivated(it.neverworks.security.User user)
           
<T extends it.neverworks.security.User>
T
load(java.lang.Class<T> userType, java.lang.String id)
           
 org.springframework.security.userdetails.UserDetails loadUserByUsername(java.lang.String login)
           
 org.springframework.security.userdetails.UserDetails loadUserDetails(org.springframework.security.Authentication authentication)
           
 void setAttributeNameUid(java.lang.String attributeNameUid)
           
 void setBaseGroupDn(java.lang.String baseGroupDn)
           
 void setBaseRoleDn(java.lang.String baseRoleDn)
           
 void setBaseUserDn(java.lang.String baseUserDn)
           
 void setGroupObjectClass(java.lang.String groupObjectClass)
           
 void setIgnorePartialResultException(boolean ignorePartialResultException)
           
 void setLdapDateFormat(java.lang.String ldapDateFormat)
           
 void setLdapTemplate(org.springframework.ldap.core.LdapTemplate ldapTemplate)
           
 void setLdapUserCache(it.neverworks.cache.Cache<it.sistematica.isharedoc.security.UserServiceLdapImpl.LdapUser> ldapUserCache)
           
 void setPasswordChecker(it.neverworks.security.service.PasswordChecker passwordChecker)
           
 void setPasswordNeverExpirePolicyDn(java.lang.String passwordNeverExpirePolicyDn)
           
 void setPersistInLdap(boolean persistInLdap)
           
 void setRoleName(java.lang.String roleName)
           
 void setRoleObjectClass(java.lang.String roleObjectClass)
           
 void setSearchMode(java.lang.String searchMode)
           
 void setUserEnableFlagInLdap(boolean userEnableFlagInLdap)
           
 void setUserFilter(java.lang.String userFilter)
           
 void setUserObjectClass(java.lang.String userObjectClass)
           
protected  void update(it.neverworks.security.User user, java.util.Map<java.lang.String,java.lang.String> flags)
           
protected  void updateFlags(it.neverworks.security.User user, java.util.Map<java.lang.String,java.lang.String> flags)
           
 it.neverworks.security.User updateUser(it.neverworks.security.User user)
           
 it.neverworks.security.User updateUser(it.neverworks.security.User user, java.util.Map<java.lang.String,java.lang.String> flags)
           
 
Methods inherited from class it.neverworks.security.service.UserServiceImpl
encodePassword, formatName, setPasswordEncoder, setSaltSource, setUserDAO
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

persistInLdap

protected boolean persistInLdap

userEnableFlagInLdap

protected boolean userEnableFlagInLdap

passwordChecker

protected it.neverworks.security.service.PasswordChecker passwordChecker

passwordNeverExpirePolicyDn

protected java.lang.String passwordNeverExpirePolicyDn

ldapDateFormat

protected java.lang.String ldapDateFormat

ldapDateFormatter

protected java.text.SimpleDateFormat ldapDateFormatter

ldapTemplate

protected org.springframework.ldap.core.LdapTemplate ldapTemplate

baseRoleDn

protected java.lang.String baseRoleDn

baseUserDn

protected java.lang.String baseUserDn

baseGroupDn

protected java.lang.String baseGroupDn

roleName

protected java.lang.String roleName

userFilter

protected java.lang.String userFilter

roleObjectClass

protected java.lang.String roleObjectClass

userObjectClass

protected java.lang.String userObjectClass

groupObjectClass

protected java.lang.String groupObjectClass

ignorePartialResultException

protected boolean ignorePartialResultException
Constructor Detail

UserServiceLdapImpl

public UserServiceLdapImpl()
Method Detail

setPersistInLdap

public void setPersistInLdap(boolean persistInLdap)

setUserEnableFlagInLdap

public void setUserEnableFlagInLdap(boolean userEnableFlagInLdap)

setLdapUserCache

public void setLdapUserCache(it.neverworks.cache.Cache<it.sistematica.isharedoc.security.UserServiceLdapImpl.LdapUser> ldapUserCache)

setPasswordChecker

public void setPasswordChecker(it.neverworks.security.service.PasswordChecker passwordChecker)

setPasswordNeverExpirePolicyDn

public void setPasswordNeverExpirePolicyDn(java.lang.String passwordNeverExpirePolicyDn)

setAttributeNameUid

public void setAttributeNameUid(java.lang.String attributeNameUid)

setSearchMode

public void setSearchMode(java.lang.String searchMode)

setLdapDateFormat

public void setLdapDateFormat(java.lang.String ldapDateFormat)

createUser

@Transactional
@Secured(value="ROLE_ADMINISTRATOR")
public it.neverworks.security.User createUser(it.neverworks.security.User user)
Specified by:
createUser in interface it.neverworks.security.service.UserService
Overrides:
createUser in class it.neverworks.security.service.UserServiceImpl

createUser

@Transactional
@Secured(value="ROLE_ADMINISTRATOR")
public it.neverworks.security.User createUser(it.neverworks.security.User user,
                                                                    java.util.Map<java.lang.String,java.lang.String> flags)
Specified by:
createUser in interface it.neverworks.security.service.UserService
Overrides:
createUser in class it.neverworks.security.service.UserServiceImpl

create

protected void create(it.neverworks.security.User user,
                      java.util.Map<java.lang.String,java.lang.String> flags)
               throws javax.naming.NamingException
Throws:
javax.naming.NamingException

update

protected void update(it.neverworks.security.User user,
                      java.util.Map<java.lang.String,java.lang.String> flags)
               throws javax.naming.NamingException
Throws:
javax.naming.NamingException

updateFlags

protected void updateFlags(it.neverworks.security.User user,
                           java.util.Map<java.lang.String,java.lang.String> flags)
                    throws javax.naming.NamingException
Throws:
javax.naming.NamingException

updateUser

@Transactional
@Secured(value={"ROLE_USER","ROLE_ADMINISTRATOR"})
public it.neverworks.security.User updateUser(it.neverworks.security.User user)
Specified by:
updateUser in interface it.neverworks.security.service.UserService
Overrides:
updateUser in class it.neverworks.security.service.UserServiceImpl

updateUser

@Transactional
public it.neverworks.security.User updateUser(it.neverworks.security.User user,
                                                            java.util.Map<java.lang.String,java.lang.String> flags)
Specified by:
updateUser in interface it.neverworks.security.service.UserService
Overrides:
updateUser in class it.neverworks.security.service.UserServiceImpl

deleteUser

@Transactional
@Secured(value="ROLE_ADMINISTRATOR")
public void deleteUser(it.neverworks.security.User user)
Specified by:
deleteUser in interface it.neverworks.security.service.UserService
Overrides:
deleteUser in class it.neverworks.security.service.UserServiceImpl

load

@Transactional(propagation=SUPPORTS,
               noRollbackFor=org.hibernate.ObjectNotFoundException.class)
public <T extends it.neverworks.security.User> T load(java.lang.Class<T> userType,
                                                                                                               java.lang.String id)
Specified by:
load in interface it.neverworks.security.service.UserService
Overrides:
load in class it.neverworks.security.service.UserServiceImpl

loadUserByUsername

@Transactional(propagation=SUPPORTS,
               noRollbackFor=org.hibernate.ObjectNotFoundException.class)
public org.springframework.security.userdetails.UserDetails loadUserByUsername(java.lang.String login)
                                                                        throws org.springframework.security.userdetails.UsernameNotFoundException,
                                                                               org.springframework.dao.DataAccessException
Specified by:
loadUserByUsername in interface org.springframework.security.userdetails.UserDetailsService
Overrides:
loadUserByUsername in class it.neverworks.security.service.UserServiceImpl
Throws:
org.springframework.security.userdetails.UsernameNotFoundException
org.springframework.dao.DataAccessException

loadUserDetails

@Transactional(propagation=SUPPORTS)
public org.springframework.security.userdetails.UserDetails loadUserDetails(org.springframework.security.Authentication authentication)
                                                                     throws org.springframework.security.userdetails.UsernameNotFoundException
Specified by:
loadUserDetails in interface org.springframework.security.userdetails.AuthenticationUserDetailsService
Overrides:
loadUserDetails in class it.neverworks.security.service.UserServiceImpl
Throws:
org.springframework.security.userdetails.UsernameNotFoundException

existUser

@Transactional(propagation=SUPPORTS)
@Secured(value="ROLE_ADMINISTRATOR")
public boolean existUser(it.neverworks.security.User user)
Specified by:
existUser in interface it.neverworks.security.service.UserService
Overrides:
existUser in class it.neverworks.security.service.UserServiceImpl

findUserByExample

@Transactional(propagation=SUPPORTS)
@Secured(value="ROLE_USER")
public java.util.List<it.neverworks.security.User> findUserByExample(it.neverworks.security.User user)
Specified by:
findUserByExample in interface it.neverworks.security.service.UserService
Overrides:
findUserByExample in class it.neverworks.security.service.UserServiceImpl

findUsers

public it.neverworks.data.Finder<it.neverworks.security.User> findUsers()
Specified by:
findUsers in interface it.neverworks.security.service.UserService
Overrides:
findUsers in class it.neverworks.security.service.UserServiceImpl

isEnabledFor

public boolean isEnabledFor(it.neverworks.security.User user,
                            java.lang.String appId)
Specified by:
isEnabledFor in interface it.neverworks.security.service.UserService
Overrides:
isEnabledFor in class it.neverworks.security.service.UserServiceImpl

isLocked

public boolean isLocked(it.neverworks.security.User user)
Specified by:
isLocked in interface it.neverworks.security.service.UserService
Overrides:
isLocked in class it.neverworks.security.service.UserServiceImpl

isNeverExpire

public boolean isNeverExpire(it.neverworks.security.User user)
Specified by:
isNeverExpire in interface it.neverworks.security.service.UserService
Overrides:
isNeverExpire in class it.neverworks.security.service.UserServiceImpl

isPPolicyActivated

protected boolean isPPolicyActivated(it.neverworks.security.User user)

setLdapTemplate

public void setLdapTemplate(org.springframework.ldap.core.LdapTemplate ldapTemplate)

setBaseRoleDn

public void setBaseRoleDn(java.lang.String baseRoleDn)

setBaseUserDn

public void setBaseUserDn(java.lang.String baseUserDn)

setBaseGroupDn

public void setBaseGroupDn(java.lang.String baseGroupDn)

setRoleName

public void setRoleName(java.lang.String roleName)

getDn

protected javax.naming.Name getDn(it.neverworks.security.User user)

setUserFilter

public void setUserFilter(java.lang.String userFilter)

setRoleObjectClass

public void setRoleObjectClass(java.lang.String roleObjectClass)

setUserObjectClass

public void setUserObjectClass(java.lang.String userObjectClass)

setGroupObjectClass

public void setGroupObjectClass(java.lang.String groupObjectClass)

setIgnorePartialResultException

public void setIgnorePartialResultException(boolean ignorePartialResultException)

getErrorCode

protected int getErrorCode(java.lang.Throwable ex)

containsErrorMessage

protected boolean containsErrorMessage(java.lang.Throwable ex,
                                       java.lang.String innerMessage)