com.atlassian.confluence.user.crowd
Class CachedCrowdGroupDao
java.lang.Object
com.atlassian.confluence.user.crowd.CachedCrowdGroupDao
- All Implemented Interfaces:
- com.atlassian.crowd.embedded.hibernate2.InternalGroupDao, com.atlassian.crowd.embedded.spi.GroupDao, org.springframework.beans.factory.InitializingBean
public class CachedCrowdGroupDao
- extends Object
- implements com.atlassian.crowd.embedded.hibernate2.InternalGroupDao, org.springframework.beans.factory.InitializingBean
A caching decorator for an InternalUserDao.
Constructor Summary |
CachedCrowdGroupDao(com.atlassian.crowd.embedded.hibernate2.InternalGroupDao delegate,
com.atlassian.cache.CacheFactory cacheFactory)
|
Method Summary |
com.atlassian.crowd.model.group.Group |
add(com.atlassian.crowd.model.group.Group group)
Adds the passed in group by calling the delegate dao's add method. |
com.atlassian.crowd.util.BatchResult<com.atlassian.crowd.model.group.Group> |
addAll(Set<? extends com.atlassian.crowd.model.group.Group> groups)
Removes all the adding groups from the cache and delegates to the addAll method of the delegate DAO. |
com.atlassian.crowd.model.group.Group |
addLocal(com.atlassian.crowd.model.group.Group group)
|
void |
afterPropertiesSet()
|
com.atlassian.crowd.model.group.InternalDirectoryGroup |
findByName(long directoryId,
String name)
|
com.atlassian.crowd.model.group.GroupWithAttributes |
findByNameWithAttributes(long directoryId,
String name)
|
com.atlassian.crowd.model.group.InternalGroup |
internalFindByGroup(com.atlassian.crowd.model.group.Group group)
|
com.atlassian.crowd.model.group.InternalGroup |
internalFindByName(long directoryId,
String groupName)
|
void |
remove(com.atlassian.crowd.model.group.Group group)
|
void |
removeAllGroups(long directoryId)
|
void |
removeAllGroups(long directoryId,
Set<String> groupNames)
|
void |
removeAttribute(com.atlassian.crowd.model.group.Group group,
String attributeName)
|
com.atlassian.crowd.model.group.Group |
rename(com.atlassian.crowd.model.group.Group group,
String newName)
|
|
search(long directoryId,
com.atlassian.crowd.search.query.entity.EntityQuery<T> query)
|
void |
storeAttributes(com.atlassian.crowd.model.group.Group group,
Map<String,Set<String>> attributes)
|
com.atlassian.crowd.model.group.Group |
update(com.atlassian.crowd.model.group.Group group)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
CachedCrowdGroupDao
public CachedCrowdGroupDao(com.atlassian.crowd.embedded.hibernate2.InternalGroupDao delegate,
com.atlassian.cache.CacheFactory cacheFactory)
afterPropertiesSet
public void afterPropertiesSet()
throws Exception
- Specified by:
afterPropertiesSet
in interface org.springframework.beans.factory.InitializingBean
- Throws:
Exception
findByName
public com.atlassian.crowd.model.group.InternalDirectoryGroup findByName(long directoryId,
String name)
throws com.atlassian.crowd.exception.GroupNotFoundException
- Specified by:
findByName
in interface com.atlassian.crowd.embedded.spi.GroupDao
- Throws:
com.atlassian.crowd.exception.GroupNotFoundException
findByNameWithAttributes
public com.atlassian.crowd.model.group.GroupWithAttributes findByNameWithAttributes(long directoryId,
String name)
throws com.atlassian.crowd.exception.GroupNotFoundException
- Specified by:
findByNameWithAttributes
in interface com.atlassian.crowd.embedded.spi.GroupDao
- Throws:
com.atlassian.crowd.exception.GroupNotFoundException
addAll
public com.atlassian.crowd.util.BatchResult<com.atlassian.crowd.model.group.Group> addAll(Set<? extends com.atlassian.crowd.model.group.Group> groups)
throws com.atlassian.crowd.exception.DirectoryNotFoundException
- Removes all the adding groups from the cache and delegates to the addAll method of the delegate DAO.
This method will not try and update the cache like
add(Group)
because:
- We want to delegate to the "addAll" method on the delegate as its the fastest way to add
a large number of groups, we can't just delegate to add method
- Unlike the add method, we don't get a reference to the added group so we can't reliably
update the cache, so we just remove it.
- Specified by:
addAll
in interface com.atlassian.crowd.embedded.spi.GroupDao
- Parameters:
groups
- the groups to add
- Returns:
- a BatchResult describing the result
- Throws:
com.atlassian.crowd.exception.DirectoryNotFoundException
- if the directory for any of the groups is not found
add
public com.atlassian.crowd.model.group.Group add(com.atlassian.crowd.model.group.Group group)
throws com.atlassian.crowd.exception.DirectoryNotFoundException
- Adds the passed in group by calling the delegate dao's add method. Updates the cache to match
the newly created group.
- Specified by:
add
in interface com.atlassian.crowd.embedded.spi.GroupDao
- Parameters:
group
- the group to add
- Returns:
- the added group
- Throws:
com.atlassian.crowd.exception.DirectoryNotFoundException
addLocal
public com.atlassian.crowd.model.group.Group addLocal(com.atlassian.crowd.model.group.Group group)
throws com.atlassian.crowd.exception.DirectoryNotFoundException
- Specified by:
addLocal
in interface com.atlassian.crowd.embedded.spi.GroupDao
- Throws:
com.atlassian.crowd.exception.DirectoryNotFoundException
update
public com.atlassian.crowd.model.group.Group update(com.atlassian.crowd.model.group.Group group)
throws com.atlassian.crowd.exception.GroupNotFoundException
- Specified by:
update
in interface com.atlassian.crowd.embedded.spi.GroupDao
- Throws:
com.atlassian.crowd.exception.GroupNotFoundException
rename
public com.atlassian.crowd.model.group.Group rename(com.atlassian.crowd.model.group.Group group,
String newName)
throws com.atlassian.crowd.exception.GroupNotFoundException
- Specified by:
rename
in interface com.atlassian.crowd.embedded.spi.GroupDao
- Throws:
com.atlassian.crowd.exception.GroupNotFoundException
storeAttributes
public void storeAttributes(com.atlassian.crowd.model.group.Group group,
Map<String,Set<String>> attributes)
throws com.atlassian.crowd.exception.GroupNotFoundException
- Specified by:
storeAttributes
in interface com.atlassian.crowd.embedded.spi.GroupDao
- Throws:
com.atlassian.crowd.exception.GroupNotFoundException
removeAttribute
public void removeAttribute(com.atlassian.crowd.model.group.Group group,
String attributeName)
throws com.atlassian.crowd.exception.GroupNotFoundException
- Specified by:
removeAttribute
in interface com.atlassian.crowd.embedded.spi.GroupDao
- Throws:
com.atlassian.crowd.exception.GroupNotFoundException
remove
public void remove(com.atlassian.crowd.model.group.Group group)
throws com.atlassian.crowd.exception.GroupNotFoundException
- Specified by:
remove
in interface com.atlassian.crowd.embedded.spi.GroupDao
- Throws:
com.atlassian.crowd.exception.GroupNotFoundException
search
public <T> List<T> search(long directoryId,
com.atlassian.crowd.search.query.entity.EntityQuery<T> query)
- Specified by:
search
in interface com.atlassian.crowd.embedded.spi.GroupDao
internalFindByName
public com.atlassian.crowd.model.group.InternalGroup internalFindByName(long directoryId,
String groupName)
throws com.atlassian.crowd.exception.GroupNotFoundException
- Specified by:
internalFindByName
in interface com.atlassian.crowd.embedded.hibernate2.InternalGroupDao
- Throws:
com.atlassian.crowd.exception.GroupNotFoundException
internalFindByGroup
public com.atlassian.crowd.model.group.InternalGroup internalFindByGroup(com.atlassian.crowd.model.group.Group group)
throws com.atlassian.crowd.exception.GroupNotFoundException
- Specified by:
internalFindByGroup
in interface com.atlassian.crowd.embedded.hibernate2.InternalGroupDao
- Throws:
com.atlassian.crowd.exception.GroupNotFoundException
removeAllGroups
public void removeAllGroups(long directoryId)
- Specified by:
removeAllGroups
in interface com.atlassian.crowd.embedded.hibernate2.InternalGroupDao
removeAllGroups
public void removeAllGroups(long directoryId,
Set<String> groupNames)
- Specified by:
removeAllGroups
in interface com.atlassian.crowd.embedded.spi.GroupDao
Copyright © 2003-2013 Atlassian. All Rights Reserved.