Return-Path: Delivered-To: apmail-directory-commits-archive@www.apache.org Received: (qmail 93401 invoked from network); 4 Apr 2011 23:15:27 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 4 Apr 2011 23:15:27 -0000 Received: (qmail 63605 invoked by uid 500); 4 Apr 2011 23:15:27 -0000 Delivered-To: apmail-directory-commits-archive@directory.apache.org Received: (qmail 63572 invoked by uid 500); 4 Apr 2011 23:15:27 -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 63565 invoked by uid 99); 4 Apr 2011 23:15:27 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 04 Apr 2011 23:15:27 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 04 Apr 2011 23:15:24 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id B0E7523888E4; Mon, 4 Apr 2011 23:15:03 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1088819 - in /directory: apacheds/trunk/core/src/main/java/org/apache/directory/server/core/schema/SchemaInterceptor.java shared/trunk/ldap/model/src/main/java/org/apache/directory/shared/ldap/model/entry/DefaultAttribute.java Date: Mon, 04 Apr 2011 23:15:03 -0000 To: commits@directory.apache.org From: elecharny@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20110404231503.B0E7523888E4@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: elecharny Date: Mon Apr 4 23:15:03 2011 New Revision: 1088819 URL: http://svn.apache.org/viewvc?rev=1088819&view=rev Log: o Fixed an issue in the Attribute.apply( AttributeType ) : the values weren't copied into a new Set, so the hashCode weren't modified, leading to some failing Attribute.contains( ... ) calls. o Using the clone() method instead of a local createNewAttribute() Modified: directory/apacheds/trunk/core/src/main/java/org/apache/directory/server/core/schema/SchemaInterceptor.java directory/shared/trunk/ldap/model/src/main/java/org/apache/directory/shared/ldap/model/entry/DefaultAttribute.java Modified: directory/apacheds/trunk/core/src/main/java/org/apache/directory/server/core/schema/SchemaInterceptor.java URL: http://svn.apache.org/viewvc/directory/apacheds/trunk/core/src/main/java/org/apache/directory/server/core/schema/SchemaInterceptor.java?rev=1088819&r1=1088818&r2=1088819&view=diff ============================================================================== --- directory/apacheds/trunk/core/src/main/java/org/apache/directory/server/core/schema/SchemaInterceptor.java (original) +++ directory/apacheds/trunk/core/src/main/java/org/apache/directory/server/core/schema/SchemaInterceptor.java Mon Apr 4 23:15:03 2011 @@ -54,11 +54,11 @@ import org.apache.directory.shared.ldap. import org.apache.directory.shared.ldap.model.constants.SchemaConstants; import org.apache.directory.shared.ldap.model.cursor.EmptyCursor; import org.apache.directory.shared.ldap.model.cursor.SingletonCursor; +import org.apache.directory.shared.ldap.model.entry.Attribute; import org.apache.directory.shared.ldap.model.entry.BinaryValue; import org.apache.directory.shared.ldap.model.entry.DefaultAttribute; import org.apache.directory.shared.ldap.model.entry.DefaultModification; import org.apache.directory.shared.ldap.model.entry.Entry; -import org.apache.directory.shared.ldap.model.entry.Attribute; import org.apache.directory.shared.ldap.model.entry.Modification; import org.apache.directory.shared.ldap.model.entry.StringValue; import org.apache.directory.shared.ldap.model.entry.Value; @@ -1066,7 +1066,7 @@ public class SchemaInterceptor extends B // We don't check if the attribute is not in the MUST or MAY at this // point, as one of the following modification can change the // ObjectClasses. - Attribute newAttribute = createNewAttribute( attribute ); + Attribute newAttribute = attribute.clone(); // Check that the attribute allows null values if we don'y have any value if ( ( newAttribute.size() == 0 ) && !newAttribute.isValid( attributeType.getSyntax().getSyntaxChecker() ) ) Modified: directory/shared/trunk/ldap/model/src/main/java/org/apache/directory/shared/ldap/model/entry/DefaultAttribute.java URL: http://svn.apache.org/viewvc/directory/shared/trunk/ldap/model/src/main/java/org/apache/directory/shared/ldap/model/entry/DefaultAttribute.java?rev=1088819&r1=1088818&r2=1088819&view=diff ============================================================================== --- directory/shared/trunk/ldap/model/src/main/java/org/apache/directory/shared/ldap/model/entry/DefaultAttribute.java (original) +++ directory/shared/trunk/ldap/model/src/main/java/org/apache/directory/shared/ldap/model/entry/DefaultAttribute.java Mon Apr 4 23:15:03 2011 @@ -1720,10 +1720,15 @@ public class DefaultAttribute implements if ( values != null ) { + Set> newValues = new LinkedHashSet>( values.size() ); + for ( Value value : values ) { value.apply( attributeType ); + newValues.add( value ); } + + values = newValues; } isHR = attributeType.getSyntax().isHumanReadable();