From 4a5a55229bf066bf933dde6cb6f51a4378d67fb7 Mon Sep 17 00:00:00 2001
From: John Crygier <john.crygier@aon.com>
Date: Fri, 04 May 2012 09:50:22 -0400
Subject: [PATCH] Change techique for custom properties to fall in line with reading / writing of all other properties

---
 src/com/gitblit/GitBlit.java |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/src/com/gitblit/GitBlit.java b/src/com/gitblit/GitBlit.java
index 565b024..a95e4f7 100644
--- a/src/com/gitblit/GitBlit.java
+++ b/src/com/gitblit/GitBlit.java
@@ -857,6 +857,12 @@
 					"gitblit", null, "mailingList")));
 			model.indexedBranches = new ArrayList<String>(Arrays.asList(config.getStringList(
 					"gitblit", null, "indexBranch")));
+			
+			// Custom defined properties
+			model.userDefinedProperties = new HashMap<String, String>();
+			for (String aProperty : config.getNames(Constants.CUSTOM_DEFINED_PROP_SECTION, Constants.CUSTOM_DEFINED_PROP_SUBSECTION)) {
+				model.userDefinedProperties.put(aProperty, config.getString(Constants.CUSTOM_DEFINED_PROP_SECTION, Constants.CUSTOM_DEFINED_PROP_SUBSECTION, aProperty));
+			}
 		}
 		model.HEAD = JGitUtils.getHEADRef(r);
 		model.availableRefs = JGitUtils.getAvailableHeadTargets(r);
@@ -1103,6 +1109,11 @@
 		updateList(config, "postReceiveScript", repository.postReceiveScripts);
 		updateList(config, "mailingList", repository.mailingLists);
 		updateList(config, "indexBranch", repository.indexedBranches);
+		
+		// User Defined Properties
+		for (Entry<String, String> singleProperty : repository.userDefinedProperties.entrySet()) {
+			config.setString(Constants.CUSTOM_DEFINED_PROP_SECTION, Constants.CUSTOM_DEFINED_PROP_SUBSECTION, singleProperty.getKey(), singleProperty.getValue());
+		}
 
 		try {
 			config.save();

--
Gitblit v1.9.1