Class DbCachingRemoteDirectoryInstanceLoader
java.lang.Object
com.atlassian.crowd.directory.loader.AbstractDirectoryInstanceLoader
com.atlassian.crowd.directory.loader.DbCachingRemoteDirectoryInstanceLoader
- All Implemented Interfaces:
DirectoryInstanceLoader,InternalHybridDirectoryInstanceLoader
- Direct Known Subclasses:
ConfigurableDbCachingRemoteDirectoryInstanceLoader
public class DbCachingRemoteDirectoryInstanceLoader
extends AbstractDirectoryInstanceLoader
implements InternalHybridDirectoryInstanceLoader
Loader that allows for proxying of a remote directory through a local cache/mirror. To enable proxying for a remote
directory you should not expose its loader directly to the Crowd service, but instead delegate through this loader.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final com.atlassian.crowd.manager.audit.mapper.AuditLogGroupMapperprotected final com.atlassian.crowd.manager.audit.mapper.AuditLogUserMapperprotected final AuditService -
Constructor Summary
ConstructorsConstructorDescriptionDbCachingRemoteDirectoryInstanceLoader(DirectoryInstanceLoader remoteDirectoryInstanceLoader, InternalDirectoryInstanceLoader internalDirectoryInstanceLoader, DirectoryCacheFactory directoryCacheFactory, CacheRefresherFactory cacheRefresherFactory, AuditService auditService, com.atlassian.crowd.manager.audit.mapper.AuditLogUserMapper auditLogUserMapper, com.atlassian.crowd.manager.audit.mapper.AuditLogGroupMapper auditLogGroupMapper, com.atlassian.event.api.EventPublisher eventPublisher, com.atlassian.crowd.embedded.spi.DirectoryDao directoryDao) Spring-friendly constructor. -
Method Summary
Modifier and TypeMethodDescriptionbooleangetDirectory(Directory directory) This method will NOT wire up the internal backed directory.
-
Field Details
-
auditService
-
auditLogUserMapper
protected final com.atlassian.crowd.manager.audit.mapper.AuditLogUserMapper auditLogUserMapper -
auditLogGroupMapper
protected final com.atlassian.crowd.manager.audit.mapper.AuditLogGroupMapper auditLogGroupMapper
-
-
Constructor Details
-
DbCachingRemoteDirectoryInstanceLoader
public DbCachingRemoteDirectoryInstanceLoader(DirectoryInstanceLoader remoteDirectoryInstanceLoader, InternalDirectoryInstanceLoader internalDirectoryInstanceLoader, DirectoryCacheFactory directoryCacheFactory, CacheRefresherFactory cacheRefresherFactory, AuditService auditService, com.atlassian.crowd.manager.audit.mapper.AuditLogUserMapper auditLogUserMapper, com.atlassian.crowd.manager.audit.mapper.AuditLogGroupMapper auditLogGroupMapper, com.atlassian.event.api.EventPublisher eventPublisher, com.atlassian.crowd.embedded.spi.DirectoryDao directoryDao) Spring-friendly constructor.- Parameters:
remoteDirectoryInstanceLoader- the remote directory instance loader.internalDirectoryInstanceLoader- the internal directory in which to do the cachingcacheRefresherFactory- cache refresher factory
-
-
Method Details
-
getDirectory
- Specified by:
getDirectoryin interfaceDirectoryInstanceLoader- Overrides:
getDirectoryin classAbstractDirectoryInstanceLoader- Throws:
DirectoryInstantiationException
-
getRawDirectory
public RemoteDirectory getRawDirectory(Long id, String className, Map<String, String> attributes) throws DirectoryInstantiationExceptionThis method will NOT wire up the internal backed directory.So no local groups or custom attributes.
- Specified by:
getRawDirectoryin interfaceDirectoryInstanceLoader- Parameters:
id- Directory IDclassName- class name of directory.attributes- the configuration attributes to pass to the RemoteDirectory- Returns:
- directory without monitoring/caching and without backing internal directory.
- Throws:
DirectoryInstantiationException
-
canLoad
- Specified by:
canLoadin interfaceDirectoryInstanceLoader
-