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/08/18 03:07:15 UTC

svn commit: r986545 - in /directory: apacheds/branches/apacheds-codec-merge/server-tools/src/main/java/org/apache/directory/server/tools/ shared/branches/shared-codec-merge/ldap/src/main/java/org/apache/directory/shared/ldap/codec/

Author: elecharny
Date: Wed Aug 18 01:07:14 2010
New Revision: 986545

URL: http://svn.apache.org/viewvc?rev=986545&view=rev
Log:
o More codec classes removal
o Commented the code inside ImportCommand, which needs to be rewritten to use the API instead of plain socket.

Removed:
    directory/shared/branches/shared-codec-merge/ldap/src/main/java/org/apache/directory/shared/ldap/codec/LdapMessageCodec.java
    directory/shared/branches/shared-codec-merge/ldap/src/main/java/org/apache/directory/shared/ldap/codec/LdapResponseCodec.java
    directory/shared/branches/shared-codec-merge/ldap/src/main/java/org/apache/directory/shared/ldap/codec/LdapResultCodec.java
Modified:
    directory/apacheds/branches/apacheds-codec-merge/server-tools/src/main/java/org/apache/directory/server/tools/ImportCommand.java
    directory/shared/branches/shared-codec-merge/ldap/src/main/java/org/apache/directory/shared/ldap/codec/LdapEncoder.java
    directory/shared/branches/shared-codec-merge/ldap/src/main/java/org/apache/directory/shared/ldap/codec/LdapTransformer.java

Modified: directory/apacheds/branches/apacheds-codec-merge/server-tools/src/main/java/org/apache/directory/server/tools/ImportCommand.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-codec-merge/server-tools/src/main/java/org/apache/directory/server/tools/ImportCommand.java?rev=986545&r1=986544&r2=986545&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-codec-merge/server-tools/src/main/java/org/apache/directory/server/tools/ImportCommand.java (original)
+++ directory/apacheds/branches/apacheds-codec-merge/server-tools/src/main/java/org/apache/directory/server/tools/ImportCommand.java Wed Aug 18 01:07:14 2010
@@ -35,42 +35,12 @@ import org.apache.directory.daemon.Avail
 import org.apache.directory.server.i18n.I18n;
 import org.apache.directory.shared.asn1.ber.Asn1Decoder;
 import org.apache.directory.shared.asn1.ber.IAsn1Container;
-import org.apache.directory.shared.asn1.ber.tlv.TLVStateEnum;
 import org.apache.directory.shared.asn1.codec.DecoderException;
 import org.apache.directory.shared.asn1.codec.EncoderException;
-import org.apache.directory.shared.ldap.codec.LdapMessageCodec;
 import org.apache.directory.shared.ldap.codec.LdapMessageContainer;
-import org.apache.directory.shared.ldap.codec.LdapResponseCodec;
-import org.apache.directory.shared.ldap.codec.LdapResultCodec;
-import org.apache.directory.shared.ldap.entry.Entry;
-import org.apache.directory.shared.ldap.entry.EntryAttribute;
-import org.apache.directory.shared.ldap.entry.Modification;
-import org.apache.directory.shared.ldap.entry.Value;
-import org.apache.directory.shared.ldap.exception.LdapException;
-import org.apache.directory.shared.ldap.exception.LdapInvalidDnException;
-import org.apache.directory.shared.ldap.ldif.ChangeType;
-import org.apache.directory.shared.ldap.ldif.LdifEntry;
-import org.apache.directory.shared.ldap.ldif.LdifReader;
-import org.apache.directory.shared.ldap.message.AddRequestImpl;
-import org.apache.directory.shared.ldap.message.BindRequestImpl;
-import org.apache.directory.shared.ldap.message.DeleteRequestImpl;
 import org.apache.directory.shared.ldap.message.LdapProtocolEncoder;
-import org.apache.directory.shared.ldap.message.ModifyDnRequestImpl;
-import org.apache.directory.shared.ldap.message.ModifyRequestImpl;
-import org.apache.directory.shared.ldap.message.ResultCodeEnum;
 import org.apache.directory.shared.ldap.message.UnbindRequestImpl;
