private void stopAgent() {
    disableButtons(true);
    createWaitingWindow(MSG.view_remoteAgentInstall_stopAgentPleaseWait(), true);
    remoteInstallService.stopAgent(
        getRemoteAccessInfo(),
        getAgentInstallPath(),
        new AsyncCallback<String>() {
          public void onFailure(Throwable caught) {
            displayError(MSG.view_remoteAgentInstall_error_6(), caught);
            doneProcessing();
          }

          public void onSuccess(String result) {
            displayMessage(MSG.view_remoteAgentInstall_stopAgentResults(result));
            agentStatusCheck(); // we are relying on this to call doneProcessing(), we shouldn't do
                                // it here

            // tell the success handler
            invokeSuccessHandler(Type.STOP);
          }
        });
  }