public function disconnectFromGerrit(GitRepository $repository) { $repository->getBackend()->disconnectFromGerrit($repository); $this->git_system_event_manager->queueRepositoryUpdate($repository); $server = $this->gerrit_server_factory->getServerById($repository->getRemoteServerId()); $driver = $this->driver_factory->getDriver($server); $disconnect_option = $this->request->get(GitViews_RepoManagement_Pane_Gerrit::OPTION_DISCONNECT_GERRIT_PROJECT); if ($disconnect_option == GitViews_RepoManagement_Pane_Gerrit::OPTION_DELETE_GERRIT_PROJECT) { $this->git_system_event_manager->queueRemoteProjectDeletion($repository, $driver); $this->history_dao->groupAddHistory("git_disconnect_gerrit_delete", $repository->getName(), $repository->getProjectId()); } if ($disconnect_option == GitViews_RepoManagement_Pane_Gerrit::OPTION_READONLY_GERRIT_PROJECT) { $this->git_system_event_manager->queueRemoteProjectReadOnly($repository, $driver); $this->history_dao->groupAddHistory("git_disconnect_gerrit_read_only", $repository->getName(), $repository->getProjectId()); } }