Class HibernateUserDao
- java.lang.Object
-
- com.atlassian.confluence.impl.user.crowd.hibernate.HibernateUserDao
-
- All Implemented Interfaces:
InternalUserDao<com.atlassian.crowd.model.user.InternalUser>,com.atlassian.crowd.embedded.spi.UserDao
public final class HibernateUserDao extends Object implements InternalUserDao<com.atlassian.crowd.model.user.InternalUser>
Implementation ofUserDaowhich uses Hibernate 5.- Since:
- 7.20.0
-
-
Constructor Summary
Constructors Constructor Description HibernateUserDao(org.hibernate.SessionFactory sessionFactory, Supplier<com.atlassian.crowd.embedded.spi.DirectoryDao> directoryDao, InternalMembershipDao membershipDao, ConfluenceUserDao confluenceUserDao, com.atlassian.crowd.util.persistence.hibernate.batch.BatchProcessor<org.hibernate.Session> batchProcessor, com.atlassian.crowd.util.persistence.hibernate.batch.BatchFinder batchFinder, BatchOperationManager batchOperationManager)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description com.atlassian.crowd.model.user.InternalUseradd(com.atlassian.crowd.model.user.User user, com.atlassian.crowd.embedded.api.PasswordCredential credential)com.atlassian.crowd.util.BatchResult<com.atlassian.crowd.model.user.User>addAll(Set<com.atlassian.crowd.model.user.UserTemplateWithCredentialAndAttributes> users)com.atlassian.crowd.model.user.TimestampedUserfindByExternalId(long directoryId, String externalId)Map<String,String>findByExternalIds(long directoryId, Set<String> externalIds)com.atlassian.crowd.model.user.TimestampedUserfindByName(long directoryId, String userName)Collection<com.atlassian.crowd.model.user.InternalUser>findByNames(long directoryID, Collection<String> usernames)Find all users from the list of usernamescom.atlassian.crowd.model.user.UserWithAttributesfindByNameWithAttributes(long directoryId, String userName)Set<Long>findDirectoryIdsContainingUserName(String username)Set<String>getAllExternalIds(long directoryId)com.atlassian.crowd.embedded.api.PasswordCredentialgetCredential(long directoryId, String userName)List<com.atlassian.crowd.embedded.api.PasswordCredential>getCredentialHistory(long directoryId, String userName)longgetUserCount(long directoryId)com.atlassian.crowd.model.user.InternalUserinternalFindByName(long directoryId, String userName)Find a persistent user object from a given directory and usernamecom.atlassian.crowd.model.user.InternalUserinternalFindByUser(com.atlassian.crowd.model.user.User user)Find the persistent user object that corresponds to the provided user.voidremove(com.atlassian.crowd.model.user.User user)voidremoveAllUsers(long directoryId)Remove all users from a particular directory (used when deleting an internal directory)com.atlassian.crowd.util.BatchResult<String>removeAllUsers(long directoryId, Set<String> userNames)voidremoveAttribute(com.atlassian.crowd.model.user.User user, String attributeName)com.atlassian.crowd.model.user.Userrename(com.atlassian.crowd.model.user.User user, String newName)<T> List<T>search(long directoryId, com.atlassian.crowd.search.query.entity.EntityQuery<T> query)voidsetAttributeForAllInDirectory(long directoryId, String attrName, String attrValue)voidstoreAttributes(com.atlassian.crowd.model.user.User user, Map<String,Set<String>> attributes, boolean updateTimestamp)com.atlassian.crowd.model.user.Userupdate(com.atlassian.crowd.model.user.User user)voidupdateCredential(com.atlassian.crowd.model.user.User user, com.atlassian.crowd.embedded.api.PasswordCredential credential, int maxCredentialHistory)
-
-
-
Constructor Detail
-
HibernateUserDao
public HibernateUserDao(org.hibernate.SessionFactory sessionFactory, Supplier<com.atlassian.crowd.embedded.spi.DirectoryDao> directoryDao, InternalMembershipDao membershipDao, ConfluenceUserDao confluenceUserDao, com.atlassian.crowd.util.persistence.hibernate.batch.BatchProcessor<org.hibernate.Session> batchProcessor, com.atlassian.crowd.util.persistence.hibernate.batch.BatchFinder batchFinder, BatchOperationManager batchOperationManager)
-
-
Method Detail
-
remove
public void remove(com.atlassian.crowd.model.user.User user) throws com.atlassian.crowd.exception.UserNotFoundException- Specified by:
removein interfacecom.atlassian.crowd.embedded.spi.UserDao- Throws:
com.atlassian.crowd.exception.UserNotFoundException
-
removeAttribute
public void removeAttribute(com.atlassian.crowd.model.user.User user, String attributeName) throws com.atlassian.crowd.exception.UserNotFoundException- Specified by:
removeAttributein interfacecom.atlassian.crowd.embedded.spi.UserDao- Throws:
com.atlassian.crowd.exception.UserNotFoundException
-
rename
public com.atlassian.crowd.model.user.User rename(com.atlassian.crowd.model.user.User user, String newName) throws com.atlassian.crowd.exception.UserNotFoundException, com.atlassian.crowd.exception.UserAlreadyExistsException- Specified by:
renamein interfacecom.atlassian.crowd.embedded.spi.UserDao- Throws:
com.atlassian.crowd.exception.UserNotFoundExceptioncom.atlassian.crowd.exception.UserAlreadyExistsException
-
internalFindByUser
public com.atlassian.crowd.model.user.InternalUser internalFindByUser(com.atlassian.crowd.model.user.User user) throws com.atlassian.crowd.exception.UserNotFoundExceptionDescription copied from interface:InternalUserDaoFind the persistent user object that corresponds to the provided user.- Specified by:
internalFindByUserin interfaceInternalUserDao<com.atlassian.crowd.model.user.InternalUser>- Throws:
com.atlassian.crowd.exception.UserNotFoundException
-
removeAllUsers
public com.atlassian.crowd.util.BatchResult<String> removeAllUsers(long directoryId, Set<String> userNames)
- Specified by:
removeAllUsersin interfacecom.atlassian.crowd.embedded.spi.UserDao
-
removeAllUsers
public void removeAllUsers(long directoryId)
Description copied from interface:InternalUserDaoRemove all users from a particular directory (used when deleting an internal directory)- Specified by:
removeAllUsersin interfaceInternalUserDao<com.atlassian.crowd.model.user.InternalUser>
-
findByNames
public Collection<com.atlassian.crowd.model.user.InternalUser> findByNames(long directoryID, Collection<String> usernames)
Description copied from interface:InternalUserDaoFind all users from the list of usernames- Specified by:
findByNamesin interfaceInternalUserDao<com.atlassian.crowd.model.user.InternalUser>- Returns:
-
updateCredential
public void updateCredential(com.atlassian.crowd.model.user.User user, com.atlassian.crowd.embedded.api.PasswordCredential credential, int maxCredentialHistory) throws com.atlassian.crowd.exception.UserNotFoundException- Specified by:
updateCredentialin interfacecom.atlassian.crowd.embedded.spi.UserDao- Throws:
com.atlassian.crowd.exception.UserNotFoundException
-
search
public <T> List<T> search(long directoryId, com.atlassian.crowd.search.query.entity.EntityQuery<T> query)
- Specified by:
searchin interfacecom.atlassian.crowd.embedded.spi.UserDao
-
addAll
public com.atlassian.crowd.util.BatchResult<com.atlassian.crowd.model.user.User> addAll(Set<com.atlassian.crowd.model.user.UserTemplateWithCredentialAndAttributes> users)
- Specified by:
addAllin interfacecom.atlassian.crowd.embedded.spi.UserDao
-
update
public com.atlassian.crowd.model.user.User update(com.atlassian.crowd.model.user.User user) throws com.atlassian.crowd.exception.UserNotFoundException- Specified by:
updatein interfacecom.atlassian.crowd.embedded.spi.UserDao- Throws:
com.atlassian.crowd.exception.UserNotFoundException
-
storeAttributes
public void storeAttributes(com.atlassian.crowd.model.user.User user, Map<String,Set<String>> attributes, boolean updateTimestamp) throws com.atlassian.crowd.exception.UserNotFoundException- Specified by:
storeAttributesin interfacecom.atlassian.crowd.embedded.spi.UserDao- Throws:
com.atlassian.crowd.exception.UserNotFoundException
-
add
public com.atlassian.crowd.model.user.InternalUser add(com.atlassian.crowd.model.user.User user, com.atlassian.crowd.embedded.api.PasswordCredential credential) throws com.atlassian.crowd.exception.UserAlreadyExistsException, IllegalArgumentException, com.atlassian.crowd.exception.DirectoryNotFoundException- Specified by:
addin interfaceInternalUserDao<com.atlassian.crowd.model.user.InternalUser>- Specified by:
addin interfacecom.atlassian.crowd.embedded.spi.UserDao- Throws:
com.atlassian.crowd.exception.UserAlreadyExistsExceptionIllegalArgumentExceptioncom.atlassian.crowd.exception.DirectoryNotFoundException
-
getCredentialHistory
public List<com.atlassian.crowd.embedded.api.PasswordCredential> getCredentialHistory(long directoryId, String userName) throws com.atlassian.crowd.exception.UserNotFoundException
- Specified by:
getCredentialHistoryin interfacecom.atlassian.crowd.embedded.spi.UserDao- Throws:
com.atlassian.crowd.exception.UserNotFoundException
-
getCredential
public com.atlassian.crowd.embedded.api.PasswordCredential getCredential(long directoryId, String userName) throws com.atlassian.crowd.exception.UserNotFoundException- Specified by:
getCredentialin interfacecom.atlassian.crowd.embedded.spi.UserDao- Throws:
com.atlassian.crowd.exception.UserNotFoundException
-
findByNameWithAttributes
public com.atlassian.crowd.model.user.UserWithAttributes findByNameWithAttributes(long directoryId, String userName) throws com.atlassian.crowd.exception.UserNotFoundException- Specified by:
findByNameWithAttributesin interfacecom.atlassian.crowd.embedded.spi.UserDao- Throws:
com.atlassian.crowd.exception.UserNotFoundException
-
findByName
public com.atlassian.crowd.model.user.TimestampedUser findByName(long directoryId, String userName) throws com.atlassian.crowd.exception.UserNotFoundException- Specified by:
findByNamein interfacecom.atlassian.crowd.embedded.spi.UserDao- Throws:
com.atlassian.crowd.exception.UserNotFoundException
-
findByExternalId
public com.atlassian.crowd.model.user.TimestampedUser findByExternalId(long directoryId, String externalId) throws com.atlassian.crowd.exception.UserNotFoundException- Specified by:
findByExternalIdin interfacecom.atlassian.crowd.embedded.spi.UserDao- Throws:
com.atlassian.crowd.exception.UserNotFoundException
-
internalFindByName
public com.atlassian.crowd.model.user.InternalUser internalFindByName(long directoryId, String userName) throws com.atlassian.crowd.exception.UserNotFoundExceptionDescription copied from interface:InternalUserDaoFind a persistent user object from a given directory and username- Specified by:
internalFindByNamein interfaceInternalUserDao<com.atlassian.crowd.model.user.InternalUser>- Throws:
com.atlassian.crowd.exception.UserNotFoundException- if the user is not found
-
setAttributeForAllInDirectory
public void setAttributeForAllInDirectory(long directoryId, String attrName, String attrValue)- Specified by:
setAttributeForAllInDirectoryin interfacecom.atlassian.crowd.embedded.spi.UserDao
-
getAllExternalIds
public Set<String> getAllExternalIds(long directoryId)
- Specified by:
getAllExternalIdsin interfacecom.atlassian.crowd.embedded.spi.UserDao
-
getUserCount
public long getUserCount(long directoryId)
- Specified by:
getUserCountin interfacecom.atlassian.crowd.embedded.spi.UserDao
-
findDirectoryIdsContainingUserName
public Set<Long> findDirectoryIdsContainingUserName(String username)
- Specified by:
findDirectoryIdsContainingUserNamein interfacecom.atlassian.crowd.embedded.spi.UserDao
-
-