@Override public Response<Void> delete(final DeleteRequest request) throws LdapException { Response<Void> response = null; LdapContext ctx = null; try { try { ctx = initializeContext(request); ctx.destroySubcontext(new LdapName(request.getDn())); response = createResponse(request, null, ResultCode.SUCCESS, null, ctx); } finally { if (ctx != null) { ctx.close(); } } } catch (ReferralException e) { final String[] refUrls = e.getReferralInfo() != null ? new String[] {(String) e.getReferralInfo()} : null; response = createResponse(request, null, ResultCode.REFERRAL, refUrls, ctx); } catch (NamingException e) { processNamingException(request, e, null, ctx); } return response; }
@Override public Response<Void> delete(final DeleteRequest request) throws LdapException { Response<Void> response = null; LdapContext ctx = null; try { try { ctx = initializeContext(request); ctx.destroySubcontext(new LdapName(request.getDn())); response = createResponse(request, null, ResultCode.SUCCESS, null, ctx); } finally { if (ctx != null) { ctx.close(); } } } catch (ReferralException e) { final String[] refUrls = e.getReferralInfo() != null ? new String[] {(String) e.getReferralInfo()} : null; response = createResponse(request, null, ResultCode.REFERRAL, refUrls, ctx); } catch (NamingException e) { processNamingException(request, e, null, ctx); } return response; }
@Override public Response<Void> delete(final DeleteRequest request) throws LdapException { Response<Void> response = null; LdapContext ctx = null; try { try { ctx = initializeContext(request); ctx.destroySubcontext(new LdapName(request.getDn())); response = createResponse(request, null, ResultCode.SUCCESS, null, ctx); } finally { if (ctx != null) { ctx.close(); } } } catch (ReferralException e) { final String[] refUrls = e.getReferralInfo() != null ? new String[] {(String) e.getReferralInfo()} : null; response = createResponse(request, null, ResultCode.REFERRAL, refUrls, ctx); } catch (NamingException e) { processNamingException(request, e, null, ctx); } return response; }
@Override protected DeleteRequest createReferralRequest(final DeleteRequest request, final LdapURL url) { final DeleteRequest referralRequest = new DeleteRequest(); referralRequest.setControls(request.getControls()); referralRequest.setIntermediateResponseHandlers(request.getIntermediateResponseHandlers()); referralRequest.setReferralHandler( new DeleteReferralHandler(getReferralLimit(), getReferralDepth() + 1, getReferralConnectionFactory())); if (!url.getEntry().isDefaultBaseDn()) { referralRequest.setDn(url.getEntry().getBaseDn()); } else { referralRequest.setDn(request.getDn()); } return referralRequest; }
@Override public Response<Void> delete(final DeleteRequest request) throws LdapException { Response<Void> response = null; try { final DeleteRequestImpl dri = new DeleteRequestImpl(); if (request.getControls() != null) { dri.addAllControls(config.getControlProcessor().processRequestControls(request.getControls())); } dri.setName(new Dn(request.getDn())); final DeleteResponse dr = connection.delete(dri); throwOperationException(request, dr); response = createResponse(request, null, dr); } catch (LdapOperationException e) { processLdapOperationException(e); } catch (org.apache.directory.api.ldap.model.exception.LdapException e) { processLdapException(e); } return response; }
@Override protected DeleteRequest createReferralRequest(final DeleteRequest request, final LdapURL url) { final DeleteRequest referralRequest = new DeleteRequest(); referralRequest.setControls(request.getControls()); referralRequest.setIntermediateResponseHandlers(request.getIntermediateResponseHandlers()); referralRequest.setReferralHandler( new DeleteReferralHandler(getReferralLimit(), getReferralDepth() + 1, getReferralConnectionFactory())); if (!url.getEntry().isDefaultBaseDn()) { referralRequest.setDn(url.getEntry().getBaseDn()); } else { referralRequest.setDn(request.getDn()); } return referralRequest; }
@Override protected DeleteRequest createReferralRequest(final DeleteRequest request, final LdapURL url) { final DeleteRequest referralRequest = new DeleteRequest(); referralRequest.setControls(request.getControls()); referralRequest.setIntermediateResponseHandlers(request.getIntermediateResponseHandlers()); referralRequest.setReferralHandler( new DeleteReferralHandler(getReferralLimit(), getReferralDepth() + 1, getReferralConnectionFactory())); if (!url.getEntry().isDefaultBaseDn()) { referralRequest.setDn(url.getEntry().getBaseDn()); } else { referralRequest.setDn(request.getDn()); } return referralRequest; }