From 8daefa09d99774639a355c0dfa2b989fa1007f5f Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Thu, 11 Oct 2012 17:11:18 -0400
Subject: [PATCH] Created static repository close functions for unit testing and fixed Windows sharing violations
---
src/com/gitblit/client/RepositoriesPanel.java | 34 +++++++++++++++++++++++++++++++++-
1 files changed, 33 insertions(+), 1 deletions(-)
diff --git a/src/com/gitblit/client/RepositoriesPanel.java b/src/com/gitblit/client/RepositoriesPanel.java
index c5d0d35..54158e8 100644
--- a/src/com/gitblit/client/RepositoriesPanel.java
+++ b/src/com/gitblit/client/RepositoriesPanel.java
@@ -82,6 +82,8 @@
private JTextField filterTextfield;
+ private JButton clearCache;
+
public RepositoriesPanel(GitblitClient gitblit) {
super();
this.gitblit = gitblit;
@@ -103,6 +105,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();
}
});
@@ -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());
--
Gitblit v1.9.1