From 380afada1de5b97284704163638aafea5f0f0b0d Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Thu, 10 May 2012 09:16:14 -0400
Subject: [PATCH] Changed constants and fixed nullpointer in update repository
---
src/com/gitblit/GitBlit.java | 62 ++++++++++++++++++-------------
1 files changed, 36 insertions(+), 26 deletions(-)
diff --git a/src/com/gitblit/GitBlit.java b/src/com/gitblit/GitBlit.java
index 273ad36..57421a3 100644
--- a/src/com/gitblit/GitBlit.java
+++ b/src/com/gitblit/GitBlit.java
@@ -846,22 +846,22 @@
model.federationStrategy = FederationStrategy.fromName(getConfig(config,
"federationStrategy", null));
model.federationSets = new ArrayList<String>(Arrays.asList(config.getStringList(
- "gitblit", null, "federationSets")));
+ Constants.CONFIG_GITBLIT, null, "federationSets")));
model.isFederated = getConfig(config, "isFederated", false);
model.origin = config.getString("remote", "origin", "url");
model.preReceiveScripts = new ArrayList<String>(Arrays.asList(config.getStringList(
- "gitblit", null, "preReceiveScript")));
+ Constants.CONFIG_GITBLIT, null, "preReceiveScript")));
model.postReceiveScripts = new ArrayList<String>(Arrays.asList(config.getStringList(
- "gitblit", null, "postReceiveScript")));
+ Constants.CONFIG_GITBLIT, null, "postReceiveScript")));
model.mailingLists = new ArrayList<String>(Arrays.asList(config.getStringList(
- "gitblit", null, "mailingList")));
+ Constants.CONFIG_GITBLIT, null, "mailingList")));
model.indexedBranches = new ArrayList<String>(Arrays.asList(config.getStringList(
- "gitblit", null, "indexBranch")));
+ Constants.CONFIG_GITBLIT, null, "indexBranch")));
// Custom defined properties
model.customFields = new HashMap<String, String>();
- for (String aProperty : config.getNames(Constants.CUSTOM_FIELDS_PROP_SECTION, Constants.CUSTOM_FIELDS_PROP_SUBSECTION)) {
- model.customFields.put(aProperty, config.getString(Constants.CUSTOM_FIELDS_PROP_SECTION, Constants.CUSTOM_FIELDS_PROP_SUBSECTION, aProperty));
+ for (String aProperty : config.getNames(Constants.CONFIG_GITBLIT, Constants.CONFIG_CUSTOM_FIELDS)) {
+ model.customFields.put(aProperty, config.getString(Constants.CONFIG_GITBLIT, Constants.CONFIG_CUSTOM_FIELDS, aProperty));
}
}
model.HEAD = JGitUtils.getHEADRef(r);
@@ -956,7 +956,7 @@
* @return field value or defaultValue
*/
private String getConfig(StoredConfig config, String field, String defaultValue) {
- String value = config.getString("gitblit", null, field);
+ String value = config.getString(Constants.CONFIG_GITBLIT, null, field);
if (StringUtils.isEmpty(value)) {
return defaultValue;
}
@@ -964,7 +964,7 @@
}
/**
- * Returns the gitblit boolean vlaue for the specified key. If key is not
+ * Returns the gitblit boolean value for the specified key. If key is not
* set, returns defaultValue.
*
* @param config
@@ -973,7 +973,7 @@
* @return field value or defaultValue
*/
private boolean getConfig(StoredConfig config, String field, boolean defaultValue) {
- return config.getBoolean("gitblit", field, defaultValue);
+ return config.getBoolean(Constants.CONFIG_GITBLIT, field, defaultValue);
}
/**
@@ -1090,19 +1090,19 @@
*/
public void updateConfiguration(Repository r, RepositoryModel repository) {
StoredConfig config = JGitUtils.readConfig(r);
- config.setString("gitblit", null, "description", repository.description);
- config.setString("gitblit", null, "owner", repository.owner);
- config.setBoolean("gitblit", null, "useTickets", repository.useTickets);
- config.setBoolean("gitblit", null, "useDocs", repository.useDocs);
- config.setString("gitblit", null, "accessRestriction", repository.accessRestriction.name());
- config.setBoolean("gitblit", null, "showRemoteBranches", repository.showRemoteBranches);
- config.setBoolean("gitblit", null, "isFrozen", repository.isFrozen);
- config.setBoolean("gitblit", null, "showReadme", repository.showReadme);
- config.setBoolean("gitblit", null, "skipSizeCalculation", repository.skipSizeCalculation);
- config.setBoolean("gitblit", null, "skipSummaryMetrics", repository.skipSummaryMetrics);
- config.setString("gitblit", null, "federationStrategy",
+ config.setString(Constants.CONFIG_GITBLIT, null, "description", repository.description);
+ config.setString(Constants.CONFIG_GITBLIT, null, "owner", repository.owner);
+ config.setBoolean(Constants.CONFIG_GITBLIT, null, "useTickets", repository.useTickets);
+ config.setBoolean(Constants.CONFIG_GITBLIT, null, "useDocs", repository.useDocs);
+ config.setString(Constants.CONFIG_GITBLIT, null, "accessRestriction", repository.accessRestriction.name());
+ config.setBoolean(Constants.CONFIG_GITBLIT, null, "showRemoteBranches", repository.showRemoteBranches);
+ config.setBoolean(Constants.CONFIG_GITBLIT, null, "isFrozen", repository.isFrozen);
+ config.setBoolean(Constants.CONFIG_GITBLIT, null, "showReadme", repository.showReadme);
+ config.setBoolean(Constants.CONFIG_GITBLIT, null, "skipSizeCalculation", repository.skipSizeCalculation);
+ config.setBoolean(Constants.CONFIG_GITBLIT, null, "skipSummaryMetrics", repository.skipSummaryMetrics);
+ config.setString(Constants.CONFIG_GITBLIT, null, "federationStrategy",
repository.federationStrategy.name());
- config.setBoolean("gitblit", null, "isFederated", repository.isFederated);
+ config.setBoolean(Constants.CONFIG_GITBLIT, null, "isFederated", repository.isFederated);
updateList(config, "federationSets", repository.federationSets);
updateList(config, "preReceiveScript", repository.preReceiveScripts);
@@ -1111,8 +1111,18 @@
updateList(config, "indexBranch", repository.indexedBranches);
// User Defined Properties
- for (Entry<String, String> singleProperty : repository.customFields.entrySet()) {
- config.setString(Constants.CUSTOM_FIELDS_PROP_SECTION, Constants.CUSTOM_FIELDS_PROP_SUBSECTION, singleProperty.getKey(), singleProperty.getValue());
+ if (repository.customFields != null) {
+ if (repository.customFields.size() == 0) {
+ // clear section
+ config.unsetSection(Constants.CONFIG_GITBLIT, Constants.CONFIG_CUSTOM_FIELDS);
+ } else {
+ for (Entry<String, String> property : repository.customFields.entrySet()) {
+ // set field
+ String key = property.getKey();
+ String value = property.getValue();
+ config.setString(Constants.CONFIG_GITBLIT, Constants.CONFIG_CUSTOM_FIELDS, key, value);
+ }
+ }
}
try {
@@ -1129,9 +1139,9 @@
return;
}
if (ArrayUtils.isEmpty(list)) {
- config.unset("gitblit", null, field);
+ config.unset(Constants.CONFIG_GITBLIT, null, field);
} else {
- config.setStringList("gitblit", null, field, list);
+ config.setStringList(Constants.CONFIG_GITBLIT, null, field, list);
}
}
--
Gitblit v1.9.1