return resp;
    public Object handle( ClientKey key, Object request )    {        ModifyRequest req = ( ModifyRequest ) request;        ModifyResponse resp = new ModifyResponseImpl( req.getMessageId() );        resp.setLdapResult( new LdapResultImpl( resp ) );        try        {            InitialLdapContext ictx = SessionRegistry.getSingleton()                    .getInitialLdapContext( key, null, true );            DirContext ctx = ( DirContext ) ictx.lookup( "" );            Object[] mods = req.getModificationItems().toArray( EMPTY );            ctx.modifyAttributes( req.getName(), ( ModificationItem[] ) mods );        }        catch ( NamingException e )        {            String msg = "failed to add entry " + req.getName() + ":\n";            msg += ExceptionUtils.getStackTrace( e );            ResultCodeEnum code;            if ( e instanceof LdapException )            {                code = ( ( LdapException ) e ).getResultCode() ;            }            else            {                code = ResultCodeEnum.getBestEstimate( e, req.getType() );            }            resp.getLdapResult().setResultCode( code );            resp.getLdapResult().setErrorMessage( msg );            if ( e.getResolvedName() != null )            {                resp.getLdapResult().setMatchedDn( e.getResolvedName().toString() );            }        }        resp.getLdapResult().setResultCode( ResultCodeEnum.SUCCESS );        resp.getLdapResult().setMatchedDn( req.getName() );        return resp;    }