From 6ecbca9e014c6cbb8dc27d6d8748e3f0297043b5 Mon Sep 17 00:00:00 2001
From: Torsten Dreyer <torsten@ลง3r.de>
Date: Tue, 17 Feb 2015 12:41:18 +0100
Subject: [PATCH] package system: de-hardcode default catalog id and url

make default catalog id and url configurable through properties
on startup. Provide defaults to preserve current functionality.

/sim/package-system/default-catalog/id
/sim/package-system/default-catalog/url
---
 src/Network/HTTPClient.cxx | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/src/Network/HTTPClient.cxx b/src/Network/HTTPClient.cxx
index de6a3d11f..d765c0a42 100644
--- a/src/Network/HTTPClient.cxx
+++ b/src/Network/HTTPClient.cxx
@@ -139,14 +139,17 @@ void FGHTTPClient::init()
     packageRoot->setHTTPClient(_http.get());
     
     packageRoot->setDelegate(new FGDelegate);
-    
+
+    const char * defaultCatalogId = fgGetString("/sim/package-system/default-catalog/id", "org.flightgear.default" );
+    const char * defaultCatalogUrl = fgGetString("/sim/package-system/default-catalog/url",
+            "http://fgfs.goneabitbursar.com/pkg/" FLIGHTGEAR_VERSION "/default-catalog.xml");
     // setup default catalog if not present
-    pkg::Catalog* defaultCatalog = packageRoot->getCatalogById("org.flightgear.default");
+    pkg::Catalog* defaultCatalog = packageRoot->getCatalogById( defaultCatalogId );
     if (!defaultCatalog) {
       // always show this message
-      SG_LOG(SG_GENERAL, SG_ALERT, "default catalog not found, installing...");
-      pkg::Catalog::createFromUrl(packageRoot,
-          "http://fgfs.goneabitbursar.com/pkg/" FLIGHTGEAR_VERSION "/default-catalog.xml");
+      SG_LOG(SG_GENERAL, SG_ALERT, "default catalog not found, installing '"
+        << defaultCatalogId << "' from '" << defaultCatalogUrl << "'.");
+      pkg::Catalog::createFromUrl(packageRoot,defaultCatalogUrl);
     }
     
     // start a refresh now