Spring LDAP Framework

org.springframework.ldap.test
Class LdapTestUtils

java.lang.Object
  extended by org.springframework.ldap.test.LdapTestUtils

public class LdapTestUtils
extends Object

Utilities for starting, stopping and populating an in-process Apache Directory Server to use for integration testing purposes.

Author:
Mattias Hellborg Arthursson

Field Summary
static String DEFAULT_PASSWORD
           
static String DEFAULT_PRINCIPAL
           
 
Method Summary
static void cleanAndSetup(ContextSource contextSource, DistinguishedName rootNode, Resource ldifFile)
           
static void clearSubContexts(ContextSource contextSource, Name name)
          Clear the directory sub-tree starting with the node represented by the supplied distinguished name.
static void clearSubContexts(DirContext ctx, Name name)
          Clear the directory sub-tree starting with the node represented by the supplied distinguished name.
static void destroyApacheDirectoryServer(String principal, String credentials)
          Shut down the in-process Apache Directory Server.
static void loadLdif(ContextSource contextSource, Resource ldifFile)
          Load an Ldif file into an LDAP server.
static DirContext startApacheDirectoryServer(int port, String defaultPartitionSuffix, String defaultPartitionName, String principal, String credentials)
           
static DirContext startApacheDirectoryServer(int port, String defaultPartitionSuffix, String defaultPartitionName, String principal, String credentials, Set extraSchemas)
          Start an in-process Apache Directory Server.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_PRINCIPAL

public static final String DEFAULT_PRINCIPAL
See Also:
Constant Field Values

DEFAULT_PASSWORD

public static final String DEFAULT_PASSWORD
See Also:
Constant Field Values
Method Detail

startApacheDirectoryServer

public static DirContext startApacheDirectoryServer(int port,
                                                    String defaultPartitionSuffix,
                                                    String defaultPartitionName,
                                                    String principal,
                                                    String credentials,
                                                    Set extraSchemas)
                                             throws NamingException
Start an in-process Apache Directory Server.

Parameters:
port - the port on which the server will be listening.
defaultPartitionSuffix - The default base suffix that will be used for the LDAP server.
defaultPartitionName - The name to use in the directory server configuration for the default base suffix.
principal - The principal to use when starting the directory server.
credentials - The credentials to use when starting the directory server.
extraSchemas - Set of extra schemas to add to the bootstrap schemas of ApacheDS. May be null.
Returns:
A DirContext to be used for working against the started directory server.
Throws:
NamingException - If anything goes wrong when starting the server.

startApacheDirectoryServer

public static DirContext startApacheDirectoryServer(int port,
                                                    String defaultPartitionSuffix,
                                                    String defaultPartitionName,
                                                    String principal,
                                                    String credentials)
                                             throws NamingException
Throws:
NamingException

destroyApacheDirectoryServer

public static void destroyApacheDirectoryServer(String principal,
                                                String credentials)
                                         throws Exception
Shut down the in-process Apache Directory Server.

Parameters:
principal - the principal to be used for authentication.
credentials - the credentials to be used for authentication.
Throws:
Exception - If anything goes wrong when shutting down the server.

clearSubContexts

public static void clearSubContexts(ContextSource contextSource,
                                    Name name)
                             throws NamingException
Clear the directory sub-tree starting with the node represented by the supplied distinguished name.

Parameters:
contextSource - the ContextSource to use for getting a DirContext.
name - the distinguished name of the root node.
Throws:
NamingException - if anything goes wrong removing the sub-tree.

clearSubContexts

public static void clearSubContexts(DirContext ctx,
                                    Name name)
                             throws NamingException
Clear the directory sub-tree starting with the node represented by the supplied distinguished name.

Parameters:
ctx - The DirContext to use for cleaning the tree.
name - the distinguished name of the root node.
Throws:
NamingException - if anything goes wrong removing the sub-tree.

loadLdif

public static void loadLdif(ContextSource contextSource,
                            Resource ldifFile)
                     throws IOException
Load an Ldif file into an LDAP server.

Parameters:
contextSource - ContextSource to use for getting a DirContext to interact with the LDAP server.
ldifFile - a Resource representing a valid LDIF file.
Throws:
IOException - if the Resource cannot be read.

cleanAndSetup

public static void cleanAndSetup(ContextSource contextSource,
                                 DistinguishedName rootNode,
                                 Resource ldifFile)
                          throws NamingException,
                                 IOException
Throws:
NamingException
IOException

Spring LDAP Framework

Copyright © 2005-2010 The Spring LDAP Framework. All Rights Reserved.