com.atlassian.crowd.directory.loader
Class LDAPDirectoryInstanceLoaderImpl

java.lang.Object
  extended by com.atlassian.crowd.directory.loader.CachingDirectoryInstanceLoader
      extended by com.atlassian.crowd.directory.loader.LDAPDirectoryInstanceLoaderImpl
All Implemented Interfaces:
DirectoryInstanceLoader, LDAPDirectoryInstanceLoader

public class LDAPDirectoryInstanceLoaderImpl
extends CachingDirectoryInstanceLoader
implements LDAPDirectoryInstanceLoader

Loads an implementation of a RemoteDirectory for use at runtime by the Crowd security server.


Constructor Summary
LDAPDirectoryInstanceLoaderImpl(InstanceFactory instanceFactory, com.atlassian.event.api.EventPublisher eventPublisher)
           
 
Method Summary
 boolean canLoad(java.lang.String className)
           
protected  RemoteDirectory getNewDirectory(Directory directory)
          Always returns a new instance of a RemoteDirectory.
 RemoteDirectory getRawDirectory(java.lang.Long id, java.lang.String className, java.util.Map<java.lang.String,java.lang.String> attributes)
          Loads a guaranteed un-cached directory implementation for a specific configuration.
 
Methods inherited from class com.atlassian.crowd.directory.loader.CachingDirectoryInstanceLoader
getDirectory, getEventPublisher, handleEvent, handleEvent, handleEvent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.atlassian.crowd.directory.loader.DirectoryInstanceLoader
getDirectory
 

Constructor Detail

LDAPDirectoryInstanceLoaderImpl

public LDAPDirectoryInstanceLoaderImpl(InstanceFactory instanceFactory,
                                       com.atlassian.event.api.EventPublisher eventPublisher)
Method Detail

getNewDirectory

protected RemoteDirectory getNewDirectory(Directory directory)
                                   throws DirectoryInstantiationException
Always returns a new instance of a RemoteDirectory.

Specified by:
getNewDirectory in class CachingDirectoryInstanceLoader
Parameters:
directory - directory configuration
Returns:
new instance of a RemoteDirectory
Throws:
DirectoryInstantiationException - if the directory could not be instantiated.

getRawDirectory

public RemoteDirectory getRawDirectory(java.lang.Long id,
                                       java.lang.String className,
                                       java.util.Map<java.lang.String,java.lang.String> attributes)
                                throws DirectoryInstantiationException
Description copied from interface: DirectoryInstanceLoader
Loads a guaranteed un-cached directory implementation for a specific configuration.

Specified by:
getRawDirectory in interface DirectoryInstanceLoader
Parameters:
id - Directory ID
className - class name of directory.
attributes - the configuration attributes to pass to the RemoteDirectory
Returns:
The loaded RemoteDirectory implementation.
Throws:
DirectoryInstantiationException - if a RemoteDirectory implementation can not be loaded.

canLoad

public boolean canLoad(java.lang.String className)
Specified by:
canLoad in interface DirectoryInstanceLoader
Parameters:
className - class name of directory.
Returns:
true iff the directory can load the directory of the specified class.


Copyright © 2011 Atlassian. All Rights Reserved.