You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by el...@apache.org on 2006/11/23 15:08:14 UTC

svn commit: r478579 - in /directory/sandbox/nhope/trunks: apacheds/ apacheds/core-unit/src/main/java/org/apache/directory/server/core/unit/ apacheds/core/ apacheds/core/src/main/java/org/apache/directory/server/core/ apacheds/core/src/main/java/org/apa...

Author: elecharny
Date: Thu Nov 23 06:08:13 2006
New Revision: 478579

URL: http://svn.apache.org/viewvc?view=rev&rev=478579
Log:
Reapplied Norval's patches to have something that compile

Modified:
    directory/sandbox/nhope/trunks/apacheds/core-unit/src/main/java/org/apache/directory/server/core/unit/AbstractTestCase.java
    directory/sandbox/nhope/trunks/apacheds/core/pom.xml
    directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/DefaultDirectoryService.java
    directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/ConfigurationUtil.java
    directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/MutableStartupConfiguration.java
    directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/StartupConfiguration.java
    directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/AttributeTypeRegistry.java
    directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/bootstrap/SystemNormalizerProducer.java
    directory/sandbox/nhope/trunks/apacheds/pom.xml
    directory/sandbox/nhope/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/MultiException.java
    directory/sandbox/nhope/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/RuntimeMultiException.java
    directory/sandbox/nhope/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/ldif/LdifReader.java
    directory/sandbox/nhope/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/name/LdapDnParser.java
    directory/sandbox/nhope/trunks/shared/ldap/src/test/java/org/apache/directory/shared/ldap/name/DnParserDIRSERVER_584_Test.java
    directory/sandbox/nhope/trunks/shared/ldap/src/test/java/org/apache/directory/shared/ldap/name/LdapDNTest.java

Modified: directory/sandbox/nhope/trunks/apacheds/core-unit/src/main/java/org/apache/directory/server/core/unit/AbstractTestCase.java
URL: http://svn.apache.org/viewvc/directory/sandbox/nhope/trunks/apacheds/core-unit/src/main/java/org/apache/directory/server/core/unit/AbstractTestCase.java?view=diff&rev=478579&r1=478578&r2=478579
==============================================================================
--- directory/sandbox/nhope/trunks/apacheds/core-unit/src/main/java/org/apache/directory/server/core/unit/AbstractTestCase.java (original)
+++ directory/sandbox/nhope/trunks/apacheds/core-unit/src/main/java/org/apache/directory/server/core/unit/AbstractTestCase.java Thu Nov 23 06:08:13 2006
@@ -86,7 +86,7 @@
     protected MutableStartupConfiguration configuration = new MutableStartupConfiguration();
 
     /** A testEntries of entries as Attributes to add to the DIT for testing */
-    protected List testEntries = new ArrayList();
+    protected List<Entry> testEntries = new ArrayList<Entry>();
 
     /** An optional LDIF file path if set and present is read to add more test entries */
     private String ldifPath;
@@ -151,9 +151,9 @@
 
         LdifReader reader = new LdifReader();
         
-    	List entries = reader.parseLdif( LDIF );
+        List<Entry> entries = reader.parseLdif( LDIF );
         
-        Entry entry = (Entry)entries.get(0);
+        Entry entry = entries.get(0);
 
         testEntries.add( entry );
 

Modified: directory/sandbox/nhope/trunks/apacheds/core/pom.xml
URL: http://svn.apache.org/viewvc/directory/sandbox/nhope/trunks/apacheds/core/pom.xml?view=diff&rev=478579&r1=478578&r2=478579
==============================================================================
--- directory/sandbox/nhope/trunks/apacheds/core/pom.xml (original)
+++ directory/sandbox/nhope/trunks/apacheds/core/pom.xml Thu Nov 23 06:08:13 2006
@@ -34,6 +34,11 @@
       <artifactId>apacheds-core-shared</artifactId>
       <version>${pom.version}</version>
     </dependency>
+    <dependency>
+      <groupId>org.apache.directory.server</groupId>
+      <artifactId>apacheds-core-plugin</artifactId>
+      <version>${pom.version}</version>
+    </dependency>
   </dependencies>
   <build>
     <plugins>

Modified: directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/DefaultDirectoryService.java
URL: http://svn.apache.org/viewvc/directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/DefaultDirectoryService.java?view=diff&rev=478579&r1=478578&r2=478579
==============================================================================
--- directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/DefaultDirectoryService.java (original)
+++ directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/DefaultDirectoryService.java Thu Nov 23 06:08:13 2006
@@ -22,6 +22,7 @@
 
 import java.util.Hashtable;
 import java.util.Iterator;
+import java.util.List;
 import java.util.Map;
 import java.util.Set;
 import java.util.HashSet;
@@ -57,6 +58,7 @@
 import org.apache.directory.shared.ldap.schema.AttributeType;
 import org.apache.directory.shared.ldap.util.DateUtils;
 import org.apache.directory.shared.ldap.util.StringTools;
+import org.apache.directory.server.core.configuration.SchemaLoader;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -526,7 +528,11 @@
 
             partitionNexus.add(normName, attributes );
             AuthorizationService authzSrvc = ( AuthorizationService ) interceptorChain.get( "authorizationService" );
-            authzSrvc.cacheNewGroup( upName, normName, attributes );
+            
+            if (authzSrvc != null)
+            {
+                authzSrvc.cacheNewGroup( upName, normName, attributes );
+            }
         }
 
         // -------------------------------------------------------------------
@@ -726,7 +732,7 @@
      *
      * @throws javax.naming.NamingException if there are problems along the way
      */