-import org.apache.directory.shared.ldap.message.internal.BindResponse;
-import org.apache.directory.shared.ldap.message.internal.ExtendedResponse;
-import org.apache.directory.shared.ldap.message.internal.AddRequest;
-import org.apache.directory.shared.ldap.message.internal.BindRequest;
-import org.apache.directory.shared.ldap.message.internal.DeleteRequest;
-import org.apache.directory.shared.ldap.message.internal.Message;
-import org.apache.directory.shared.ldap.message.internal.ModifyDnRequest;
-import org.apache.directory.shared.ldap.message.internal.ModifyRequest;
 import org.apache.directory.shared.ldap.message.internal.UnbindRequest;
-import org.apache.directory.shared.ldap.name.DN;
-import org.apache.directory.shared.ldap.name.RDN;
-import org.apache.directory.shared.ldap.util.StringTools;
 
 
 /**
@@ -150,9 +120,9 @@ public class ImportCommand extends ToolC
     }
 
 
+    /*
     private LdapMessageCodec readResponse( ByteBuffer bb ) throws IOException, DecoderException
     {
-
         LdapMessageCodec messageResp = null;
 
         while ( true )
@@ -206,7 +176,6 @@ public class ImportCommand extends ToolC
         }
 
         return messageResp;
-
     }
 
 
@@ -214,11 +183,9 @@ public class ImportCommand extends ToolC
      * Send the entry to the encoder, then wait for a
      * reponse from the LDAP server on the results of the operation.
      * 
-     * @param ldifEntry
-     *            The entry to add
-     * @param msgId
-     *            message id number
-     */
+     * @param ldifEntry The entry to add
+     * @param msgId message id number
+     *
     private int addEntry( LdifEntry ldifEntry, int messageId ) throws IOException, DecoderException, LdapException,
         EncoderException
     {
@@ -288,7 +255,7 @@ public class ImportCommand extends ToolC
      *            The entry to delete
      * @param msgId
      *            message id number
-     */
+     *
     private int deleteEntry( LdifEntry entry, int messageId ) throws IOException, DecoderException,
         LdapInvalidDnException, EncoderException
     {
@@ -342,7 +309,7 @@ public class ImportCommand extends ToolC
      *            The entry to modify
      * @param msgId
      *            message id number
-     */
+     *
     private int changeModRDNEntry( LdifEntry entry, int messageId ) throws IOException, DecoderException,
         LdapInvalidDnException, EncoderException
     {
@@ -404,7 +371,7 @@ public class ImportCommand extends ToolC
      * 
      * @param entry The entry to modify
      * @param msgId message id number
-     */
+     *
     private int changeModifyEntry( LdifEntry entry, int messageId ) throws IOException, DecoderException,
         LdapInvalidDnException, EncoderException
     {
@@ -466,7 +433,7 @@ public class ImportCommand extends ToolC
      *            The entry to add
      * @param msgId
      *            message id number
-     */
+     *
     private int changeEntry( LdifEntry entry, int messageId ) throws IOException, DecoderException, LdapException,
         EncoderException
     {
@@ -496,7 +463,7 @@ public class ImportCommand extends ToolC
      * Bind to the ldap server
      * 
      * @param messageId The message Id
-     */
+     *
     private void bind( int messageId ) throws LdapInvalidDnException, EncoderException, DecoderException, IOException
     {
         BindRequest bindRequest = new BindRequestImpl( messageId );
@@ -574,6 +541,11 @@ public class ImportCommand extends ToolC
      */
     public void execute( CommandLine cmd ) throws Exception
     {
+        return;
+    }
+
+
+    /*
         processOptions( cmd );
 
         if ( isDebugEnabled() )

Modified: directory/shared/branches/shared-codec-merge/ldap/src/main/java/org/apache/directory/shared/ldap/codec/LdapEncoder.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-codec-merge/ldap/src/main/java/org/apache/directory/shared/ldap/codec/LdapEncoder.java?rev=986545&r1=986544&r2=986545&view=diff
==============================================================================
--- directory/shared/branches/shared-codec-merge/ldap/src/main/java/org/apache/directory/shared/ldap/codec/LdapEncoder.java (original)
+++ directory/shared/branches/shared-codec-merge/ldap/src/main/java/org/apache/directory/shared/ldap/codec/LdapEncoder.java Wed Aug 18 01:07:14 2010
@@ -20,20 +20,14 @@
 package org.apache.directory.shared.ldap.codec;
 
 
-import java.io.IOException;
 import java.io.OutputStream;
 import java.nio.ByteBuffer;
-import java.nio.channels.Channels;
-import java.nio.channels.WritableByteChannel;
 
 import org.apache.directory.shared.asn1.codec.EncoderException;
 import org.apache.directory.shared.asn1.codec.stateful.EncoderCallback;
-import org.apache.directory.shared.i18n.I18n;
-import org.apache.directory.shared.ldap.message.internal.Message;
 import org.apache.directory.shared.ldap.message.spi.Provider;
 import org.apache.directory.shared.ldap.message.spi.ProviderEncoder;
 import org.apache.directory.shared.ldap.message.spi.ProviderException;
-import org.apache.directory.shared.ldap.util.StringTools;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -45,10 +39,6 @@ import org.slf4j.LoggerFactory;
  */
 public class LdapEncoder implements ProviderEncoder
 {
-    //TM private static long cumul = 0L;
-    //TM private static long count = 0L;
-    //TM private Object lock = new Object();
-
     /** The logger */
     private static Logger log = LoggerFactory.getLogger( LdapEncoder.class );
 
@@ -58,9 +48,6 @@ public class LdapEncoder implements Prov
     /** The associated Provider */
     final Provider provider;
 
-    /** The callback to call when the encoding is done */
-    private EncoderCallback encodeCallback;
-
 
     /**
      * Creates an instance of a Ldap Encoder implementation.
@@ -83,36 +70,6 @@ public class LdapEncoder implements Prov
      */
     public void encodeBlocking( Object lock, OutputStream out, Object obj ) throws ProviderException
     {
-        try
-        {
-            if ( IS_DEBUG )
-            {
-                log.debug( "Encoding this LdapMessage : " + obj );
-            }
-
-            ByteBuffer encoded = ( ( LdapMessageCodec ) obj ).encode();
-
-            try
-            {
-                ( ( ByteBuffer ) encoded ).flip();
-                WritableByteChannel channel = Channels.newChannel( out );
-                channel.write( ( ByteBuffer ) encoded );
-            }
-            catch ( IOException e )
-            {
-                ProviderException pe = new ProviderException( provider, I18n.err( I18n.ERR_04065, "", e
-                    .getLocalizedMessage() ) );
-                throw pe;
-            }
-
-        }
-        catch ( EncoderException e )
-        {
-            String msg = I18n.err( I18n.ERR_04065, obj, e.getLocalizedMessage() );
-            log.error( msg );
-            ProviderException pe = new ProviderException( provider, msg );
-            throw pe;
-        }
     }
 
 
@@ -126,66 +83,7 @@ public class LdapEncoder implements Prov
      */
     public ByteBuffer encodeBlocking( Object obj ) throws ProviderException
     {
-        try
-        {
-            if ( IS_DEBUG )
-            {
-                log.debug( "Encoding this LdapMessage : " + obj );
-            }
-
-            ByteBuffer pdu = ( ( LdapMessageCodec ) obj ).encode();
-
-            if ( IS_DEBUG )
-            {
-                log.debug( "Encoded PDU : " + StringTools.dumpBytes( pdu.array() ) );
-            }
-
-            pdu.flip();
-            return pdu;
-        }
-        catch ( EncoderException e )
-        {
-            String msg = I18n.err( I18n.ERR_04065, obj, e.getLocalizedMessage() );
-            log.error( msg );
-            ProviderException pe = new ProviderException( provider, msg );
-            throw pe;
-        }
-    }
-
-
-    /**
-     * Encodes a LdapMessage, and return a byte array containing the resulting
-     * PDU
-     * 
-     * @param obj The LdapMessage to encode
-     * @return The byte[] containing the PDU
-     * @throws ProviderException If anything went wrong
-     */
-    public byte[] encodeToArray( Object obj ) throws ProviderException
-    {
-        try
-        {
-            if ( IS_DEBUG )
-            {
-                log.debug( "Encoding this LdapMessage : " + obj );
-            }
-
-            byte[] pdu = ( ( LdapMessageCodec ) obj ).encode().array();
-
-            if ( IS_DEBUG )
-            {
-                log.debug( "Encoded PDU : " + StringTools.dumpBytes( pdu ) );
-            }
-
-            return pdu;
-        }
-        catch ( EncoderException e )
-        {
-            String msg = I18n.err( I18n.ERR_04065, obj, e.getLocalizedMessage() );
-            log.error( msg );
-            ProviderException pe = new ProviderException( provider, msg );
-            throw pe;
-        }
+        return null;
     }
 
 
@@ -208,30 +106,6 @@ public class LdapEncoder implements Prov
      */
     public void encode( Object request ) throws EncoderException
     {
-        //TM long t0 = System.nanoTime();
-        Message message = ( Message ) request;
-        ByteBuffer encoded = null;
-
-        LdapMessageCodec ldapRequest = ( LdapMessageCodec ) LdapTransformer.transform( ( Message ) request );
-        encoded = ldapRequest.encode();
-
-        encoded.flip();
-
-        encodeCallback.encodeOccurred( null, encoded );
-        //TM long t1 = System.nanoTime();
-
-        //TM synchronized (lock)
-        //TM {
-        //TM     cumul += (t1 - t0);
-        //TM     count++;
-        //TM    
-        //TM
-        //TM     if ( count % 1000L == 0)
-        //TM     {
-        //TM         System.out.println( "Encode cost : " + (cumul/count) );
-        //TM         cumul = 0L;
-        //TM     }
-        //TM }
     }
 
 
@@ -242,6 +116,5 @@ public class LdapEncoder implements Prov
      */
     public void setCallback( EncoderCallback cb )
     {
-        encodeCallback = cb;
     }
 }

Modified: directory/shared/branches/shared-codec-merge/ldap/src/main/java/org/apache/directory/shared/ldap/codec/LdapTransformer.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-codec-merge/ldap/src/main/java/org/apache/directory/shared/ldap/codec/LdapTransformer.java?rev=986545&r1=986544&r2=986545&view=diff
==============================================================================
--- directory/shared/branches/shared-codec-merge/ldap/src/main/java/org/apache/directory/shared/ldap/codec/LdapTransformer.java (original)
+++ directory/shared/branches/shared-codec-merge/ldap/src/main/java/org/apache/directory/shared/ldap/codec/LdapTransformer.java Wed Aug 18 01:07:14 2010
@@ -20,40 +20,7 @@
 package org.apache.directory.shared.ldap.codec;
 
 
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.directory.shared.asn1.codec.DecoderException;
-import org.apache.directory.shared.i18n.I18n;
-import org.apache.directory.shared.ldap.codec.search.AndFilter;
-import org.apache.directory.shared.ldap.codec.search.AttributeValueAssertionFilter;
-import org.apache.directory.shared.ldap.codec.search.ConnectorFilter;
-import org.apache.directory.shared.ldap.codec.search.ExtensibleMatchFilter;
-import org.apache.directory.shared.ldap.codec.search.Filter;
-import org.apache.directory.shared.ldap.codec.search.NotFilter;
-import org.apache.directory.shared.ldap.codec.search.OrFilter;
-import org.apache.directory.shared.ldap.codec.search.PresentFilter;
-import org.apache.directory.shared.ldap.codec.search.SubstringFilter;
-import org.apache.directory.shared.ldap.entry.Value;
-import org.apache.directory.shared.ldap.filter.AndNode;
-import org.apache.directory.shared.ldap.filter.ApproximateNode;
-import org.apache.directory.shared.ldap.filter.BranchNode;
-import org.apache.directory.shared.ldap.filter.EqualityNode;
-import org.apache.directory.shared.ldap.filter.ExprNode;
-import org.apache.directory.shared.ldap.filter.ExtensibleNode;
-import org.apache.directory.shared.ldap.filter.GreaterEqNode;
-import org.apache.directory.shared.ldap.filter.LeafNode;
-import org.apache.directory.shared.ldap.filter.LessEqNode;
-import org.apache.directory.shared.ldap.filter.NotNode;
-import org.apache.directory.shared.ldap.filter.OrNode;
-import org.apache.directory.shared.ldap.filter.PresenceNode;
-import org.apache.directory.shared.ldap.filter.SimpleNode;
-import org.apache.directory.shared.ldap.filter.SubstringNode;
-import org.apache.directory.shared.ldap.message.control.Control;
 import org.apache.directory.shared.ldap.message.internal.Message;
-import org.apache.directory.shared.ldap.schema.SchemaManager;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 
 /**
@@ -63,302 +30,6 @@ import org.slf4j.LoggerFactory;
  */
 public class LdapTransformer
 {
-    /** The logger */
-    private static Logger LOG = LoggerFactory.getLogger( LdapTransformer.class );
-
-    /** A speedup for logger */
-    private static final boolean IS_DEBUG = LOG.isDebugEnabled();
-
-
-    /**
-     * Transform the Filter part of a SearchRequest to an ExprNode
-     * 
-     * @param codecFilter The filter to be transformed
-     * @return An ExprNode
-     */
-    private static ExprNode transformFilter( Filter codecFilter )
-    {
-        if ( codecFilter != null )
-        {
-            // Transform OR, AND or NOT leaves
-            if ( codecFilter instanceof ConnectorFilter )
-            {
-                BranchNode branch = null;
-
-                if ( codecFilter instanceof AndFilter )
-                {
-                    branch = new AndNode();
-                }
-                else if ( codecFilter instanceof OrFilter )
-                {
-                    branch = new OrNode();
-                }
-                else if ( codecFilter instanceof NotFilter )
-                {
-                    branch = new NotNode();
-                }
-
-                List<Filter> filtersSet = ( ( ConnectorFilter ) codecFilter ).getFilterSet();
-
-                // Loop on all AND/OR children
-                if ( filtersSet != null )
-                {
-                    for ( Filter filter : filtersSet )
-                    {
-                        branch.addNode( transformFilter( filter ) );
-                    }
-                }
-
-                return branch;
-            }
-            else
-            {
-                // Transform PRESENT or ATTRIBUTE_VALUE_ASSERTION
-                LeafNode branch = null;
-
-                if ( codecFilter instanceof PresentFilter )
-                {
-                    branch = new PresenceNode( ( ( PresentFilter ) codecFilter ).getAttributeDescription() );
-                }
-                else if ( codecFilter instanceof AttributeValueAssertionFilter )
-                {
-                    AttributeValueAssertion ava = ( ( AttributeValueAssertionFilter ) codecFilter ).getAssertion();
-
-                    // Transform =, >=, <=, ~= filters
-                    switch ( ( ( AttributeValueAssertionFilter ) codecFilter ).getFilterType() )
-                    {
-                        case LdapConstants.EQUALITY_MATCH_FILTER:
-                            branch = new EqualityNode( ava.getAttributeDesc(), ava.getAssertionValue() );
-
-                            break;
-
-                        case LdapConstants.GREATER_OR_EQUAL_FILTER:
-                            branch = new GreaterEqNode( ava.getAttributeDesc(), ava.getAssertionValue() );
-
-                            break;
-
-                        case LdapConstants.LESS_OR_EQUAL_FILTER:
-                            branch = new LessEqNode( ava.getAttributeDesc(), ava.getAssertionValue() );
-
-                            break;
-
-                        case LdapConstants.APPROX_MATCH_FILTER:
-                            branch = new ApproximateNode( ava.getAttributeDesc(), ava.getAssertionValue() );
-
-                            break;
-                    }
-
-                }
-                else if ( codecFilter instanceof SubstringFilter )
-                {
-                    // Transform Substring filters
-                    SubstringFilter filter = ( SubstringFilter ) codecFilter;
-                    String initialString = null;
-                    String finalString = null;
-                    List<String> anyString = null;
-
-                    if ( filter.getInitialSubstrings() != null )
-                    {
-                        initialString = filter.getInitialSubstrings();
-                    }
-
-                    if ( filter.getFinalSubstrings() != null )
-                    {
-                        finalString = filter.getFinalSubstrings();
-                    }
-
-                    if ( filter.getAnySubstrings() != null )
-                    {
-                        anyString = new ArrayList<String>();
-
-                        for ( String any : filter.getAnySubstrings() )
-                        {
-                            anyString.add( any );
-                        }
-                    }
-
-                    branch = new SubstringNode( anyString, filter.getType(), initialString, finalString );
-                }
-                else if ( codecFilter instanceof ExtensibleMatchFilter )
-                {
-                    // Transform Extensible Match Filter
-                    ExtensibleMatchFilter filter = ( ExtensibleMatchFilter ) codecFilter;
-                    String matchingRule = null;
-
-                    Value<?> value = filter.getMatchValue();
-
-                    if ( filter.getMatchingRule() != null )
-                    {
-                        matchingRule = filter.getMatchingRule();
-                    }
-
-                    branch = new ExtensibleNode( filter.getType(), value, matchingRule, filter.isDnAttributes() );
-                }
-
-                return branch;
-            }
-        }
-        else
-        {
-            // We have found nothing to transform. Return null then.
-            return null;
-        }
-    }
-
-
-    /**
-     * Transform an ExprNode filter to a CodecFilter
-     * 
-     * @param exprNode The filter to be transformed
-     * @return A Codec filter
-     */
-    public static Filter transformFilter( SchemaManager schemaManager, ExprNode exprNode )
-    {
-        if ( exprNode != null )
-        {
-            Filter filter = null;
-
-            // Transform OR, AND or NOT leaves
-            if ( exprNode instanceof BranchNode )
-            {
-                if ( exprNode instanceof AndNode )
-                {
-                    filter = new AndFilter();
-                }
-                else if ( exprNode instanceof OrNode )
-                {
-                    filter = new OrFilter();
-                }
-                else if ( exprNode instanceof NotNode )
-                {
-                    filter = new NotFilter();
-                }
-
-                List<ExprNode> children = ( ( BranchNode ) exprNode ).getChildren();
-
-                // Loop on all AND/OR children
-                if ( children != null )
-                {
-                    for ( ExprNode child : children )
-                    {
-                        try
-                        {
-                            ( ( ConnectorFilter ) filter ).addFilter( transformFilter( schemaManager, child ) );
-                        }
-                        catch ( DecoderException de )
-                        {
-                            LOG.error( I18n.err( I18n.ERR_04112, de.getLocalizedMessage() ) );
-                            return null;
-                        }
-                    }
-                }
-            }
-            else
-            {
-                if ( exprNode instanceof PresenceNode )
-                {
-                    // Transform Presence Node
-                    filter = new PresentFilter();
-                    ( ( PresentFilter ) filter ).setAttributeDescription( ( ( PresenceNode ) exprNode ).getAttribute() );
-                }
-                else if ( exprNode instanceof SimpleNode<?> )
-                {
-                    if ( exprNode instanceof EqualityNode<?> )
-                    {
-                        filter = new AttributeValueAssertionFilter( LdapConstants.EQUALITY_MATCH_FILTER );
-                        AttributeValueAssertion assertion = new AttributeValueAssertion();
-                        assertion.setAttributeDesc( ( ( EqualityNode<?> ) exprNode ).getAttribute() );
-                        assertion.setAssertionValue( ( ( EqualityNode<?> ) exprNode ).getValue() );
-                        ( ( AttributeValueAssertionFilter ) filter ).setAssertion( assertion );
-                    }
-                    else if ( exprNode instanceof GreaterEqNode<?> )
-                    {
-                        filter = new AttributeValueAssertionFilter( LdapConstants.GREATER_OR_EQUAL_FILTER );
-                        AttributeValueAssertion assertion = new AttributeValueAssertion();
-                        assertion.setAttributeDesc( ( ( GreaterEqNode<?> ) exprNode ).getAttribute() );
-                        assertion.setAssertionValue( ( ( GreaterEqNode<?> ) exprNode ).getValue() );
-                        ( ( AttributeValueAssertionFilter ) filter ).setAssertion( assertion );
-                    }
-                    else if ( exprNode instanceof LessEqNode<?> )
-                    {
-                        filter = new AttributeValueAssertionFilter( LdapConstants.LESS_OR_EQUAL_FILTER );
-                        AttributeValueAssertion assertion = new AttributeValueAssertion();
-                        assertion.setAttributeDesc( ( ( LessEqNode<?> ) exprNode ).getAttribute() );
-                        assertion.setAssertionValue( ( ( LessEqNode<?> ) exprNode ).getValue() );
-                        ( ( AttributeValueAssertionFilter ) filter ).setAssertion( assertion );
-                    }
-                    else if ( exprNode instanceof ApproximateNode<?> )
-                    {
-                        filter = new AttributeValueAssertionFilter( LdapConstants.APPROX_MATCH_FILTER );
-                        AttributeValueAssertion assertion = new AttributeValueAssertion();
-                        assertion.setAttributeDesc( ( ( ApproximateNode<?> ) exprNode ).getAttribute() );
-                        assertion.setAssertionValue( ( ( ApproximateNode<?> ) exprNode ).getValue() );
-                        ( ( AttributeValueAssertionFilter ) filter ).setAssertion( assertion );
-                    }
-                }
-                else if ( exprNode instanceof SubstringNode )
-                {
-                    // Transform Substring Nodes
-                    filter = new SubstringFilter();
-
-                    ( ( SubstringFilter ) filter ).setType( ( ( SubstringNode ) exprNode ).getAttribute() );
-                    String initialString = ( ( SubstringNode ) exprNode ).getInitial();
-                    String finalString = ( ( SubstringNode ) exprNode ).getFinal();
-                    List<String> anyStrings = ( ( SubstringNode ) exprNode ).getAny();
-
-                    if ( initialString != null )
-                    {
-                        ( ( SubstringFilter ) filter ).setInitialSubstrings( initialString );
-                    }
-
-                    if ( finalString != null )
-                    {
-                        ( ( SubstringFilter ) filter ).setFinalSubstrings( finalString );
-                    }
-
-                    if ( anyStrings != null )
-                    {
-                        for ( String any : anyStrings )
-                        {
-                            ( ( SubstringFilter ) filter ).addAnySubstrings( any );
-                        }
-                    }
-                }
-                else if ( exprNode instanceof ExtensibleNode )
-                {
-                    // Transform Extensible Node
-                    filter = new ExtensibleMatchFilter();
-
-                    String attribute = ( ( ExtensibleNode ) exprNode ).getAttribute();
-                    String matchingRule = ( ( ExtensibleNode ) exprNode ).getMatchingRuleId();
-                    boolean dnAttributes = ( ( ExtensibleNode ) exprNode ).hasDnAttributes();
-                    Value<?> value = ( ( ExtensibleNode ) exprNode ).getValue();
-
-                    if ( attribute != null )
-                    {
-                        ( ( ExtensibleMatchFilter ) filter ).setType( attribute );
-                    }
-
-                    if ( matchingRule != null )
-                    {
-                        ( ( ExtensibleMatchFilter ) filter ).setMatchingRule( matchingRule );
-                    }
-
-                    ( ( ExtensibleMatchFilter ) filter ).setMatchValue( value );
-                    ( ( ExtensibleMatchFilter ) filter ).setDnAttributes( dnAttributes );
-                }
-            }
-
-            return filter;
-        }
-        else
-        {
-            // We have found nothing to transform. Return null then.
-            return null;
-        }
-    }
-
-
     /**
      * Transform the Codec message to a internal message.
      * 
@@ -367,51 +38,7 @@ public class LdapTransformer
      */
     public static Message transform( Object obj )
     {
-        if ( obj instanceof Message )
-        {
-            return ( Message ) obj;
-        }
-
-        LdapMessageCodec codecMessage = ( LdapMessageCodec ) obj;
-        int messageId = codecMessage.getMessageId();
-
-        if ( IS_DEBUG )
-        {
-            LOG.debug( "Transforming LdapMessage <" + messageId + ", " + codecMessage.getMessageTypeName()
-                + "> from Codec to nternal." );
-        }
-
-        Message internalMessage = null;
-
-        MessageTypeEnum messageType = codecMessage.getMessageType();
-
-        switch ( messageType )
-        {
-            case SEARCH_REQUEST:
-            case MODIFY_REQUEST:
-            case MODIFYDN_REQUEST:
-            case EXTENDED_REQUEST:
-            case SEARCH_RESULT_ENTRY:
-            case SEARCH_RESULT_DONE:
-            case SEARCH_RESULT_REFERENCE:
-            case MODIFY_RESPONSE:
-            case ADD_RESPONSE:
-            case DEL_RESPONSE:
-            case MODIFYDN_RESPONSE:
-            case COMPARE_RESPONSE:
-            case EXTENDED_RESPONSE:
-            case INTERMEDIATE_RESPONSE:
-                // Nothing to do !
-                break;
-
-            default:
-                throw new IllegalStateException( I18n.err( I18n.ERR_04113 ) );
-        }
-
-        // Transform the controls, too
-        transformControlsCodecToInternal( codecMessage, internalMessage );
-
-        return internalMessage;
+        return ( Message ) obj;
     }
 
 
@@ -421,68 +48,8 @@ public class LdapTransformer
      * @param msg the message to transform
      * @return the msg transformed
      */
-    @edu.umd.cs.findbugs.annotations.SuppressWarnings(value = "NP_NULL_ON_SOME_PATH", justification = "The number of Ldap Message we are dealing with is finite, and we won't ever have to deal with any other unexpected one")
     public static Object transform( Message msg )
     {
-        if ( IS_DEBUG )
-        {
-            LOG.debug( "Transforming message type " + msg.getType() );
-        }
-
-        LdapMessageCodec codecMessage = null;
-
-        codecMessage.setMessageId( msg.getMessageId() );
-
-        // We also have to transform the controls...
-        if ( !msg.getControls().isEmpty() )
-        {
-            transformControlsInternalToCodec( codecMessage, msg );
-        }
-
-        if ( IS_DEBUG )
-        {
-            LOG.debug( "Transformed message : " + codecMessage );
-        }
-
-        return codecMessage;
-    }
-
-
-    /**
-     * Copy the codec controls into the internal message
-     *
-     * @param codecMessage the Codec message
-     * @param msg the Internal message
-     */
-    private static void transformControlsCodecToInternal( LdapMessageCodec codecMessage, Message internalMessage )
-    {
-        if ( codecMessage.getControls() == null )
-        {
-            return;
-        }
-
-        for ( final Control codecControl : codecMessage.getControls() )
-        {
-            internalMessage.addControl( codecControl );
-        }
-    }
-
-
-    /**
-     * Transforms the controls
-     * @param codecMessage The Codec SearchResultReference to produce
-     * @param msg The incoming Internal Message
-     */
-    private static void transformControlsInternalToCodec( LdapMessageCodec codecMessage, Message internalMessage )
-    {
-        if ( internalMessage.getControls() == null )
-        {
-            return;
-        }
-
-        for ( Control control : internalMessage.getControls().values() )
-        {
-            codecMessage.addControl( control );
-        }
+        return msg;
     }
 }