docs: public void modifyAttributes(String name, ModificationItem[] mods) throws NamingException, WIMException {
          TimedDirContext ctx = iContextManager.getDirContext();
          // checkWritePermission(ctx); TODO Why are we not checking for permission here?
          try {
              try {
                  ctx.modifyAttributes(new LdapName(name), mods);
              } catch (NamingException e) {
                  if (!ContextManager.isConnectionException(e)) {
                      throw e;
                  }
                  ctx = iContextManager.reCreateDirContext(ctx, e.toString());
                  ctx.modifyAttributes(new LdapName(name), mods);
              }
          } catch (NameNotFoundException e) {
              String msg = Tr.formatMessage(tc, WIMMessageKey.NAMING_EXCEPTION, WIMMessageHelper.generateMsgParms(e.toString(true)));
              throw new EntityNotFoundException(WIMMessageKey.NAMING_EXCEPTION, msg, e);
          } catch (NamingException e) {
              throw e;
          } finally {
              iContextManager.releaseDirContext(ctx);
          }
      }