private void modifyAttrsInternal(Map attrs) throws ServiceException { modifyAttrsInternal(null, attrs);
synchronized void modifyAttrsInternal(DirContext initCtxt, Map attrs) throws ServiceException { DirContext ctxt = initCtxt; try { if (ctxt == null) ctxt = LdapUtil.getDirContext(true); LdapUtil.modifyAttrs(ctxt, mDn,  attrs, mAttrs); refresh(ctxt, 0); } catch (InvalidAttributeIdentifierException e) { throw AccountServiceException.INVALID_ATTR_NAME("invalid attr name", e); } catch (InvalidAttributeValueException e) { throw AccountServiceException.INVALID_ATTR_VALUE("invalid attr value", e); } catch (InvalidAttributesException e) { throw ServiceException.INVALID_REQUEST("invalid set of attributes", e); } catch (NamingException e) { throw ServiceException.FAILURE("unable to modify attrs", e); } finally { if (initCtxt == null) LdapUtil.closeContext(ctxt); }
    private void modifyAttrsInternal(Map attrs) throws ServiceException {        modifyAttrsInternal(null, attrs);    }