You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by el...@apache.org on 2010/10/30 03:51:55 UTC
svn commit: r1028966 [9/9] - in /directory/shared/branches/shared-config:
all/ dsml-engine/ dsml-parser/
dsml-parser/src/main/java/org/apache/directory/shared/dsmlv2/
dsml-parser/src/main/java/org/apache/directory/shared/dsmlv2/reponse/
dsml-parser/src...
Modified: directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/codec/search/controls/persistentSearch/PersistentSearchControlStatesEnum.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/codec/search/controls/persistentSearch/PersistentSearchControlStatesEnum.java?rev=1028966&r1=1028965&r2=1028966&view=diff
==============================================================================
--- directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/codec/search/controls/persistentSearch/PersistentSearchControlStatesEnum.java (original)
+++ directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/codec/search/controls/persistentSearch/PersistentSearchControlStatesEnum.java Sat Oct 30 01:51:50 2010
@@ -28,76 +28,36 @@ import org.apache.directory.shared.asn1.
* This class store the PSearchControl's grammar constants. It is also used for
* debugging purposes.
*
- * TODO: should this be an enum?
- *
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
*/
-public final class PersistentSearchControlStatesEnum implements States
+public enum PersistentSearchControlStatesEnum implements States
{
// ~ Static fields/initializers
// -----------------------------------------------------------------
+ /** The END_STATE */
+ END_STATE,
+
// =========================================================================
// Persistent search control grammar states
// =========================================================================
/** Initial state */
- public static final int START_STATE = 0;
+ START_STATE,
/** Sequence Value */
- public static final int PSEARCH_SEQUENCE_STATE = 1;
+ PSEARCH_SEQUENCE_STATE,
/** changeTypes Value */
- public static final int CHANGE_TYPES_STATE = 2;
+ CHANGE_TYPES_STATE,
/** changesOnly Value */
- public static final int CHANGES_ONLY_STATE = 3;
+ CHANGES_ONLY_STATE,
/** returnECs Value */
- public static final int RETURN_ECS_STATE = 4;
+ RETURN_ECS_STATE,
/** terminal state */
- public static final int LAST_PSEARCH_STATE = 5;
-
- // =========================================================================
- // States debug strings
- // =========================================================================
- /** A string representation of all the states */
- private static final String[] PSEARCH_STRING = new String[]
- {
- "START_STATE",
- "PSEARCH_SEQUENCE_VALUE",
- "CHANGE_TYPES_STATE",
- "CHANGES_ONLY_STATE",
- "RETURN_ECS_STATE"
- };
-
- /** The instance */
- private static PersistentSearchControlStatesEnum instance = new PersistentSearchControlStatesEnum();
-
-
- // ~ Constructors
- // -------------------------------------------------------------------------------
-
- /**
- * This is a private constructor. This class is a singleton
- */
- private PersistentSearchControlStatesEnum()
- {
- }
-
-
- // ~ Methods
- // ------------------------------------------------------------------------------------
-
- /**
- * Get an instance of this class
- *
- * @return An instance on this class
- */
- public static States getInstance()
- {
- return instance;
- }
+ LAST_PSEARCH_STATE;
/**
@@ -137,6 +97,24 @@ public final class PersistentSearchContr
*/
public String getState( int state )
{
- return ( ( state == GRAMMAR_END ) ? "PSEARCH_END_STATE" : PSEARCH_STRING[state] );
+ return ( ( state == END_STATE.ordinal() ) ? "PSEARCH_END_STATE" : name() );
+ }
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public boolean isEndState()
+ {
+ return this == END_STATE;
+ }
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public PersistentSearchControlStatesEnum getStartState()
+ {
+ return START_STATE;
}
}
Modified: directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/codec/search/controls/subentries/SubentriesControlContainer.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/codec/search/controls/subentries/SubentriesControlContainer.java?rev=1028966&r1=1028965&r2=1028966&view=diff
==============================================================================
--- directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/codec/search/controls/subentries/SubentriesControlContainer.java (original)
+++ directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/codec/search/controls/subentries/SubentriesControlContainer.java Sat Oct 30 01:51:50 2010
@@ -40,7 +40,7 @@ public class SubentriesControlContainer
super();
stateStack = new int[1];
grammar = SubentriesControlGrammar.getInstance();
- states = SubentriesControlStatesEnum.getInstance();
+ setTransition( SubentriesControlStatesEnum.START_STATE );
}
Modified: directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/codec/search/controls/subentries/SubentriesControlGrammar.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/codec/search/controls/subentries/SubentriesControlGrammar.java?rev=1028966&r1=1028965&r2=1028966&view=diff
==============================================================================
--- directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/codec/search/controls/subentries/SubentriesControlGrammar.java (original)
+++ directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/codec/search/controls/subentries/SubentriesControlGrammar.java Sat Oct 30 01:51:50 2010
@@ -58,12 +58,11 @@ public final class SubentriesControlGram
private SubentriesControlGrammar()
{
setName( SubentriesControlGrammar.class.getName() );
- setStatesEnum( SubentriesControlStatesEnum.getInstance() );
// Create the transitions table
- super.transitions = new GrammarTransition[SubentriesControlStatesEnum.LAST_SUB_ENTRY_STATE][256];
+ super.transitions = new GrammarTransition[SubentriesControlStatesEnum.LAST_SUB_ENTRY_STATE.ordinal()][256];
- super.transitions[SubentriesControlStatesEnum.START_STATE][UniversalTag.BOOLEAN.getValue()] =
+ super.transitions[SubentriesControlStatesEnum.START_STATE.ordinal()][UniversalTag.BOOLEAN.getValue()] =
new GrammarTransition( SubentriesControlStatesEnum.START_STATE,
SubentriesControlStatesEnum.SUB_ENTRY_VISIBILITY_STATE, UniversalTag.BOOLEAN.getValue(),
new GrammarAction( "SubEntryControl visibility" )
Modified: directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/codec/search/controls/subentries/SubentriesControlStatesEnum.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/codec/search/controls/subentries/SubentriesControlStatesEnum.java?rev=1028966&r1=1028965&r2=1028966&view=diff
==============================================================================
--- directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/codec/search/controls/subentries/SubentriesControlStatesEnum.java (original)
+++ directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/codec/search/controls/subentries/SubentriesControlStatesEnum.java Sat Oct 30 01:51:50 2010
@@ -30,61 +30,26 @@ import org.apache.directory.shared.asn1.
*
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
*/
-public final class SubentriesControlStatesEnum implements States
+public enum SubentriesControlStatesEnum implements States
{
// ~ Static fields/initializers
// -----------------------------------------------------------------
+ /** The END_STATE */
+ END_STATE,
+
// =========================================================================
// Sub entry control grammar states
// =========================================================================
/** Starting state */
- public static final int START_STATE = 0;
+ START_STATE,
/** Visibility Value */
- public static final int SUB_ENTRY_VISIBILITY_STATE = 1;
+ SUB_ENTRY_VISIBILITY_STATE,
/** terminal state */
- public static final int LAST_SUB_ENTRY_STATE = 2;
-
- // =========================================================================
- // States debug strings
- // =========================================================================
- /** A string representation of all the states */
- private static final String[] SUB_ENTRY_STRING = new String[]
- {
- "START_STATE",
- "SUB_ENTRY_VISIBILITY_STATE"
- };
-
- /** The instance */
- private static SubentriesControlStatesEnum instance = new SubentriesControlStatesEnum();
-
-
- // ~ Constructors
- // -------------------------------------------------------------------------------
-
- /**
- * This is a private constructor. This class is a singleton
- */
- private SubentriesControlStatesEnum()
- {
- }
-
-
- // ~ Methods
- // ------------------------------------------------------------------------------------
-
- /**
- * Get an instance of this class
- *
- * @return An instance on this class
- */
- public static States getInstance()
- {
- return instance;
- }
+ LAST_SUB_ENTRY_STATE;
/**
@@ -124,6 +89,24 @@ public final class SubentriesControlStat
*/
public String getState( int state )
{
- return ( ( state == GRAMMAR_END ) ? "SUB_ENTRY_END_STATE" : SUB_ENTRY_STRING[state] );
+ return ( ( state == END_STATE.ordinal() ) ? "SUB_ENTRY_END_STATE" : name() );
+ }
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public boolean isEndState()
+ {
+ return this == END_STATE;
+ }
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public SubentriesControlStatesEnum getStartState()
+ {
+ return START_STATE;
}
}
Modified: directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/constants/LdapSecurityConstants.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/constants/LdapSecurityConstants.java?rev=1028966&r1=1028965&r2=1028966&view=diff
==============================================================================
--- directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/constants/LdapSecurityConstants.java (original)
+++ directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/constants/LdapSecurityConstants.java Sat Oct 30 01:51:50 2010
@@ -43,7 +43,36 @@ public enum LdapSecurityConstants
HASH_METHOD_CRYPT("crypt"),
/** The SHA-256 encryption method */
- HASH_METHOD_SHA256("sha-256");
+ HASH_METHOD_SHA256("sha-256"),
+
+ /** The salted SHA-256 encryption method */
+ HASH_METHOD_SSHA256("ssha-256"),
+
+ /** The SHA-384 encryption method */
+ HASH_METHOD_SHA384("sha-384"),
+
+ /** The salted SHA-384 encryption method */
+ HASH_METHOD_SSHA384("ssha-384"),
+
+ /** The SHA-512 encryption method */
+ HASH_METHOD_SHA512("sha-512"),
+
+ /** The salted SHA-512 encryption method */
+ HASH_METHOD_SSHA512("ssha-512");
+
+ /* These encryption types are not yet supported
+ ** The AES encryption method *
+ ENC_METHOD_AES("aes"),
+
+ ** The 3DES encryption method *
+ ENC_METHOD_3DES("3des"),
+
+ ** The Blowfish encryption method *
+ ENC_METHOD_BLOWFISH("blowfish"),
+
+ ** The RC4 encryption method *
+ ENC_METHOD_RC4("rc4");
+ */
/** The associated name */
private String name;
@@ -114,6 +143,53 @@ public enum LdapSecurityConstants
return HASH_METHOD_SHA256;
}
+ if ( HASH_METHOD_SSHA256.getName().equalsIgnoreCase( algorithm ) )
+ {
+ return HASH_METHOD_SSHA256;
+ }
+
+ if ( HASH_METHOD_SHA384.getName().equalsIgnoreCase( algorithm ) )
+ {
+ return HASH_METHOD_SHA384;
+ }
+
+ if ( HASH_METHOD_SSHA384.getName().equalsIgnoreCase( algorithm ) )
+ {
+ return HASH_METHOD_SSHA384;
+ }
+
+ if ( HASH_METHOD_SHA512.getName().equalsIgnoreCase( algorithm ) )
+ {
+ return HASH_METHOD_SHA512;
+ }
+
+ if ( HASH_METHOD_SSHA512.getName().equalsIgnoreCase( algorithm ) )
+ {
+ return HASH_METHOD_SSHA512;
+ }
+
+ /*
+ if ( ENC_METHOD_AES.getName().equalsIgnoreCase( algorithm ) )
+ {
+ return ENC_METHOD_AES;
+ }
+
+ if ( ENC_METHOD_3DES.getName().equalsIgnoreCase( algorithm ) )
+ {
+ return ENC_METHOD_3DES;
+ }
+
+ if ( ENC_METHOD_BLOWFISH.getName().equalsIgnoreCase( algorithm ) )
+ {
+ return ENC_METHOD_BLOWFISH;
+ }
+
+ if ( ENC_METHOD_RC4.getName().equalsIgnoreCase( algorithm ) )
+ {
+ return ENC_METHOD_RC4;
+ }
+ */
+
return null;
}
}
Propchange: directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/constants/MetaSchemaConstants.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Sat Oct 30 01:51:50 2010
@@ -4,4 +4,5 @@
/directory/shared/branches/shared-subtree/ldap-constants/src/main/java/org/apache/directory/shared/ldap/constants/MetaSchemaConstants.java:965208-965686
/directory/shared/branches/xdbm-refactoring/ldap-constants/src/main/java/org/apache/directory/shared/ldap/constants/MetaSchemaConstants.java:945830-946347
/directory/shared/branches-dnfactory-experiment/ldap-constants/src/main/java/org/apache/directory/shared/ldap/constants/MetaSchemaConstants.java:980350-980351
+/directory/shared/trunk/ldap/src/main/java/org/apache/directory/shared/ldap/constants/MetaSchemaConstants.java:1023442-1028955
/directory/shared/trunk/ldap-constants/src/main/java/org/apache/directory/shared/ldap/constants/MetaSchemaConstants.java:519076-580502
Modified: directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/filter/AbstractExprNode.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/filter/AbstractExprNode.java?rev=1028966&r1=1028965&r2=1028966&view=diff
==============================================================================
--- directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/filter/AbstractExprNode.java (original)
+++ directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/filter/AbstractExprNode.java Sat Oct 30 01:51:50 2010
@@ -145,6 +145,11 @@ public abstract class AbstractExprNode i
*/
protected static Value<?> escapeFilterValue( Value<?> value )
{
+ if ( value.isNull() )
+ {
+ return value;
+ }
+
StringBuilder sb = null;
String val;
@@ -195,7 +200,7 @@ public abstract class AbstractExprNode i
sb.append( digit.toUpperCase() );
}
}
-
+
return new StringValue( sb.toString() );
}
Modified: directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/filter/ApproximateNode.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/filter/ApproximateNode.java?rev=1028966&r1=1028965&r2=1028966&view=diff
==============================================================================
--- directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/filter/ApproximateNode.java (original)
+++ directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/filter/ApproximateNode.java Sat Oct 30 01:51:50 2010
@@ -72,7 +72,13 @@ public class ApproximateNode<T> extends
buf.append( attribute );
}
- buf.append( "~=" ).append( getEscapedValue() );
+ buf.append( "~=" );
+
+ Value<?> escapedValue = getEscapedValue();
+ if ( !escapedValue.isNull())
+ {
+ buf.append( escapedValue );
+ }
buf.append( super.toString() );
Modified: directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/filter/EqualityNode.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/filter/EqualityNode.java?rev=1028966&r1=1028965&r2=1028966&view=diff
==============================================================================
--- directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/filter/EqualityNode.java (original)
+++ directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/filter/EqualityNode.java Sat Oct 30 01:51:50 2010
@@ -74,7 +74,13 @@ public class EqualityNode<T> extends Sim
buf.append( attribute );
}
- buf.append( "=" ).append( getEscapedValue() );
+ buf.append( "=" );
+
+ Value<?> escapedValue = getEscapedValue();
+ if ( !escapedValue.isNull())
+ {
+ buf.append( escapedValue );
+ }
buf.append( super.toString() );
Modified: directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/filter/GreaterEqNode.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/filter/GreaterEqNode.java?rev=1028966&r1=1028965&r2=1028966&view=diff
==============================================================================
--- directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/filter/GreaterEqNode.java (original)
+++ directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/filter/GreaterEqNode.java Sat Oct 30 01:51:50 2010
@@ -74,7 +74,13 @@ public class GreaterEqNode<T> extends Si
buf.append( attribute );
}
- buf.append( ">=" ).append( getEscapedValue() );
+ buf.append( ">=" );
+
+ Value<?> escapedValue = getEscapedValue();
+ if ( !escapedValue.isNull())
+ {
+ buf.append( escapedValue );
+ }
buf.append( super.toString() );
Modified: directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/filter/LessEqNode.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/filter/LessEqNode.java?rev=1028966&r1=1028965&r2=1028966&view=diff
==============================================================================
--- directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/filter/LessEqNode.java (original)
+++ directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/filter/LessEqNode.java Sat Oct 30 01:51:50 2010
@@ -74,7 +74,13 @@ public class LessEqNode<T> extends Simpl
buf.append( attribute );
}
- buf.append( "<=" ).append( getEscapedValue() );
+ buf.append( "<=" );
+
+ Value<?> escapedValue = getEscapedValue();
+ if ( !escapedValue.isNull())
+ {
+ buf.append( escapedValue );
+ }
buf.append( super.toString() );
Modified: directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/name/RDN.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/name/RDN.java?rev=1028966&r1=1028965&r2=1028966&view=diff
==============================================================================
--- directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/name/RDN.java (original)
+++ directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/name/RDN.java Sat Oct 30 01:51:50 2010
@@ -29,6 +29,7 @@ import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import java.util.TreeSet;
+import java.util.concurrent.atomic.AtomicBoolean;
import org.apache.commons.collections.MultiMap;
import org.apache.commons.collections.map.MultiValueMap;
@@ -188,7 +189,7 @@ public class RDN implements Cloneable, C
public static final int EQUAL = 0;
/** A flag used to tell if the RDN has been normalized */
- private boolean normalized;
+ private AtomicBoolean normalized = new AtomicBoolean();
/** the schema manager */
private transient SchemaManager schemaManager;
@@ -217,7 +218,7 @@ public class RDN implements Cloneable, C
this.schemaManager = schemaManager;
upName = "";
normName = "";
- normalized = false;
+ normalized.set( false );
}
@@ -243,12 +244,12 @@ public class RDN implements Cloneable, C
{
this.schemaManager = schemaManager;
normalize( schemaManager.getNormalizerMapping() );
- normalized = true;
+ normalized.set( true );
}
else
{
normalize();
- normalized = false;
+ normalized.set( false );
}
upName = rdn;
@@ -259,7 +260,7 @@ public class RDN implements Cloneable, C
upName = "";
normName = "";
length = 0;
- normalized = false;
+ normalized.set( false );
}
}
@@ -304,12 +305,12 @@ public class RDN implements Cloneable, C
if( schemaManager != null )
{
- normalized = true;
+ normalized.set( true );
}
else
{
// As strange as it seems, the RDN is *not* normalized against the schema at this point
- normalized = false;
+ normalized.set( false );
}
}
@@ -353,7 +354,7 @@ public class RDN implements Cloneable, C
{
this.schemaManager = schemaManager;
normalize( schemaManager.getNormalizerMapping() );
- normalized = true;
+ normalized.set( true );
}
else
{
@@ -361,7 +362,7 @@ public class RDN implements Cloneable, C
normalize();
// As strange as it seems, the RDN is *not* normalized against the schema at this point
- normalized = false;
+ normalized.set( false );
}
}
@@ -394,7 +395,7 @@ public class RDN implements Cloneable, C
this.length = length;
this.upName = upName;
this.normName = normName;
- normalized = true;
+ normalized.set( true );
}
@@ -411,7 +412,7 @@ public class RDN implements Cloneable, C
this.upName = rdn.getName();
this.start = rdn.start;
this.length = rdn.length;
- normalized = rdn.normalized;
+ normalized.set(rdn.normalized.get());
switch ( rdn.getNbAtavs() )
{
@@ -506,13 +507,7 @@ public class RDN implements Cloneable, C
*/
public RDN normalize( SchemaManager sm ) throws LdapInvalidDnException
{
- String savedUpName = getName();
- DN.rdnOidToName( this, sm.getNormalizerMapping() );
- normalize();
- this.upName = savedUpName;
- normalized = true;
-
- return this;
+ return normalize( sm.getNormalizerMapping() );
}
@@ -526,13 +521,26 @@ public class RDN implements Cloneable, C
*/
public RDN normalize( Map<String, OidNormalizer> oidsMap ) throws LdapInvalidDnException
{
- String savedUpName = getName();
- DN.rdnOidToName( this, oidsMap );
- normalize();
- this.upName = savedUpName;
- normalized = true;
+ if ( ( oidsMap == null ) || ( oidsMap.isEmpty() ) )
+ {
+ return this;
+ }
- return this;
+ if ( normalized.get() )
+ {
+ return this;
+ }
+
+ synchronized ( this )
+ {
+ String savedUpName = getName();
+ DN.rdnOidToName( this, oidsMap );
+ normalize();
+ this.upName = savedUpName;
+ normalized.set( true );
+
+ return this;
+ }
}
@@ -674,7 +682,7 @@ public class RDN implements Cloneable, C
upName = "";
start = -1;
length = 0;
- normalized = false;
+ normalized.set( false );
}
@@ -847,6 +855,7 @@ public class RDN implements Cloneable, C
try
{
RDN rdn = ( RDN ) super.clone();
+ rdn.normalized = new AtomicBoolean( normalized.get() );
// The AttributeTypeAndValue is immutable. We won't clone it
@@ -1449,7 +1458,7 @@ public class RDN implements Cloneable, C
*/
public boolean isNormalized()
{
- return normalized;
+ return normalized.get();
}
Modified: directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/trigger/LdapOperation.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/trigger/LdapOperation.java?rev=1028966&r1=1028965&r2=1028966&view=diff
==============================================================================
--- directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/trigger/LdapOperation.java (original)
+++ directory/shared/branches/shared-config/ldap/src/main/java/org/apache/directory/shared/ldap/trigger/LdapOperation.java Sat Oct 30 01:51:50 2010
@@ -24,38 +24,42 @@ package org.apache.directory.shared.ldap
/**
* An enumeration that represents change inducing LDAP operations.
*
- * TODO: should this be an enum?
- *
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
*/
-public final class LdapOperation
+public enum LdapOperation
{
- public static final LdapOperation MODIFY = new LdapOperation( "Modify" );
+ MODIFY( "Modify" ),
- public static final LdapOperation ADD = new LdapOperation( "Add" );
+ ADD( "Add" ),
- public static final LdapOperation DELETE = new LdapOperation( "Delete" );
+ DELETE( "Delete" ),
- public static final LdapOperation MODIFYDN = new LdapOperation( "ModifyDN" );
+ MODIFYDN( "ModifyDN" ),
- public static final LdapOperation MODIFYDN_RENAME = new LdapOperation( "ModifyDN.Rename" );
+ MODIFYDN_RENAME( "ModifyDN.Rename" ),
- public static final LdapOperation MODIFYDN_EXPORT = new LdapOperation( "ModifyDN.Export" );
+ MODIFYDN_EXPORT( "ModifyDN.Export" ),
- public static final LdapOperation MODIFYDN_IMPORT = new LdapOperation( "ModifyDN.Import" );
+ MODIFYDN_IMPORT( "ModifyDN.Import" );
private final String name;
- private LdapOperation( String name )
+ /**
+ *
+ * Creates a new instance of LdapOperation.
+ *
+ * @param name
+ */
+ LdapOperation( String name )
{
this.name = name;
}
/**
- * Returns the name of this LDAP operation.
+ * @return the name of this LDAP operation
*/
public String getName()
{
@@ -67,53 +71,4 @@ public final class LdapOperation
{
return name;
}
-
-
- /**
- * @see java.lang.Object#hashCode()
- * @return the instance's hash code
- */
- public int hashCode()
- {
- int h = 37;
-
- h = h*17 + ( ( name == null ) ? 0 : name.hashCode() );
-
- return h;
- }
-
-
- /**
- * @see java.lang.Object#equals(java.lang.Object)
- */
- public boolean equals( Object obj )
- {
- if ( this == obj )
- {
- return true;
- }
-
- if ( ! ( obj instanceof LdapOperation ) )
- {
- return false;
- }
-
- final LdapOperation other = ( LdapOperation ) obj;
-
- if ( name == null )
- {
- if ( other.name != null )
- {
- return false;
- }
- else
- {
- return true;
- }
- }
- else
- {
- return name.equals( other.name );
- }
- }
}
Modified: directory/shared/branches/shared-config/ldap/src/test/java/org/apache/directory/shared/ldap/entry/BinaryValueAttributeTypeTest.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-config/ldap/src/test/java/org/apache/directory/shared/ldap/entry/BinaryValueAttributeTypeTest.java?rev=1028966&r1=1028965&r2=1028966&view=diff
==============================================================================
--- directory/shared/branches/shared-config/ldap/src/test/java/org/apache/directory/shared/ldap/entry/BinaryValueAttributeTypeTest.java (original)
+++ directory/shared/branches/shared-config/ldap/src/test/java/org/apache/directory/shared/ldap/entry/BinaryValueAttributeTypeTest.java Sat Oct 30 01:51:50 2010
@@ -36,8 +36,6 @@ import java.util.Arrays;
import org.apache.directory.junit.tools.Concurrent;
import org.apache.directory.junit.tools.ConcurrentJunitRunner;
-import org.apache.directory.shared.ldap.entry.BinaryValue;
-import org.apache.directory.shared.ldap.entry.Value;
import org.apache.directory.shared.ldap.exception.LdapException;
import org.apache.directory.shared.ldap.schema.AttributeType;
import org.apache.directory.shared.ldap.schema.LdapSyntax;
Modified: directory/shared/branches/shared-config/ldap/src/test/java/org/apache/directory/shared/ldap/filter/FilterToStringTest.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-config/ldap/src/test/java/org/apache/directory/shared/ldap/filter/FilterToStringTest.java?rev=1028966&r1=1028965&r2=1028966&view=diff
==============================================================================
--- directory/shared/branches/shared-config/ldap/src/test/java/org/apache/directory/shared/ldap/filter/FilterToStringTest.java (original)
+++ directory/shared/branches/shared-config/ldap/src/test/java/org/apache/directory/shared/ldap/filter/FilterToStringTest.java Sat Oct 30 01:51:50 2010
@@ -45,6 +45,34 @@ public class FilterToStringTest
String str = "(ou=test)";
ExprNode node = FilterParser.parse( str );
assertEquals( str, node.toString() );
+
+ str = "(ou~=test)";
+ node = FilterParser.parse( str );
+ assertEquals( str, node.toString() );
+
+ str = "(ou>=test)";
+ node = FilterParser.parse( str );
+ assertEquals( str, node.toString() );
+
+ str = "(ou<=test)";
+ node = FilterParser.parse( str );
+ assertEquals( str, node.toString() );
+
+ str="(ou=)";
+ node = FilterParser.parse( str );
+ assertEquals( str, node.toString() );
+
+ str="(ou~=)";
+ node = FilterParser.parse( str );
+ assertEquals( str, node.toString() );
+
+ str="(ou>=)";
+ node = FilterParser.parse( str );
+ assertEquals( str, node.toString() );
+
+ str="(ou<=)";
+ node = FilterParser.parse( str );
+ assertEquals( str, node.toString() );
}
Modified: directory/shared/branches/shared-config/ldap/src/test/java/org/apache/directory/shared/ldap/name/DNTest.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-config/ldap/src/test/java/org/apache/directory/shared/ldap/name/DNTest.java?rev=1028966&r1=1028965&r2=1028966&view=diff
==============================================================================
--- directory/shared/branches/shared-config/ldap/src/test/java/org/apache/directory/shared/ldap/name/DNTest.java (original)
+++ directory/shared/branches/shared-config/ldap/src/test/java/org/apache/directory/shared/ldap/name/DNTest.java Sat Oct 30 01:51:50 2010
@@ -50,7 +50,7 @@ import org.apache.directory.shared.ldap.
import org.apache.directory.shared.ldap.schema.normalizers.DeepTrimToLowerNormalizer;
import org.apache.directory.shared.ldap.schema.normalizers.OidNormalizer;
import org.apache.directory.shared.ldap.util.StringTools;
-import org.junit.Before;
+import org.junit.BeforeClass;
import org.junit.Ignore;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -65,15 +65,15 @@ import org.junit.runner.RunWith;
@Concurrent()
public class DNTest
{
- private Map<String, OidNormalizer> oids;
- private Map<String, OidNormalizer> oidOids;
+ private static Map<String, OidNormalizer> oids;
+ private static Map<String, OidNormalizer> oidOids;
/**
* Initialize OIDs maps for normalization
*/
- @Before
- public void initMapOids()
+ @BeforeClass
+ public static void initMapOids()
{
oids = new HashMap<String, OidNormalizer>();
Copied: directory/shared/branches/shared-config/ldap/src/test/java/org/apache/directory/shared/ldap/name/MultiThreadedTest.java (from r1028955, directory/shared/trunk/ldap/src/test/java/org/apache/directory/shared/ldap/name/MultiThreadedTest.java)
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-config/ldap/src/test/java/org/apache/directory/shared/ldap/name/MultiThreadedTest.java?p2=directory/shared/branches/shared-config/ldap/src/test/java/org/apache/directory/shared/ldap/name/MultiThreadedTest.java&p1=directory/shared/trunk/ldap/src/test/java/org/apache/directory/shared/ldap/name/MultiThreadedTest.java&r1=1028955&r2=1028966&rev=1028966&view=diff
==============================================================================
--- directory/shared/trunk/ldap/src/test/java/org/apache/directory/shared/ldap/name/MultiThreadedTest.java (original)
+++ directory/shared/branches/shared-config/ldap/src/test/java/org/apache/directory/shared/ldap/name/MultiThreadedTest.java Sat Oct 30 01:51:50 2010
@@ -33,7 +33,6 @@ import org.apache.directory.shared.ldap.
import org.apache.directory.shared.ldap.schema.normalizers.DeepTrimToLowerNormalizer;
import org.apache.directory.shared.ldap.schema.normalizers.OidNormalizer;
import org.junit.BeforeClass;
-import org.junit.Ignore;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
Modified: directory/shared/branches/shared-config/ldap/src/test/java/org/apache/directory/shared/ldap/schema/syntax/parser/SchemaParserTestUtils.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-config/ldap/src/test/java/org/apache/directory/shared/ldap/schema/syntax/parser/SchemaParserTestUtils.java?rev=1028966&r1=1028965&r2=1028966&view=diff
==============================================================================
--- directory/shared/branches/shared-config/ldap/src/test/java/org/apache/directory/shared/ldap/schema/syntax/parser/SchemaParserTestUtils.java (original)
+++ directory/shared/branches/shared-config/ldap/src/test/java/org/apache/directory/shared/ldap/schema/syntax/parser/SchemaParserTestUtils.java Sat Oct 30 01:51:50 2010
@@ -20,15 +20,15 @@
package org.apache.directory.shared.ldap.schema.syntax.parser;
-import java.text.ParseException;
-import java.util.ArrayList;
-import java.util.List;
-
-import static junit.framework.Assert.fail;
import static junit.framework.Assert.assertEquals;
+import static junit.framework.Assert.assertFalse;
import static junit.framework.Assert.assertNotNull;
import static junit.framework.Assert.assertTrue;
-import static junit.framework.Assert.assertFalse;
+import static junit.framework.Assert.fail;
+
+import java.text.ParseException;
+import java.util.ArrayList;
+import java.util.List;
import org.apache.directory.shared.ldap.schema.SchemaObject;
import org.apache.directory.shared.ldap.schema.parsers.AbstractSchemaParser;