You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by se...@apache.org on 2010/01/03 23:27:31 UTC
svn commit: r895496 -
/directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/name/AttributeTypeAndValue.java
Author: seelmann
Date: Sun Jan 3 22:27:31 2010
New Revision: 895496
URL: http://svn.apache.org/viewvc?rev=895496&view=rev
Log:
Added a new constructor, to pass the user provided name
Modified:
directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/name/AttributeTypeAndValue.java
Modified: directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/name/AttributeTypeAndValue.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/name/AttributeTypeAndValue.java?rev=895496&r1=895495&r2=895496&view=diff
==============================================================================
--- directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/name/AttributeTypeAndValue.java (original)
+++ directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/name/AttributeTypeAndValue.java Sun Jan 3 22:27:31 2010
@@ -216,6 +216,63 @@
* @param normType The normalized type
* @param upValue The User Provided value
* @param normValue The normalized value
+ * @param upName The User Provided name (may be escaped)
+ */
+ public AttributeTypeAndValue( String upType, String normType, Value<?> upValue, Value<?> normValue, String upName )
+ throws InvalidNameException
+ {
+ String upTypeTrimmed = StringTools.trim( upType );
+ String normTypeTrimmed = StringTools.trim( normType );
+
+ if ( StringTools.isEmpty( upTypeTrimmed ) )
+ {
+ if ( StringTools.isEmpty( normTypeTrimmed ) )
+ {
+ String message = "The type cannot be empty or null";
+ LOG.error( message );
+ throw new InvalidNameException( message );
+ }
+ else
+ {
+ // In this case, we will use the normType instead
+ this.normType = StringTools.lowerCaseAscii( normTypeTrimmed );
+ this.upType = normType;
+ }
+ }
+ else if ( StringTools.isEmpty( normTypeTrimmed ) )
+ {
+ // In this case, we will use the upType instead
+ this.normType = StringTools.lowerCaseAscii( upTypeTrimmed );
+ this.upType = upType;
+ }
+ else
+ {
+ this.normType = StringTools.lowerCaseAscii( normTypeTrimmed );
+ this.upType = upType;
+
+ }
+
+ this.normValue = normValue;
+ this.upValue = upValue;
+
+ this.upName = upName;
+ start = 0;
+ length = upName.length();
+ }
+
+
+ /**
+ * Construct an AttributeTypeAndValue. The type and value are normalized :
+ * <li> the type is trimmed and lowercased </li>
+ * <li> the value is trimmed </li>
+ * <p>
+ * Note that the upValue should <b>not</b> be null or empty, or resolved
+ * to an empty string after having trimmed it.
+ *
+ * @param upType The User Provided type
+ * @param normType The normalized type
+ * @param upValue The User Provided value
+ * @param normValue The normalized value
* @param start Start of this ATAV in the RDN
* @param length Length of this ATAV
* @param upName The user provided name