-    private void initialize() throws NamingException
+    protected void initialize() throws NamingException
     {
         if ( log.isDebugEnabled() )
         {
@@ -740,8 +746,17 @@
         BootstrapRegistries bootstrapRegistries = new BootstrapRegistries();
         BootstrapSchemaLoader loader = new BootstrapSchemaLoader();
         loader.load( startupConfiguration.getBootstrapSchemas(), bootstrapRegistries );
+        
+        if (startupConfiguration.getSchemaLoaders() != null)
+        {
+            for ( SchemaLoader schemaLoader:startupConfiguration.getSchemaLoaders() )
+            {
+               schemaLoader.loadSchemas(startupConfiguration, bootstrapRegistries);
+            }
+        }
 
-        java.util.List errors = bootstrapRegistries.checkRefInteg();
+        List errors = bootstrapRegistries.checkRefInteg();
+        
         if ( !errors.isEmpty() )
         {
             NamingException e = new NamingException();
@@ -752,7 +767,8 @@
         }
 
         globalRegistries = new GlobalRegistries( bootstrapRegistries );
-        Set binaries = new HashSet();
+        Set<String> binaries = new HashSet<String>();
+        
         if ( this.environment.containsKey( BINARY_KEY ) )
         {
             if ( log.isInfoEnabled() )

Modified: directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/ConfigurationUtil.java
URL: http://svn.apache.org/viewvc/directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/ConfigurationUtil.java?view=diff&rev=478579&r1=478578&r2=478579
==============================================================================
--- directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/ConfigurationUtil.java (original)
+++ directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/ConfigurationUtil.java Thu Nov 23 06:08:13 2006
@@ -23,7 +23,6 @@
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.HashSet;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Set;
 
@@ -43,12 +42,20 @@
     /**
      * Checks all elements of the specified set is of the specified type,
      * and returns cloned set.
+     * and returns a cloned set. The objects are *not* cloned
+     *
+     * @param set The set we want to check and to clone. All the members of this set
+     * must be instances of the <code>type</code> parameter
+     * @param type The Class which each elements of the set should be instance of.
+     * 
+     * @return A cloned set of checked objects.
      * 
      * @throws ConfigurationException if the specified set has an element of wrong type
      */
-    public static Set getTypeSafeSet( Set set, Class type )
+    public static <T extends Object> Set<T> getTypeSafeSet( Set<T> set, Class<T> type )
     {
-        Set newSet = new HashSet();
+        // Note : we can't use the clone() method on Set<T> instances ...
+        Set<T> newSet = new HashSet<T>();
         getTypeSafeCollection( set, type, newSet );
         return newSet;
     }
@@ -56,50 +63,71 @@
 
     /**
      * Checks all elements of the specified list is of the specified type,
-     * and returns cloned list.
+     * and returns a cloned list.  The objects are *not* cloned
      * 
-     * @throws ConfigurationException if the specified set has an element of wrong type
+     * @param list The list we want to check and to clone. All the members of this list
+     * must be instances of the <code>type</code> parameter
+     * @param type The Class which each elements of the list should be instance of.
+     *
+     * @return A cloned list of checked objects.
+     *
+     * @throws ConfigurationException if the specified list has an element of wrong type
      */
-    public static List getTypeSafeList( List list, Class type )
+    public static <T extends Object> List<T> getTypeSafeList( List<T> list, Class<T> type )
     {
-        List newList = new ArrayList();
+        // Note : we can't use the clone() method on List<T> instances ...
+        List<T> newList = new ArrayList<T>();
         getTypeSafeCollection( list, type, newList );
         return newList;
     }
 
 
-    public static void getTypeSafeCollection( Collection collection, Class type, Collection newCollection )
+    /**
+     * An intern method which check the type of each object into a collection
+     * before copying them into a new collection
+     */
+    private static <T extends Object> void getTypeSafeCollection( Collection<T> collection, Class<T> type, Collection<T> newCollection )
     {
-        Iterator i = collection.iterator();
-        while ( i.hasNext() )
+        for ( T object:collection )
         {
-            Object e = i.next();
-            if ( !type.isAssignableFrom( e.getClass() ) )
+            if ( !type.isAssignableFrom( object.getClass() ) )
             {
-                throw new ConfigurationException( "Invalid element type: " + e.getClass() + " (expected " + type );
+                throw new ConfigurationException( "Invalid element type: " + object.getClass() + " (expected " + type + ")" );
             }
-            newCollection.add( e );
+            
+            newCollection.add( object );
         }
     }
 
 
     /**
      * Returns the clone of the specified set.
+     *
+     * @param set The set we want to clone.
+     *
+     * @return A cloned Set
      */
-    public static Set getClonedSet( Set set )
+    public static <T extends Object> Set<T> getClonedSet( Set<T> set )
     {
-        Set newSet = new HashSet();
-        newSet.addAll( set );
+        // Note : we can't use the clone() method on List<T> instances ...
+        Set<T> newSet = new HashSet<T>();
+
         return newSet;
     }
 
 
     /**
      * Returns the clone of the specified list.
+     *
+     * @param list The list we want to clone.
+     *
+     * @return A cloned list
      */
-    public static List getClonedList( List list )
+    public static <T extends Object>List<T> getClonedList( List<T> list )
     {
-        List newList = new ArrayList();
+        // Note : we can't use the clone() method on List<T> instances ...
+        List<T> newList = new ArrayList<T>();
+
         newList.addAll( list );
         return newList;
     }
@@ -107,16 +135,20 @@
 
     /**
      * Returns the deep clone of the specified {@link Attributes} list.
+     *
+     * @param list The list we want to clone.
+     *
+     * @return A cloned list of attributes. Attributes themselves are *not* cloned.
      */
-    public static List getClonedAttributesList( List list ) throws CloneNotSupportedException
+    public static List<Entry> getClonedAttributesList( List<Entry> list ) throws CloneNotSupportedException
     {
-        List newList = new ArrayList();
-        Iterator i = list.iterator();
+        List<Entry> newList = new ArrayList<Entry>();
         
-        while ( i.hasNext() )
+        for ( Entry entry:list )
         {
-            newList.add( ( ( Entry ) i.next() ).clone() );
+            newList.add( entry );
         }
+        
         return newList;
     }
 
@@ -124,6 +156,8 @@
     /**
      * Throws a {@link ConfigurationException} if the specified port number
      * is out of range.
+     *
+     * @param port The port to validate
      */
     public static void validatePortNumber( int port )
     {
@@ -132,9 +166,4 @@
             throw new ConfigurationException( "Invalid port number: " + port );
         }
     }
-
-
-    private ConfigurationUtil()
-    {
-    }
-}
+}
\ No newline at end of file

