org.apache.directory.server.ldap.handlers
Class ModifyDnHandler

java.lang.Object
  extended by org.apache.directory.server.ldap.handlers.AbstractLdapHandler
      extended by org.apache.directory.server.ldap.handlers.ModifyDnHandler
All Implemented Interfaces:
org.apache.mina.handler.demux.MessageHandler
Direct Known Subclasses:
DefaultModifyDnHandler

public abstract class ModifyDnHandler
extends AbstractLdapHandler
implements org.apache.mina.handler.demux.MessageHandler

A single reply handler for ModifyDnRequests.

Version:
$Rev: 653289 $
Author:
Apache Directory Project

Field Summary
 
Fields inherited from interface org.apache.mina.handler.demux.MessageHandler
NOOP
 
Constructor Summary
ModifyDnHandler()
           
 
Method Summary
 void messageReceived(org.apache.mina.common.IoSession session, java.lang.Object request)
          Deal with a ModifyDN request received from a client.
protected abstract  void modifyDnMessageReceived(org.apache.mina.common.IoSession session, org.apache.directory.shared.ldap.message.ModifyDnRequest modifyDnRequest)
           
 
Methods inherited from class org.apache.directory.server.ldap.handlers.AbstractLdapHandler
getProtocolProvider, getSessionRegistry, isConfidentialityRequirementSatisfied, setProtocolProvider, setRequestControls
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ModifyDnHandler

public ModifyDnHandler()
Method Detail

messageReceived

public final void messageReceived(org.apache.mina.common.IoSession session,
                                  java.lang.Object request)
                           throws java.lang.Exception
Deal with a ModifyDN request received from a client. A ModifyDN operation has more than one semantic, depending on its parameters. In any case, the first argument is the DN entry to be changed. We then have the new relative DN for this entry. Two other arguments can be provided : - deleteOldRdn : if the old RDN attributes should be removed from the new entry or not (for instance, if the old RDN was cn=acme, and the new one is sn=acme, then we may have to remove the cn: acme from the attributes list) - newSuperior : this is a move operation. The entry is removed from its current location, and created in the new one.

Specified by:
messageReceived in interface org.apache.mina.handler.demux.MessageHandler
Throws:
java.lang.Exception

modifyDnMessageReceived

protected abstract void modifyDnMessageReceived(org.apache.mina.common.IoSession session,
                                                org.apache.directory.shared.ldap.message.ModifyDnRequest modifyDnRequest)
                                         throws java.lang.Exception
Throws:
java.lang.Exception


Copyright © 2003-2008 The Apache Software Foundation. All Rights Reserved.