From 73f1adb2e84b8b9cd4045bcdd7d9afa72d3875b5 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Tue, 27 Nov 2012 17:13:03 -0500 Subject: [PATCH] Added short commit id column to log and history tables (issue 168) --- src/com/gitblit/client/RepositoriesPanel.java | 48 ++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 40 insertions(+), 8 deletions(-) diff --git a/src/com/gitblit/client/RepositoriesPanel.java b/src/com/gitblit/client/RepositoriesPanel.java index c5d0d35..769d33b 100644 --- a/src/com/gitblit/client/RepositoriesPanel.java +++ b/src/com/gitblit/client/RepositoriesPanel.java @@ -49,6 +49,7 @@ import com.gitblit.Constants; import com.gitblit.Constants.RpcRequest; import com.gitblit.Keys; +import com.gitblit.models.RegistrantAccessPermission; import com.gitblit.models.FeedModel; import com.gitblit.models.RepositoryModel; import com.gitblit.utils.StringUtils; @@ -82,6 +83,8 @@ private JTextField filterTextfield; + private JButton clearCache; + public RepositoriesPanel(GitblitClient gitblit) { super(); this.gitblit = gitblit; @@ -103,6 +106,13 @@ refreshRepositories.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { refreshRepositories(); + } + }); + + clearCache = new JButton(Translation.get("gb.clearCache")); + clearCache.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + clearCache(); } }); @@ -170,7 +180,6 @@ tableModel = new RepositoriesTableModel(); defaultSorter = new TableRowSorter<RepositoriesTableModel>(tableModel); table = Utils.newTable(tableModel, Utils.DATE_FORMAT); - table.setRowHeight(nameRenderer.getFont().getSize() + 8); table.setRowSorter(defaultSorter); table.getRowSorter().toggleSortOrder(RepositoriesTableModel.Columns.Name.ordinal()); @@ -242,6 +251,7 @@ repositoryTablePanel.add(new JScrollPane(table), BorderLayout.CENTER); JPanel repositoryControls = new JPanel(new FlowLayout(FlowLayout.CENTER, Utils.MARGIN, 0)); + repositoryControls.add(clearCache); repositoryControls.add(refreshRepositories); repositoryControls.add(browseRepository); repositoryControls.add(createRepository); @@ -252,7 +262,7 @@ repositoryControls.add(searchRepository); setLayout(new BorderLayout(Utils.MARGIN, Utils.MARGIN)); - header = new HeaderPanel(Translation.get("gb.repositories"), "gitweb-favicon.png"); + header = new HeaderPanel(Translation.get("gb.repositories"), "git-orange-16x16.png"); add(header, BorderLayout.NORTH); add(repositoryTablePanel, BorderLayout.CENTER); add(repositoryControls, BorderLayout.SOUTH); @@ -285,6 +295,7 @@ protected abstract void updateTeamsTable(); protected void disableManagement() { + clearCache.setVisible(false); createRepository.setVisible(false); editRepository.setVisible(false); delRepository.setVisible(false); @@ -348,6 +359,26 @@ }; worker.execute(); } + + protected void clearCache() { + GitblitWorker worker = new GitblitWorker(RepositoriesPanel.this, + RpcRequest.CLEAR_REPOSITORY_CACHE) { + @Override + protected Boolean doRequest() throws IOException { + if (gitblit.clearRepositoryCache()) { + gitblit.refreshRepositories(); + return true; + } + return false; + } + + @Override + protected void onSuccess() { + updateTable(false); + } + }; + worker.execute(); + } /** * Displays the create repository dialog and fires a SwingWorker to update @@ -358,6 +389,7 @@ EditRepositoryDialog dialog = new EditRepositoryDialog(gitblit.getProtocolVersion()); dialog.setLocationRelativeTo(RepositoriesPanel.this); dialog.setAccessRestriction(gitblit.getDefaultAccessRestriction()); + dialog.setAuthorizationControl(gitblit.getDefaultAuthorizationControl()); dialog.setUsers(null, gitblit.getUsernames(), null); dialog.setTeams(gitblit.getTeamnames(), null); dialog.setRepositories(gitblit.getRepositories()); @@ -369,8 +401,8 @@ gitblit.getPostReceiveScriptsInherited(null), null); dialog.setVisible(true); final RepositoryModel newRepository = dialog.getRepository(); - final List<String> permittedUsers = dialog.getPermittedUsers(); - final List<String> permittedTeams = dialog.getPermittedTeams(); + final List<RegistrantAccessPermission> permittedUsers = dialog.getUserAccessPermissions(); + final List<RegistrantAccessPermission> permittedTeams = dialog.getTeamAccessPermissions(); if (newRepository == null) { return; } @@ -420,9 +452,9 @@ repository); dialog.setLocationRelativeTo(RepositoriesPanel.this); List<String> usernames = gitblit.getUsernames(); - List<String> members = gitblit.getPermittedUsernames(repository); + List<RegistrantAccessPermission> members = gitblit.getUserAccessPermissions(repository); dialog.setUsers(repository.owner, usernames, members); - dialog.setTeams(gitblit.getTeamnames(), gitblit.getPermittedTeamnames(repository)); + dialog.setTeams(gitblit.getTeamnames(), gitblit.getTeamAccessPermissions(repository)); dialog.setRepositories(gitblit.getRepositories()); dialog.setFederationSets(gitblit.getFederationSets(), repository.federationSets); List<String> allLocalBranches = new ArrayList<String>(); @@ -439,8 +471,8 @@ } dialog.setVisible(true); final RepositoryModel revisedRepository = dialog.getRepository(); - final List<String> permittedUsers = dialog.getPermittedUsers(); - final List<String> permittedTeams = dialog.getPermittedTeams(); + final List<RegistrantAccessPermission> permittedUsers = dialog.getUserAccessPermissions(); + final List<RegistrantAccessPermission> permittedTeams = dialog.getTeamAccessPermissions(); if (revisedRepository == null) { return; } -- Gitblit v1.9.1