Return-Path: Delivered-To: apmail-directory-commits-archive@www.apache.org Received: (qmail 31399 invoked from network); 5 Jun 2006 20:51:47 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 5 Jun 2006 20:51:47 -0000 Received: (qmail 7542 invoked by uid 500); 5 Jun 2006 20:51:47 -0000 Delivered-To: apmail-directory-commits-archive@directory.apache.org Received: (qmail 7497 invoked by uid 500); 5 Jun 2006 20:51:46 -0000 Mailing-List: contact commits-help@directory.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@directory.apache.org Delivered-To: mailing list commits@directory.apache.org Received: (qmail 7486 invoked by uid 99); 5 Jun 2006 20:51:46 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 05 Jun 2006 13:51:46 -0700 X-ASF-Spam-Status: No, hits=-9.4 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: local policy) Received: from [140.211.166.113] (HELO eris.apache.org) (140.211.166.113) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 05 Jun 2006 13:51:46 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id E68021A983A; Mon, 5 Jun 2006 13:51:25 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r411913 - /directory/branches/apacheds/optimization/core/src/main/java/org/apache/directory/server/core/schema/bootstrap/BootstrapAttributeTypeRegistry.java Date: Mon, 05 Jun 2006 20:51:25 -0000 To: commits@directory.apache.org From: elecharny@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20060605205125.E68021A983A@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Author: elecharny Date: Mon Jun 5 13:51:24 2006 New Revision: 411913 URL: http://svn.apache.org/viewvc?rev=411913&view=rev Log: - Added logs - Added a test for null MatchingRule which was generating NPE - Added a warn in this case Modified: directory/branches/apacheds/optimization/core/src/main/java/org/apache/directory/server/core/schema/bootstrap/BootstrapAttributeTypeRegistry.java Modified: directory/branches/apacheds/optimization/core/src/main/java/org/apache/directory/server/core/schema/bootstrap/BootstrapAttributeTypeRegistry.java URL: http://svn.apache.org/viewvc/directory/branches/apacheds/optimization/core/src/main/java/org/apache/directory/server/core/schema/bootstrap/BootstrapAttributeTypeRegistry.java?rev=411913&r1=411912&r2=411913&view=diff ============================================================================== --- directory/branches/apacheds/optimization/core/src/main/java/org/apache/directory/server/core/schema/bootstrap/BootstrapAttributeTypeRegistry.java (original) +++ directory/branches/apacheds/optimization/core/src/main/java/org/apache/directory/server/core/schema/bootstrap/BootstrapAttributeTypeRegistry.java Mon Jun 5 13:51:24 2006 @@ -29,7 +29,11 @@ import org.apache.directory.server.core.schema.AttributeTypeRegistryMonitorAdapter; import org.apache.directory.server.core.schema.OidRegistry; import org.apache.directory.shared.ldap.schema.AttributeType; +import org.apache.directory.shared.ldap.schema.MatchingRule; +import org.apache.directory.shared.ldap.schema.NoOpNormalizer; import org.apache.directory.shared.ldap.schema.Normalizer; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** @@ -40,6 +44,8 @@ */ public class BootstrapAttributeTypeRegistry implements AttributeTypeRegistry { + private static final Logger log = LoggerFactory.getLogger( BootstrapAttributeTypeRegistry.class ); + /** maps an OID to an AttributeType */ private final Map byOid; /** maps an OID to a schema name*/ @@ -166,9 +172,24 @@ for ( Iterator ii = byOid.values().iterator(); ii.hasNext(); /**/ ) { AttributeType type = ( AttributeType ) ii.next(); - Normalizer normalizer = type.getEquality().getNormalizer(); + + MatchingRule matchingRule = type.getEquality(); + + Normalizer normalizer = null; + + if ( matchingRule == null ) + { + log.warn( "Attribute " + type.getName() + " does not have normalize : using NoopNormalizer" ); + normalizer = new NoOpNormalizer(); + } + else + { + normalizer = matchingRule.getNormalizer(); + } + mapping.put( type.getOid(), normalizer ); String[] aliases = type.getNames(); + for ( int jj = 0; jj < aliases.length; jj++ ) { mapping.put( aliases[jj], normalizer );