[maven-release-plugin]  copy for tag 1.0.0-M20

git-svn-id: https://svn.apache.org/repos/asf/directory/shared/tags/1.0.0-M20@1513760 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/ldap/model/src/main/java/org/apache/directory/api/ldap/model/schema/comparators/NormalizingComparator.java b/ldap/model/src/main/java/org/apache/directory/api/ldap/model/schema/comparators/NormalizingComparator.java
index fb75e88..ad7a483 100644
--- a/ldap/model/src/main/java/org/apache/directory/api/ldap/model/schema/comparators/NormalizingComparator.java
+++ b/ldap/model/src/main/java/org/apache/directory/api/ldap/model/schema/comparators/NormalizingComparator.java
@@ -33,7 +33,7 @@
  * 
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
-/* no qualifier*/class NormalizingComparator extends LdapComparator<String>
+public class NormalizingComparator extends LdapComparator<String>
 {
     /** The serial version UID */
     private static final long serialVersionUID = 2L;
@@ -47,6 +47,8 @@
     /** the underlying comparator to use for comparisons */
     private LdapComparator<String> comparator;
 
+    private boolean onServer = false;
+
 
     /**
      * A comparator which normalizes a value first before comparing them.
@@ -68,6 +70,11 @@
      */
     public int compare( String o1, String o2 )
     {
+        if ( onServer )
+        {
+            return comparator.compare( o1, o2 );
+        }
+
         String n1;
         String n2;
 
@@ -108,4 +115,14 @@
         normalizer.setOid( oid );
         comparator.setOid( oid );
     }
+
+
+    /**
+     * tells that the normalizingComparator should not normalize values which are
+     * already normalized on the server 
+     */
+    public void setOnServer()
+    {
+        this.onServer = true;
+    }
 }