Modified: directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/MutableStartupConfiguration.java
URL: http://svn.apache.org/viewvc/directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/MutableStartupConfiguration.java?view=diff&rev=478579&r1=478578&r2=478579
==============================================================================
--- directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/MutableStartupConfiguration.java (original)
+++ directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/MutableStartupConfiguration.java Thu Nov 23 06:08:13 2006
@@ -25,6 +25,7 @@
 import java.util.Set;
 
 import org.apache.directory.server.core.DirectoryService;
+import org.apache.directory.shared.ldap.ldif.Entry;
 
 
 /**
@@ -122,7 +123,7 @@
     }
 
 
-    public void setTestEntries( List testEntries )
+    public void setTestEntries( List<Entry> testEntries )
     {
         super.setTestEntries( testEntries );
     }

Modified: directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/StartupConfiguration.java
URL: http://svn.apache.org/viewvc/directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/StartupConfiguration.java?view=diff&rev=478579&r1=478578&r2=478579
==============================================================================
--- directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/StartupConfiguration.java (original)
+++ directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/StartupConfiguration.java Thu Nov 23 06:08:13 2006
@@ -78,12 +78,26 @@
     private int maxThreads = MAX_THREADS_DEFAULT; // set to default value
     private int maxSizeLimit = MAX_SIZE_LIMIT_DEFAULT; // set to default value
     private int maxTimeLimit = MAX_TIME_LIMIT_DEFAULT; // set to default value (milliseconds)
-    private Set authenticatorConfigurations; // Set<AuthenticatorConfiguration>
-    private List interceptorConfigurations; // Set<InterceptorConfiguration>
+    
+    /** The set of authentication configurations */
+    private Set<AuthenticatorConfiguration> authenticatorConfigurations;
+    
+    /** A list of interceptors in the chain */
+    private List<InterceptorConfiguration> interceptorConfigurations;
+    
     private PartitionConfiguration systemPartitionConfiguration; 
-    private Set bootstrapSchemas; // Set<BootstrapSchema>
-    private Set contextPartitionConfigurations = new HashSet(); // Set<ContextPartitionConfiguration>
-    private List testEntries = new ArrayList(); // List<Attributes>
+    
+    /** A list of schema loaders */
+    private List<SchemaLoader> schemaLoaders;
+
+    /** A set of BootstrapSchema */
+    private Set<BootstrapSchema> bootstrapSchemas;
+
+    /** A set of context partition configurations */
+    private Set<PartitionConfiguration> contextPartitionConfigurations = new HashSet<PartitionConfiguration>();
+
+    /** A list of entries to load at startup */
+    private List<Entry> testEntries = new ArrayList<Entry>();
 
 
     /**
@@ -110,12 +124,13 @@
     }
 
 
+    /**
+     * Define the default authenticator configuration.
+     */
     private void setDefaultAuthenticatorConfigurations()
     {
-        Set set;
-
         // Set default authenticator configurations
-        set = new HashSet();
+        Set<AuthenticatorConfiguration> set = new HashSet<AuthenticatorConfiguration>();
 
         MutableAuthenticatorConfiguration authCfg;
 
@@ -135,11 +150,13 @@
     }
 
 
+    /**
+     * Define the default schemas
+     */
     private void setDefaultBootstrapSchemas()
     {
-        Set set;
         // Set default bootstrap schemas
-        set = new HashSet();
+        Set<BootstrapSchema> set = new HashSet<BootstrapSchema>();
 
         set.add( new CoreSchema() );
         set.add( new CosineSchema() );
@@ -153,13 +170,15 @@
     }
 
 
