diff options
Diffstat (limited to 'src/com/gitblit/client/EditRepositoryDialog.java')
-rw-r--r-- | src/com/gitblit/client/EditRepositoryDialog.java | 18 |
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) {
|