summaryrefslogtreecommitdiffstats
path: root/src/com/gitblit/client/EditRepositoryDialog.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/gitblit/client/EditRepositoryDialog.java')
-rw-r--r--src/com/gitblit/client/EditRepositoryDialog.java18
1 files changed, 16 insertions, 2 deletions
diff --git a/src/com/gitblit/client/EditRepositoryDialog.java b/src/com/gitblit/client/EditRepositoryDialog.java
index 93330cd1..c2d8f672 100644
--- a/src/com/gitblit/client/EditRepositoryDialog.java
+++ b/src/com/gitblit/client/EditRepositoryDialog.java
@@ -63,6 +63,8 @@ public class EditRepositoryDialog extends JDialog {
private static final long serialVersionUID = 1L;
+ private final String repositoryName;
+
private final RepositoryModel repository;
private boolean isCreate;
@@ -105,6 +107,7 @@ public class EditRepositoryDialog extends JDialog {
public EditRepositoryDialog(RepositoryModel aRepository) {
super();
+ this.repositoryName = aRepository.name;
this.repository = new RepositoryModel();
this.repositoryNames = new HashSet<String>();
this.isCreate = false;
@@ -114,7 +117,7 @@ public class EditRepositoryDialog extends JDialog {
setTitle(Translation.get("gb.edit") + ": " + aRepository.name);
setIconImage(new ImageIcon(getClass().getResource("/gitblt-favicon.png")).getImage());
}
-
+
@Override
protected JRootPane createRootPane() {
KeyStroke stroke = KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0);
@@ -175,7 +178,8 @@ public class EditRepositoryDialog extends JDialog {
fieldsPanel
.add(newFieldPanel(Translation.get("gb.showRemoteBranches"), showRemoteBranches));
fieldsPanel.add(newFieldPanel(Translation.get("gb.showReadme"), showReadme));
- fieldsPanel.add(newFieldPanel(Translation.get("gb.skipSizeCalculation"), skipSizeCalculation));
+ fieldsPanel.add(newFieldPanel(Translation.get("gb.skipSizeCalculation"),
+ skipSizeCalculation));
fieldsPanel.add(newFieldPanel(Translation.get("gb.isFrozen"), isFrozen));
usersPalette = new JPalette<String>();
@@ -292,6 +296,16 @@ public class EditRepositoryDialog extends JDialog {
"Can not create repository ''{0}'' because it already exists.", rname));
return false;
}
+ } else {
+ // check rename collision
+ if (!repositoryName.equalsIgnoreCase(rname)) {
+ if (repositoryNames.contains(rname.toLowerCase())) {
+ error(MessageFormat.format(
+ "Failed to rename ''{0}'' because ''{1}'' already exists.",
+ repositoryName, rname));
+ return false;
+ }
+ }
}
if (accessRestriction.getSelectedItem() == null) {