You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by pa...@apache.org on 2012/02/17 16:08:31 UTC
svn commit: r1245599 -
/directory/shared/trunk/ldap/codec/core/src/main/java/org/apache/directory/shared/ldap/codec/api/DefaultConfigurableBinaryAttributeDetector.java
Author: pamarcelot
Date: Fri Feb 17 15:08:31 2012
New Revision: 1245599
URL: http://svn.apache.org/viewvc?rev=1245599&view=rev
Log:
Fixed a bug where the list initialized with default values was not cleared when setting a new list of binary attributes.
Modified:
directory/shared/trunk/ldap/codec/core/src/main/java/org/apache/directory/shared/ldap/codec/api/DefaultConfigurableBinaryAttributeDetector.java
Modified: directory/shared/trunk/ldap/codec/core/src/main/java/org/apache/directory/shared/ldap/codec/api/DefaultConfigurableBinaryAttributeDetector.java
URL: http://svn.apache.org/viewvc/directory/shared/trunk/ldap/codec/core/src/main/java/org/apache/directory/shared/ldap/codec/api/DefaultConfigurableBinaryAttributeDetector.java?rev=1245599&r1=1245598&r2=1245599&view=diff
==============================================================================
--- directory/shared/trunk/ldap/codec/core/src/main/java/org/apache/directory/shared/ldap/codec/api/DefaultConfigurableBinaryAttributeDetector.java (original)
+++ directory/shared/trunk/ldap/codec/core/src/main/java/org/apache/directory/shared/ldap/codec/api/DefaultConfigurableBinaryAttributeDetector.java Fri Feb 17 15:08:31 2012
@@ -19,11 +19,13 @@
*/
package org.apache.directory.shared.ldap.codec.api;
+
import java.util.Set;
import org.apache.directory.shared.util.Strings;
import org.apache.mina.util.ConcurrentHashSet;
+
/**
* An implementation of the BinaryAttributeDetector interface. It's used
* on the client side to detect if an Attribute is HumanRedable.<br/>
@@ -65,36 +67,37 @@ public class DefaultConfigurableBinaryAt
{
/** A set of binary Attribute ID */
private Set<String> binaryAttributes = new ConcurrentHashSet<String>();
-
+
/** A list of all the known binary attributes */
public final static String[] DEFAULT_BINARY_ATTRIBUTES = new String[]
{
- "entryACI", // Syntax : ACI Item
- "prescriptiveACI", // Syntax : ACI Item
- "subentryACI", // Syntax : ACI Item
- "audio", // Syntax : Audio
- "javaByteCode", // Syntax : Binary
- "javaClassByteCode", // Syntax : Binary
- "krb5key", // Syntax : Binary
- "m-byteCode", // Syntax : Binary
- "privateKey", // Syntax : Binary
- "publicKey", // Syntax : Binary
- "userPKCS12", // Syntax : Binary
- "userSMIMECertificate", // Syntax : Binary
- "cACertificate", // Syntax : Certificate
- "userCertificate", // Syntax : Certificate
- "authorityRevocationList", // Syntax : Certificate List
+ "entryACI", // Syntax : ACI Item
+ "prescriptiveACI", // Syntax : ACI Item
+ "subentryACI", // Syntax : ACI Item
+ "audio", // Syntax : Audio
+ "javaByteCode", // Syntax : Binary
+ "javaClassByteCode", // Syntax : Binary
+ "krb5key", // Syntax : Binary
+ "m-byteCode", // Syntax : Binary
+ "privateKey", // Syntax : Binary
+ "publicKey", // Syntax : Binary
+ "userPKCS12", // Syntax : Binary
+ "userSMIMECertificate", // Syntax : Binary
+ "cACertificate", // Syntax : Certificate
+ "userCertificate", // Syntax : Certificate
+ "authorityRevocationList", // Syntax : Certificate List
"certificateRevocationList",// Syntax : Certificate List
- "deltaRevocationList", // Syntax : Certificate List
- "crossCertificatePair", // Syntax : Certificate Pair
- "personalSignature", // Syntax : Fax
- "photo", // Syntax : Fax
- "jpegPhoto", // Syntax : JPEG
- "supportedAlgorithms", // Syntax : Supported Algorithm
- "javaSerializedData", // Syntax : Octet String
- "userPassword" // Syntax : Octet String
+ "deltaRevocationList", // Syntax : Certificate List
+ "crossCertificatePair", // Syntax : Certificate Pair
+ "personalSignature", // Syntax : Fax
+ "photo", // Syntax : Fax
+ "jpegPhoto", // Syntax : JPEG
+ "supportedAlgorithms", // Syntax : Supported Algorithm
+ "javaSerializedData", // Syntax : Octet String
+ "userPassword" // Syntax : Octet String
};
-
+
+
/**
* Creates a new instance of a ConfigurableBinaryAttributeDetector. This will
* load a set of default attribute ID that are known to be binary.
@@ -103,15 +106,15 @@ public class DefaultConfigurableBinaryAt
{
setBinaryAttributes( DEFAULT_BINARY_ATTRIBUTES );
}
-
-
+
+
/**
* {@inheritDoc}
*/
public boolean isBinary( String attributeId )
{
boolean isBinary = super.isBinary( attributeId );
-
+
if ( isBinary )
{
return true;
@@ -121,7 +124,7 @@ public class DefaultConfigurableBinaryAt
return binaryAttributes.contains( attrId );
}
-
+
/**
* {@inheritDoc}
@@ -137,7 +140,7 @@ public class DefaultConfigurableBinaryAt
}
}
}
-
+
/**
* {@inheritDoc}
@@ -153,26 +156,22 @@ public class DefaultConfigurableBinaryAt
}
}
}
-
+
/**
* {@inheritDoc}
*/
public void setBinaryAttributes( String... binaryAttributes )
{
+ this.binaryAttributes.clear();
+
+ // Special case for 'null'
if ( binaryAttributes == null )
{
- // Clear the Set and reinject the default attributes
- this.binaryAttributes.clear();
- setBinaryAttributes( DEFAULT_BINARY_ATTRIBUTES );
-
- return;
+ // Reseting to the default list of binary attributes
+ binaryAttributes = DEFAULT_BINARY_ATTRIBUTES;
}
- for ( String binaryAttribute : binaryAttributes )
- {
- String attrId = Strings.toLowerCase( binaryAttribute );
- this.binaryAttributes.add( attrId );
- }
+ addBinaryAttribute( binaryAttributes );
}
}