Index: /gli/trunk/src/org/greenstone/gatherer/Configuration.java
===================================================================
--- /gli/trunk/src/org/greenstone/gatherer/Configuration.java	(revision 16329)
+++ /gli/trunk/src/org/greenstone/gatherer/Configuration.java	(revision 16330)
@@ -67,6 +67,4 @@
     /** The name of the general Gatherer configuration file. */
     static public String CONFIG_XML = "config.xml";
-    /** The name of the general Gatherer configuration file for running with GS3. */
-    static public String GS3_CONFIG_XML = "config3.xml";
     static public String FEDORA_CONFIG_PREFIX = "fedora-";
 
@@ -130,6 +128,6 @@
     static public URL gliserver_url = null;
     static public URL library_url = null;
-
-
+    
+    
     /** Constructor.
      * @param gsdl_path The path to the Greenstone directory as a <strong>String</strong>.
@@ -137,10 +135,12 @@
      * @param gsdl3_src_path The path to the Greenstone 3 src directory as a <strong>String</strong>.
      * @param site_name The name of the Greenstone 3 site currently in use.
+     * @param fedora_info A FedoraInfo object containing the user-provided details for creating
+     * a connection to a Fedora repository.
      */
-    public Configuration(String gli_user_directory_path, String gsdl_path, String gsdl3_path, String gsdl3_src_path, String site_name,
-			 FedoraInfo fedora_info)
+    public Configuration(String gli_user_directory_path, String gsdl_path, String gsdl3_path, String gsdl3_src_path, 
+				 String site_name, FedoraInfo fedora_info) 
     {
 	super();
-	self = this;
+	self = this; // allows Configuration to statically refer to itself in the static methods
 
 	this.gli_user_directory_path = gli_user_directory_path;
@@ -154,7 +154,4 @@
 	// Try to load the configuration file from the user specific location
 	String config_xml_file_name = CONFIG_XML;
-	if (gsdl3_path != null || (Gatherer.isGsdlRemote && Gatherer.GS3)) {
-	    config_xml_file_name = GS3_CONFIG_XML;
-	}
 
 	if (fedora_info != null && fedora_info.isActive()) {
@@ -206,25 +203,30 @@
 	}
 	
-	if (gsdl3_path != null || (Gatherer.GS3 && Gatherer.isGsdlRemote)) {
-	    if (this.site_name == null || this.site_name.equals("")) {
-		this.site_name = getString("general.site_name", true);
-		this.servlet_path = getString("general.servlet_path", true);
-		if (this.site_name.equals("")) {
-		    this.site_name = "localsite"; // can we assume these??
-		    this.servlet_path = "/library";
-		    setString("general.site_name", true, this.site_name);
-		    setString("general.servlet_path", true, this.servlet_path);
-		}
-		
-	    } else {
-		// we set the current one in the config
-		setString("general.site_name", true, this.site_name);
-		if (this.servlet_path != null && !this.servlet_path.equals("")) {
-		    setString("general.servlet_path", true, this.servlet_path);
-		}
-	    }
-	}
-    }
-
+	if(gsdl3_path != null) {
+	    prepareForGS3();
+	}
+
+    }
+
+    // Called when (gsdl3_path != null) || (Gatherer.GS3 && Gatherer.isGsdlRemote) 
+    static public void prepareForGS3() {
+	if (site_name == null || site_name.equals("")) {
+	    site_name = getString("general.site_name", true);
+	    servlet_path = getString("general.servlet_path", true);
+	    if (site_name.equals("")) {
+		site_name = "localsite"; // can we assume these??
+		servlet_path = "/library";
+		setString("general.site_name", true, site_name);
+		setString("general.servlet_path", true, servlet_path);
+	    }
+	    
+	} else {
+	    // we set the current one in the config
+	    setString("general.site_name", true, site_name);
+	    if (servlet_path != null && !servlet_path.equals("")) {
+		setString("general.servlet_path", true, servlet_path);
+	    }
+	}
+    }
 
     static private boolean updateUserConfigXMLFileIfNecessary(File config_xml_file)
@@ -708,16 +710,4 @@
 	File user_config_xml = null;
 	String config_xml_name = CONFIG_XML;
-
-	if (gsdl3_path!=null) {
-	    config_xml_name = GS3_CONFIG_XML;
-	}
-		
-	if (Gatherer.isGsdlRemote) {
-	    if (Gatherer.GS3){
-		config_xml_name = GS3_CONFIG_XML;
-	    }else{
-		config_xml_name = CONFIG_XML;
-	    }
-	}
 
 	if (fedora_info != null && fedora_info.isActive()) {