+    /**
+     * Set the default interceptors chain
+     */
     private void setDefaultInterceptorConfigurations()
     {
         // Set default interceptor chains
-        InterceptorConfiguration interceptorCfg;
-        List list = new ArrayList();
+        List<InterceptorConfiguration> list = new ArrayList<InterceptorConfiguration>();
 
-        interceptorCfg = new MutableInterceptorConfiguration();
+        InterceptorConfiguration interceptorCfg = new MutableInterceptorConfiguration();
         interceptorCfg.setName( "normalizationService" );
         interceptorCfg.setInterceptor( new NormalizationService() );
         list.add( interceptorCfg );
@@ -226,7 +245,7 @@
     /**
      * Returns {@link AuthenticatorConfiguration}s to use for authenticating clients.
      */
-    public Set getAuthenticatorConfigurations()
+    public Set<AuthenticatorConfiguration> getAuthenticatorConfigurations()
     {
         return ConfigurationUtil.getClonedSet( authenticatorConfigurations );
     }
@@ -235,33 +254,50 @@
     /**
      * Sets {@link AuthenticatorConfiguration}s to use for authenticating clients.
      */
-    protected void setAuthenticatorConfigurations( Set authenticatorConfigurations )
+    protected void setAuthenticatorConfigurations( Set<AuthenticatorConfiguration> authenticatorConfigurations )
     {
-        Set newSet = ConfigurationUtil.getTypeSafeSet( authenticatorConfigurations, AuthenticatorConfiguration.class );
-
-        Set names = new HashSet();
-        Iterator i = newSet.iterator();
-        while ( i.hasNext() )
+        Set<AuthenticatorConfiguration> newSet = ConfigurationUtil.getTypeSafeSet( authenticatorConfigurations, AuthenticatorConfiguration.class );
+        Set<String> names = new HashSet<String>();
+        
+        for ( AuthenticatorConfiguration cfg:newSet )
         {
-            AuthenticatorConfiguration cfg = ( AuthenticatorConfiguration ) i.next();
             cfg.validate();
 
             String name = cfg.getName();
+            
             if ( names.contains( name ) )
             {
                 throw new ConfigurationException( "Duplicate authenticator name: " + name );
             }
+            
             names.add( name );
         }
 
         this.authenticatorConfigurations = newSet;
     }
 
+    /**
+     *   An optional list of {@link SchemaLoader}s which can be specified to load schemas dynamically at server-startup.
+     *
+     * @return  The loader bean, if one has been configured.
+     */
+    public List<SchemaLoader> getSchemaLoaders()
+    {
+        return schemaLoaders;
+    }
+    
+    /**
+     * @param schemaLoaders Set a list of schemaLoader elements
+     */
+    public void setSchemaLoaders( List<SchemaLoader> schemaLoaders )
+    {
+        this.schemaLoaders = schemaLoaders;
+    }
 
     /**
      * Returns {@link BootstrapSchema}s to load while bootstrapping.
      */
-    public Set getBootstrapSchemas()
+    public Set<BootstrapSchema> getBootstrapSchemas()
     {
         return ConfigurationUtil.getClonedSet( bootstrapSchemas );
     }
@@ -270,7 +306,7 @@
     /**
      * Sets {@link BootstrapSchema}s to load while bootstrapping.
      */
-    protected void setBootstrapSchemas( Set bootstrapSchemas )
+    protected void setBootstrapSchemas( Set<BootstrapSchema> bootstrapSchemas )
     {
         this.bootstrapSchemas = ConfigurationUtil.getTypeSafeSet( bootstrapSchemas, BootstrapSchema.class );
     }
@@ -279,7 +315,7 @@
     /**
      * Returns {@link PartitionConfiguration}s to configure context partitions.
      */
-    public Set getContextPartitionConfigurations()
+    public Set<PartitionConfiguration> getContextPartitionConfigurations()
     {
         return ConfigurationUtil.getClonedSet( contextPartitionConfigurations );
     }
@@ -288,23 +324,24 @@
     /**
      * Sets {@link PartitionConfiguration}s to configure context partitions.
      */
-    protected void setContextPartitionConfigurations( Set contextParitionConfigurations )
+    protected void setContextPartitionConfigurations( Set<PartitionConfiguration> contextPartitionConfigurations )
     {
-        Set newSet = ConfigurationUtil.getTypeSafeSet( contextParitionConfigurations,
+        Set<PartitionConfiguration> newSet = ConfigurationUtil.getTypeSafeSet( contextPartitionConfigurations,
             PartitionConfiguration.class );
 
-        Set names = new HashSet();
-        Iterator i = newSet.iterator();
-        while ( i.hasNext() )
+        Set<String> names = new HashSet<String>();
+        
+        for ( PartitionConfiguration cfg:newSet )
         {
-            PartitionConfiguration cfg = ( PartitionConfiguration ) i.next();
             cfg.validate();
 
             String name = cfg.getName();
+            
             if ( names.contains( name ) )
             {
                 throw new ConfigurationException( "Duplicate partition name: " + name );
             }
+            
             names.add( name );
         }
 
@@ -351,7 +388,7 @@
     /**
      * Returns interceptor chain.
      */
-    public List getInterceptorConfigurations()
+    public List<InterceptorConfiguration> getInterceptorConfigurations()
     {
         return ConfigurationUtil.getClonedList( interceptorConfigurations );
     }
@@ -360,22 +397,23 @@
     /**
      * Sets interceptor chain.
      */
-    protected void setInterceptorConfigurations( List interceptorConfigurations )
+    protected void setInterceptorConfigurations( List<InterceptorConfiguration> interceptorConfigurations )
     {
-        List newList = ConfigurationUtil.getTypeSafeList( interceptorConfigurations, InterceptorConfiguration.class );
+        List<InterceptorConfiguration> newList = ConfigurationUtil.getTypeSafeList( interceptorConfigurations, InterceptorConfiguration.class );
 
-        Set names = new HashSet();
-        Iterator i = newList.iterator();
-        while ( i.hasNext() )
+        Set<String> names = new HashSet<String>();
+        
+        for ( InterceptorConfiguration cfg:newList )
         {
-            InterceptorConfiguration cfg = ( InterceptorConfiguration ) i.next();
             cfg.validate();
 
             String name = cfg.getName();
+            
             if ( names.contains( name ) )
             {
                 throw new ConfigurationException( "Duplicate interceptor name: " + name );
             }
+            
             names.add( name );
         }
 
@@ -387,7 +425,7 @@
      * Returns test directory entries({@link Attributes}) to be loaded while
      * bootstrapping.
      */
-    public List getTestEntries()
+    public List<Entry> getTestEntries()
     {
     	try
     	{
@@ -404,7 +442,7 @@
      * Sets test directory entries({@link Attributes}) to be loaded while
      * bootstrapping.
      */
-    protected void setTestEntries( List testEntries )
+    protected void setTestEntries( List<Entry> testEntries )
     {
     	try
     	{
@@ -471,6 +509,7 @@
     protected void setMaxThreads( int maxThreads )
     {
         this.maxThreads = maxThreads;
+        
         if ( maxThreads < 1 )
         {
             throw new IllegalArgumentException( "Number of max threads should be greater than 0" );

Modified: directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/AttributeTypeRegistry.java
URL: http://svn.apache.org/viewvc/directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/AttributeTypeRegistry.java?view=diff&rev=478579&r1=478578&r2=478579
==============================================================================
--- directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/AttributeTypeRegistry.java (original)
+++ directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/AttributeTypeRegistry.java Thu Nov 23 06:08:13 2006
@@ -26,6 +26,7 @@
 import javax.naming.NamingException;
 
 import org.apache.directory.shared.ldap.schema.AttributeType;
+import org.apache.directory.shared.ldap.schema.OidNormalizer;
 
 
 /**
@@ -90,7 +91,8 @@
      * Gets an oid/name to normalizer mapping used to normalize distinguished 
      * names.
      */
-    Map getNormalizerMapping() throws NamingException; 
+    Map<String, OidNormalizer> getNormalizerMapping() throws NamingException;
+
     
     /**
      * Quick lookup to see if an attribute has descendants.

Modified: directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/bootstrap/SystemNormalizerProducer.java
URL: http://svn.apache.org/viewvc/directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/bootstrap/SystemNormalizerProducer.java?view=diff&rev=478579&r1=478578&r2=478579
==============================================================================
--- directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/bootstrap/SystemNormalizerProducer.java (original)
+++ directory/sandbox/nhope/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/bootstrap/SystemNormalizerProducer.java Thu Nov 23 06:08:13 2006
@@ -132,7 +132,7 @@
         cb.schemaObjectProduced( this, "2.5.13.14", normalizer );
 
         /*
-         ( 2.5.13.14 NAME 'integerOrderingMatch'
+         ( 2.5.13.15 NAME 'integerOrderingMatch'
          SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )
          */
         normalizer = new NoOpNormalizer();

Modified: directory/sandbox/nhope/trunks/apacheds/pom.xml
URL: http://svn.apache.org/viewvc/directory/sandbox/nhope/trunks/apacheds/pom.xml?view=diff&rev=478579&r1=478578&r2=478579
==============================================================================
--- directory/sandbox/nhope/trunks/apacheds/pom.xml (original)
+++ directory/sandbox/nhope/trunks/apacheds/pom.xml Thu Nov 23 06:08:13 2006
@@ -236,7 +236,7 @@
         <module>server-jndi</module>
         <module>kerberos-shared</module>
 
-        <module>mitosis</module>
+        <!-- module>mitosis</module -->
 
         <!-- extra for jdk 1.5 -->
         <module>server-ssl</module>

Modified: directory/sandbox/nhope/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/MultiException.java
URL: http://svn.apache.org/viewvc/directory/sandbox/nhope/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/MultiException.java?view=diff&rev=478579&r1=478578&r2=478579
==============================================================================
--- directory/sandbox/nhope/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/MultiException.java (original)
+++ directory/sandbox/nhope/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/MultiException.java Thu Nov 23 06:08:13 2006
@@ -39,7 +39,7 @@
     static final long serialVersionUID = 2889747406899775761L;
 
     /** Collection of nested exceptions. */
-    private Collection m_nestedExceptions = new ArrayList();
+    private Collection<Throwable> nestedExceptions = new ArrayList<Throwable>();
 
 
     /**
@@ -54,12 +54,12 @@
     /**
      * Constructs an Exception with a detailed message.
      * 
-     * @param a_message
+     * @param message
      *            The message associated with the exception.
      */
-    public MultiException(String a_message)
+    public MultiException(String message)
     {
-        super( a_message );
+        super( message );
     }
 
 
@@ -68,9 +68,9 @@
      * 
      * @return an Iterator over the nested exceptions.
      */
-    public Iterator listNestedExceptions()
+    public Iterator<Throwable> listNestedExceptions()
     {
-        return m_nestedExceptions.iterator();
+        return nestedExceptions.iterator();
     }
 
 
@@ -82,7 +82,7 @@
      */
     public int size()
     {
-        return m_nestedExceptions.size();
+        return nestedExceptions.size();
     }
 
 
@@ -94,19 +94,19 @@
      */
     public boolean isEmpty()
     {
-        return m_nestedExceptions.isEmpty();
+        return nestedExceptions.isEmpty();
     }
 
 
     /**
      * Add an exeception to this multiexception.
      * 
-     * @param a_nested
+     * @param nested
      *            exception to add to this MultiException.
      */
-    public void addThrowable( Throwable a_nested )
+    public void addThrowable( Throwable nested )
     {
-        this.m_nestedExceptions.add( a_nested );
+        nestedExceptions.add( nested );
     }
 
 
@@ -118,28 +118,29 @@
      * Beside printing out the standard stack trace this method prints out the
      * stack traces of all the nested exceptions.
      * 
-     * @param an_out
+     * @param out
      *            PrintWriter to write the nested stack trace to.
      */
-    public void printStackTrace( PrintWriter an_out )
+    public void printStackTrace( PrintWriter out )
     {
-        super.printStackTrace( an_out );
+        super.printStackTrace( out );
 
-        an_out.println( "Nested exceptions to follow:\n" );
-        Iterator l_list = listNestedExceptions();
-        Throwable l_throwable = null;
-        while ( l_list.hasNext() )
+        out.println( "Nested exceptions to follow:\n" );
+        
+        boolean isFirst = true;
+        
+        for ( Throwable throwable:nestedExceptions )
         {
-            l_throwable = ( Throwable ) l_list.next();
-            l_throwable.printStackTrace();
-            if ( l_list.hasNext() )
+            if ( isFirst )
             {
-                an_out.println( "\n\t<<========= Next Nested Exception" + " ========>>\n" );
+                isFirst = false;
             }
             else
             {
-                an_out.println( "\n\t<<========= Last Nested Exception" + " ========>>\n" );
+                out.println( "\n\t<<========= Last Nested Exception" + " ========>>\n" );
             }
+            
+            throwable.printStackTrace();
         }
     }
 
@@ -148,28 +149,28 @@
      * Beside printing out the standard stack trace this method prints out the
      * stack traces of all the nested exceptions.
      * 
-     * @param an_out
+     * @param out
      *            PrintStream to write the nested stack trace to.
      */
-    public void printStackTrace( PrintStream an_out )
+    public void printStackTrace( PrintStream out )
     {
-        super.printStackTrace( an_out );
+        super.printStackTrace( out );
 
-        an_out.println( "Nested exceptions to follow:\n" );
-        Iterator l_list = listNestedExceptions();
-        Throwable l_throwable = null;
-        while ( l_list.hasNext() )
+        out.println( "Nested exceptions to follow:\n" );
+        boolean isFirst = true;
+        
+        for ( Throwable throwable:nestedExceptions )
         {
-            l_throwable = ( Throwable ) l_list.next();
-            l_throwable.printStackTrace();
-            if ( l_list.hasNext() )
+            if ( isFirst )
             {
-                an_out.println( "\n\t<<========= Next Nested Exception" + " ========>>\n" );
+                isFirst = false;
             }
             else
             {
-                an_out.println( "\n\t<<========= Last Nested Exception" + " ========>>\n" );
+                out.println( "\n\t<<========= Last Nested Exception" + " ========>>\n" );
             }
+            
+            throwable.printStackTrace();
         }
     }
 

Modified: directory/sandbox/nhope/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/RuntimeMultiException.java
URL: http://svn.apache.org/viewvc/directory/sandbox/nhope/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/RuntimeMultiException.java?view=diff&rev=478579&r1=478578&r2=478579
==============================================================================
--- directory/sandbox/nhope/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/RuntimeMultiException.java (original)
+++ directory/sandbox/nhope/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/RuntimeMultiException.java Thu Nov 23 06:08:13 2006
@@ -40,7 +40,7 @@
     static final long serialVersionUID = 8582253398936366771L;
 
     /** Collection of nested exceptions. */
-    private Collection m_nestedExceptions = new ArrayList();
+    private Collection<Throwable> nestedExceptions = new ArrayList<Throwable>();
 
 
     /**
@@ -55,12 +55,12 @@
     /**
      * Constructs an Exception with a detailed message.
      * 
-     * @param a_message
+     * @param message
      *            The message associated with the exception.
      */
-    public RuntimeMultiException(String a_message)
+    public RuntimeMultiException(String message)
     {
-        super( a_message );
+        super( message );
     }
 
 
@@ -69,9 +69,9 @@
      * 
      * @return an Iterator over the nested exceptions.
      */
-    public Iterator listNestedExceptions()
+    public Iterator<Throwable> listNestedExceptions()
     {
-        return m_nestedExceptions.iterator();
+        return nestedExceptions.iterator();
     }
 
 
@@ -82,7 +82,7 @@
      */
     public int size()
     {
-        return m_nestedExceptions.size();
+        return nestedExceptions.size();
     }
 
 
@@ -93,19 +93,19 @@
      */
     public boolean isEmpty()
     {
-        return m_nestedExceptions.isEmpty();
+        return nestedExceptions.isEmpty();
     }
 
 
     /**
      * Add an exeception to this multiexception.
      * 
-     * @param a_nested
+     * @param nested
      *            exception to add to this MultiException.
      */
-    public void addThrowable( Throwable a_nested )
+    public void addThrowable( Throwable nested )
     {
-        this.m_nestedExceptions.add( a_nested );
+        this.nestedExceptions.add( nested );
     }
 
 
@@ -120,24 +120,24 @@
      * @param an_out
      *            PrintWriter to write the nested stack trace to.
      */
-    public void printStackTrace( PrintWriter an_out )
+    public void printStackTrace( PrintWriter out )
     {
-        super.printStackTrace( an_out );
+        super.printStackTrace( out );
 
-        an_out.println( "Nested exceptions to follow:\n" );
-        Iterator l_list = listNestedExceptions();
-        Throwable l_throwable = null;
-        while ( l_list.hasNext() )
+        out.println( "Nested exceptions to follow:\n" );
+        boolean isFirst = true;
+        
+        for ( Throwable throwable:nestedExceptions )
         {
-            l_throwable = ( Throwable ) l_list.next();
-            l_throwable.printStackTrace();
-            if ( l_list.hasNext() )
+            throwable.printStackTrace();
+            
+            if ( isFirst )
             {
-                an_out.println( "\n\t<<========= Next Nested Exception" + " ========>>\n" );
+                isFirst = false;
             }
             else
             {
-                an_out.println( "\n\t<<========= Last Nested Exception" + " ========>>\n" );
+                out.println( "\n\t<<========= Last Nested Exception" + " ========>>\n" );
             }
         }
     }
@@ -147,27 +147,27 @@
      * Beside printing out the standard stack trace this method prints out the
      * stack traces of all the nested exceptions.
      * 
-     * @param an_out
+     * @param out
      *            PrintStream to write the nested stack trace to.
      */
-    public void printStackTrace( PrintStream an_out )
+    public void printStackTrace( PrintStream out )
     {
-        super.printStackTrace( an_out );
+        super.printStackTrace( out );
+
+        out.println( "Nested exceptions to follow:\n" );
+        boolean isFirst = true;
 
-        an_out.println( "Nested exceptions to follow:\n" );
-        Iterator l_list = listNestedExceptions();
-        Throwable l_throwable = null;
-        while ( l_list.hasNext() )
+        for ( Throwable throwable:nestedExceptions )
         {
-            l_throwable = ( Throwable ) l_list.next();
-            l_throwable.printStackTrace();
-            if ( l_list.hasNext() )
+            throwable.printStackTrace();
+
+            if ( isFirst )
             {
-                an_out.println( "\n\t<<========= Next Nested Exception" + " ========>>\n" );
+                isFirst = false;
             }
             else
             {
-                an_out.println( "\n\t<<========= Last Nested Exception" + " ========>>\n" );
+                out.println( "\n\t<<========= Last Nested Exception" + " ========>>\n" );
             }
         }
     }

Modified: directory/sandbox/nhope/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/ldif/LdifReader.java
URL: http://svn.apache.org/viewvc/directory/sandbox/nhope/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/ldif/LdifReader.java?view=diff&rev=478579&r1=478578&r2=478579
==============================================================================
--- directory/sandbox/nhope/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/ldif/LdifReader.java (original)
+++ directory/sandbox/nhope/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/ldif/LdifReader.java Thu Nov 23 06:08:13 2006
@@ -48,6 +48,7 @@
 import org.apache.directory.shared.asn1.codec.DecoderException;
 import org.apache.directory.shared.asn1.primitives.OID;
 import org.apache.directory.shared.ldap.name.LdapDnParser;
+import org.apache.directory.shared.ldap.name.Rdn;
 import org.apache.directory.shared.ldap.util.Base64;
 import org.apache.directory.shared.ldap.util.StringTools;
 import org.slf4j.Logger;
@@ -148,7 +149,7 @@
  *  single space before the continued value.
  * </pre>
  */
-public class LdifReader implements Iterator
+public class LdifReader implements Iterator<Entry>
 {
     /** A logger */
     private static final Logger log = LoggerFactory.getLogger( LdifReader.class );
@@ -175,7 +176,7 @@
     }
 
     /** A list of read lines */
-    private List lines;
+    private List<String> lines;
 
     /** The current position */
     private Position position;
@@ -229,7 +230,7 @@
      */
     public LdifReader()
     {
-        lines = new ArrayList();
+        lines = new ArrayList<String>();
         position = new Position();
         version = DEFAULT_VERSION;
     }
@@ -237,7 +238,7 @@
     private void init( BufferedReader in ) throws NamingException
     {
         this.in = in;
-        lines = new ArrayList();
+        lines = new ArrayList<String>();
         position = new Position();
         version = DEFAULT_VERSION;
         containsChanges = false;
@@ -527,7 +528,7 @@
         // Check that the DN is valid. If not, an exception will be thrown
         try
         {
-            LdapDnParser.parseInternal( dn, new ArrayList() );
+            LdapDnParser.parseInternal( dn, new ArrayList<Rdn>() );
         }
         catch (InvalidNameException ine)
         {
@@ -865,13 +866,13 @@
      * @throws NamingException
      *             If anything goes wrong
      */
-    private void parseModRdn( Entry entry, Iterator iter ) throws NamingException
+    private void parseModRdn( Entry entry, Iterator<String> iter ) throws NamingException
     {
         // We must have two lines : one starting with "newrdn:" or "newrdn::",
         // and the second starting with "deleteoldrdn:"
         if ( iter.hasNext() )
         {
-            String line = (String) iter.next();
+            String line = iter.next();
             String lowerLine = line.toLowerCase();
 
             if ( lowerLine.startsWith( "newrdn::" ) || lowerLine.startsWith( "newrdn:" ) )
@@ -936,7 +937,7 @@
      * @param iter
      *            The lines
      */
-    private void parseModify( Entry entry, Iterator iter ) throws NamingException
+    private void parseModify( Entry entry, Iterator<String> iter ) throws NamingException
     {
         int state = MOD_SPEC;
         String modified = null;
@@ -947,7 +948,7 @@
 
         while ( iter.hasNext() )
         {
-            String line = (String) iter.next();
+            String line = iter.next();
             String lowerLine = line.toLowerCase();
 
             if ( lowerLine.startsWith( "-" ) )
@@ -1077,7 +1078,7 @@
      *            The associated control, if any
      * @return A modification entry
      */
-    private void parseChange( Entry entry, Iterator iter, int operation, Control control ) throws NamingException
+    private void parseChange( Entry entry, Iterator<String> iter, int operation, Control control ) throws NamingException
     {
         // The changetype and operation has already been parsed.
         entry.setChangeType( operation );
@@ -1093,7 +1094,7 @@
                 // We will iterate through all attribute/value pairs
                 while ( iter.hasNext() )
                 {
-                    String line = (String) iter.next();
+                    String line = iter.next();
                     String lowerLine = line.toLowerCase();
                     parseAttributeValue( entry, line, lowerLine );
                 }
@@ -1112,7 +1113,7 @@
                 // The next line should be the new superior
                 if ( iter.hasNext() )
                 {
-                    String line = (String) iter.next();
+                    String line = iter.next();
                     String lowerLine = line.toLowerCase();
 
                     if ( lowerLine.startsWith( "newsuperior:" ) )
@@ -1168,7 +1169,7 @@
         }
 
         // The entry must start with a dn: or a dn::
-        String line = ( (String) lines.get( 0 ) );
+        String line = lines.get( 0 );
 
         String dn = parseDn( line );
 
@@ -1180,7 +1181,7 @@
         lines.remove( 0 );
 
         // Now, let's iterate through the other lines
-        Iterator iter = lines.iterator();
+        Iterator<String> iter = lines.iterator();
 
         // This flag is used to distinguish between an entry and a change
         int type = UNKNOWN;
@@ -1201,7 +1202,7 @@
         {
             // Each line could start either with an OID, an attribute type, with
             // "control:" or with "changetype:"
-            line = (String) iter.next();
+            line = iter.next();
             lowerLine = line.toLowerCase();
 
             // We have three cases :
@@ -1473,7 +1474,7 @@
      * @throws NamingException
      *             If the parsing fails
      */
-    public List parseLdifFile( String fileName ) throws NamingException
+    public List<Entry> parseLdifFile( String fileName ) throws NamingException
     {
         return parseLdifFile( fileName, Charset.forName( StringTools.getDefaultCharsetName() ).toString() );
     }
@@ -1489,7 +1490,7 @@
      * @throws NamingException
      *             If the parsing fails
      */
-    public List parseLdifFile( String fileName, String encoding ) throws NamingException
+    public List<Entry> parseLdifFile( String fileName, String encoding ) throws NamingException
     {
         if ( StringTools.isEmpty( fileName ) )
         {
@@ -1530,13 +1531,13 @@
      * @throws NamingException
      *             If something went wrong
      */
-    public List parseLdif( String ldif ) throws NamingException
+    public List<Entry> parseLdif( String ldif ) throws NamingException
     {
         log.debug( "Starts parsing ldif buffer" );
 
         if ( StringTools.isEmpty( ldif ) )
         {
-            return new ArrayList();
+            return new ArrayList<Entry>();
         }
 
         StringReader strIn = new StringReader( ldif );
@@ -1544,7 +1545,7 @@
 
         try
         {
-            List entries = parseLdif( in );
+            List<Entry> entries = parseLdif( in );
 
             if ( log.isDebugEnabled() )
             {
@@ -1569,7 +1570,7 @@
      * 
      * @return the next LDIF as a String.
      */
-    public Object next()
+    public Entry next()
     {
         try
         {
@@ -1624,7 +1625,7 @@
     /**
      * @return An iterator on the file
      */
-    public Iterator iterator()
+    public Iterator<Entry> iterator()
     {
         return this;
     }
@@ -1655,10 +1656,10 @@
      * @throws NamingException
      *             If something went wrong
      */
-    public List parseLdif( BufferedReader in ) throws NamingException
+    public List<Entry> parseLdif( BufferedReader in ) throws NamingException
     {
         // Create a list that will contain the read entries
-        List entries = new ArrayList();
+        List<Entry> entries = new ArrayList<Entry>();
 
         this.in = in;
 
@@ -1669,7 +1670,7 @@
         // When done, get the entries one by one.
         while ( hasNext() )
         {
-            Entry entry = (Entry) next();
+            Entry entry = next();
 
             if ( error != null )
             {

Modified: directory/sandbox/nhope/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/name/LdapDnParser.java
URL: http://svn.apache.org/viewvc/directory/sandbox/nhope/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/name/LdapDnParser.java?view=diff&rev=478579&r1=478578&r2=478579
==============================================================================
--- directory/sandbox/nhope/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/name/LdapDnParser.java (original)
+++ directory/sandbox/nhope/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/name/LdapDnParser.java Thu Nov 23 06:08:13 2006
@@ -102,7 +102,7 @@
     * @throws InvalidNameException
     *             If the DN is invalid
     */
-   public static void parseInternal( String dn, List rdns ) throws InvalidNameException
+   public static void parseInternal( String dn, List<Rdn> rdns ) throws InvalidNameException
    {
        if ( dn.length() == 0 )
        {

Modified: directory/sandbox/nhope/trunks/shared/ldap/src/test/java/org/apache/directory/shared/ldap/name/DnParserDIRSERVER_584_Test.java
URL: http://svn.apache.org/viewvc/directory/sandbox/nhope/trunks/shared/ldap/src/test/java/org/apache/directory/shared/ldap/name/DnParserDIRSERVER_584_Test.java?view=diff&rev=478579&r1=478578&r2=478579
==============================================================================
--- directory/sandbox/nhope/trunks/shared/ldap/src/test/java/org/apache/directory/shared/ldap/name/DnParserDIRSERVER_584_Test.java (original)
+++ directory/sandbox/nhope/trunks/shared/ldap/src/test/java/org/apache/directory/shared/ldap/name/DnParserDIRSERVER_584_Test.java Thu Nov 23 06:08:13 2006
@@ -43,7 +43,7 @@
    {
        try
        {
-           LdapDnParser.parseInternal( "ou=test=testing", new ArrayList() );
+           LdapDnParser.parseInternal( "ou=test=testing", new ArrayList<Rdn>() );
            fail( "should never get here" );
        }
        catch ( InvalidNameException e )
@@ -58,6 +58,6 @@
     */
    public void testb() throws Exception
    {
-       LdapDnParser.parseInternal( "ou=system", new ArrayList() );
+       LdapDnParser.parseInternal( "ou=system", new ArrayList<Rdn>() );
    }
 }

Modified: directory/sandbox/nhope/trunks/shared/ldap/src/test/java/org/apache/directory/shared/ldap/name/LdapDNTest.java
URL: http://svn.apache.org/viewvc/directory/sandbox/nhope/trunks/shared/ldap/src/test/java/org/apache/directory/shared/ldap/name/LdapDNTest.java?view=diff&rev=478579&r1=478578&r2=478579
==============================================================================
--- directory/sandbox/nhope/trunks/shared/ldap/src/test/java/org/apache/directory/shared/ldap/name/LdapDNTest.java (original)
+++ directory/sandbox/nhope/trunks/shared/ldap/src/test/java/org/apache/directory/shared/ldap/name/LdapDNTest.java Thu Nov 23 06:08:13 2006
@@ -1340,7 +1340,7 @@
     */
    public void testLdapNameList() throws InvalidNameException
    {
-       ArrayList list = new ArrayList();
+       List<String> list = new ArrayList<String>();
        list.add( "ou=People" );
        list.add( "dc=example" );
        list.add( "dc=com" );
@@ -1354,7 +1354,7 @@
     */
    public void testLdapNameIterator() throws InvalidNameException
    {
-       ArrayList list = new ArrayList();
+       List<String> list = new ArrayList<String>();
        list.add( "ou=People" );
        list.add( "dc=example" );
        list.add( "dc=com" );
@@ -1406,11 +1406,11 @@
        assertTrue( name4.compareTo( name5 ) > 0 );
        assertTrue( name2.compareTo( name5 ) < 0 );
 
-       List list = new ArrayList();
+       List<Name> list = new ArrayList<Name>();
 
-       Comparator comparator = new Comparator()
+       Comparator<Name> comparator = new Comparator<Name>()
        {
-           public int compare( Object obj1, Object obj2 )
+           public int compare( Name obj1, Name obj2 )
            {
                Name name1 = ( LdapDN ) obj1;
                Name name2 = ( LdapDN ) obj2;
@@ -2140,13 +2140,13 @@
     */
    public void testLdapNameToName() throws Exception
    {
-       ArrayList list = new ArrayList();
+       List<String> list = new ArrayList<String>();
        list.add( "ou= Some   People   " );
        list.add( "dc = eXample" );
        list.add( "dc= cOm" );
        LdapDN name = new LdapDN( list.iterator() );
 
-       Map oids = new HashMap();
+       Map<String, OidNormalizer> oids = new HashMap<String, OidNormalizer>();
 
        oids.put( "dc", new OidNormalizer( "dc", new DeepTrimToLowerNormalizer() ) );
        oids.put( "domaincomponent", new OidNormalizer( "dc", new DeepTrimToLowerNormalizer() ) );
@@ -2170,7 +2170,7 @@
    {
        LdapDN name = new LdapDN();
 
-       Map oids = new HashMap();
+       Map<String, OidNormalizer> oids = new HashMap<String, OidNormalizer>();
 
        oids.put( "dc", new OidNormalizer( "dc", new DeepTrimToLowerNormalizer() ) );
        oids.put( "domaincomponent", new OidNormalizer( "dc", new DeepTrimToLowerNormalizer() ) );
@@ -2192,7 +2192,7 @@
        LdapDN name = new LdapDN(
            "2.5.4.11= Some   People   + 0.9.2342.19200300.100.1.25=  And   Some anImAls,0.9.2342.19200300.100.1.25 = eXample,dc= cOm" );
 
-       Map oids = new HashMap();
+       Map<String, OidNormalizer> oids = new HashMap<String, OidNormalizer>();
 
        oids.put( "dc", new OidNormalizer( "dc", new DeepTrimToLowerNormalizer() ) );
        oids.put( "domaincomponent", new OidNormalizer( "dc", new DeepTrimToLowerNormalizer() ) );
@@ -2219,7 +2219,7 @@
        LdapDN name = new LdapDN(
            "2.5.4.11= Some   People   + domainComponent=  And   Some anImAls,DomainComponent = eXample,0.9.2342.19200300.100.1.25= cOm" );
 
-       Map oids = new HashMap();
+       Map<String, OidNormalizer> oids = new HashMap<String, OidNormalizer>();
 
        oids.put( "dc", new OidNormalizer( "dc", new DeepTrimToLowerNormalizer() ) );
        oids.put( "domaincomponent", new OidNormalizer( "dc", new DeepTrimToLowerNormalizer() ) );