com.atlassian.crowd.directory.loader
Interface DirectoryInstanceLoader

All Known Subinterfaces:
DelegatedAuthenticationDirectoryInstanceLoader, InternalDirectoryInstanceLoader, InternalHybridDirectoryInstanceLoader, LDAPDirectoryInstanceLoader, RemoteCrowdDirectoryInstanceLoader
All Known Implementing Classes:
CacheableDirectoryInstanceLoader, CachingDirectoryInstanceLoader, CustomDirectoryInstanceLoader, DbCachingRemoteDirectoryInstanceLoaderImpl, DelegatedAuthenticationDirectoryInstanceLoaderImpl, DelegatingDirectoryInstanceLoader, InternalDirectoryInstanceLoaderImpl, LDAPDirectoryInstanceLoaderImpl, RemoteCrowdDirectoryInstanceLoaderImpl

public interface DirectoryInstanceLoader

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


Method Summary
 boolean canLoad(String className)
           
 RemoteDirectory getDirectory(Directory directory)
          Loads the RemoteDirectory implementation class for a specific (already saved) Directory configuration.
 RemoteDirectory getRawDirectory(Long id, String className, Map<String,String> attributes)
          Loads a guaranteed un-cached directory implementation for a specific configuration.
 

Method Detail

getDirectory

RemoteDirectory getDirectory(Directory directory)
                             throws DirectoryInstantiationException
Loads the RemoteDirectory implementation class for a specific (already saved) Directory configuration.

Implementations of this method may choose to cache the RemoteDirectory, so this must only be called for Directories that have been successfully saved.

Parameters:
directory - The directory to load the RemoteDirectory implementation from.
Returns:
The RemoteDirectory loaded implementation.
Throws:
DirectoryInstantiationException - If the RemoteDirectory implementation could not be loaded.

getRawDirectory

RemoteDirectory getRawDirectory(Long id,
                                String className,
                                Map<String,String> attributes)
                                throws DirectoryInstantiationException
Loads a guaranteed un-cached directory implementation for a specific configuration.

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

boolean canLoad(String className)
Parameters:
className - class name of directory.
Returns:
true iff the directory can load the directory of the specified class.


Copyright © 2012 Atlassian. All Rights Reserved.