mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

Matthew Swift
27.50.2013 b117ed336a8744e6b2b7a8a531743ba58178d8a0
opends/src/server/org/opends/server/workflowelement/localbackend/LocalBackendDeleteOperation.java
@@ -326,46 +326,8 @@
        return;
      }
      // If it is not a private backend, then check to see if the server or
      // backend is operating in read-only mode.
      if (!backend.isPrivateBackend())
      {
        switch (DirectoryServer.getWritabilityMode())
        {
        case DISABLED:
          setResultCodeAndMessageNoInfoDisclosure(entry,
              ResultCode.UNWILLING_TO_PERFORM,
              ERR_DELETE_SERVER_READONLY.get(String.valueOf(entryDN)));
          return;
        case INTERNAL_ONLY:
          if (!(isInternalOperation() || isSynchronizationOperation()))
          {
            setResultCodeAndMessageNoInfoDisclosure(entry,
                ResultCode.UNWILLING_TO_PERFORM,
                ERR_DELETE_SERVER_READONLY.get(String.valueOf(entryDN)));
            return;
          }
        }
        switch (backend.getWritabilityMode())
        {
        case DISABLED:
          setResultCodeAndMessageNoInfoDisclosure(entry,
              ResultCode.UNWILLING_TO_PERFORM,
              ERR_DELETE_BACKEND_READONLY.get(String.valueOf(entryDN)));
          return;
        case INTERNAL_ONLY:
          if (!(isInternalOperation() || isSynchronizationOperation()))
          {
            setResultCodeAndMessageNoInfoDisclosure(entry,
                ResultCode.UNWILLING_TO_PERFORM,
                ERR_DELETE_BACKEND_READONLY.get(String.valueOf(entryDN)));
            return;
          }
        }
      }
      LocalBackendWorkflowElement.checkIfBackendIsWritable(backend, this,
          entryDN, ERR_DELETE_SERVER_READONLY, ERR_DELETE_BACKEND_READONLY);
      // The selected backend will have the responsibility of making sure that
      // the entry actually exists and does not have any children (or possibly