svn commit: r1622441 - in /ofbiz/trunk/framework/start/src/org/ofbiz/base/start: Config.java Start.java

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r1622441 - in /ofbiz/trunk/framework/start/src/org/ofbiz/base/start: Config.java Start.java

jacopoc
Author: jacopoc
Date: Thu Sep  4 10:01:07 2014
New Revision: 1622441

URL: http://svn.apache.org/r1622441
Log:
Moved the constructor at the top of the class, removed 2 static methods that were used to construct the object and embedded the logic in the constructor.

Modified:
    ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Config.java
    ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Start.java

Modified: ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Config.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Config.java?rev=1622441&r1=1622440&r2=1622441&view=diff
==============================================================================
--- ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Config.java (original)
+++ ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Config.java Thu Sep  4 10:01:07 2014
@@ -35,28 +35,6 @@ import java.util.TimeZone;
 
 public class Config {
 
-    private static String getConfigFileName(String command) {
-        // default command is "start"
-        if (command == null || command.trim().length() == 0) {
-            command = "start";
-        }
-        return "org/ofbiz/base/start/" + command + ".properties";
-    }
-
-    public static Config getInstance(String[] args) throws IOException {
-        String firstArg = args.length > 0 ? args[0] : "";
-        // Needed when portoffset is used with these commands, start.properties fits for all of them
-        if ("start-batch".equalsIgnoreCase(firstArg)
-                || "start-debug".equalsIgnoreCase(firstArg)
-                || "stop".equalsIgnoreCase(firstArg)
-                || "-shutdown".equalsIgnoreCase(firstArg) // shutdown & status hack (was pre-existing to portoffset introduction, also useful with it)
-                || "-status".equalsIgnoreCase(firstArg)) {
-            firstArg = "start";
-        }
-        String configFileName = getConfigFileName(firstArg);
-        return new Config(configFileName, args);
-    }
-
     public final InetAddress adminAddress;
     public final String adminKey;
     public final int adminPort;
@@ -79,6 +57,182 @@ public class Config {
     public final String toolsJar;
     public final boolean useShutdownHook;
 
+    Config(String[] args) throws IOException {
+        String firstArg = args.length > 0 ? args[0] : "";
+        // Needed when portoffset is used with these commands, start.properties fits for all of them
+        if ("start-batch".equalsIgnoreCase(firstArg)
+                || "start-debug".equalsIgnoreCase(firstArg)
+                || "stop".equalsIgnoreCase(firstArg)
+                || "-shutdown".equalsIgnoreCase(firstArg) // shutdown & status hack (was pre-existing to portoffset introduction, also useful with it)
+                || "-status".equalsIgnoreCase(firstArg)) {
+            firstArg = "start";
+        }
+        // default command is "start"
+        if (firstArg == null || firstArg.trim().length() == 0) {
+            firstArg = "start";
+        }
+        String config =  "org/ofbiz/base/start/" + firstArg + ".properties";
+
+        // check the java_version
+        String javaVersion = System.getProperty("java.version");
+        String javaVendor = System.getProperty("java.vendor");
+
+        Properties props = this.getPropertiesFile(config);
+        System.out.println("Start.java using configuration file " + config);
+
+        // set the ofbiz.home
+        String ofbizHomeTmp = props.getProperty("ofbiz.home", ".");
+        // get a full path
+        if (ofbizHomeTmp.equals(".")) {
+            ofbizHomeTmp = System.getProperty("user.dir");
+            ofbizHomeTmp = ofbizHomeTmp.replace('\\', '/');
+        }
+        ofbizHome = ofbizHomeTmp;
+        System.setProperty("ofbiz.home", ofbizHome);
+        System.out.println("Set OFBIZ_HOME to - " + ofbizHome);
+
+        // base config directory
+        baseConfig = getOfbizHomeProp(props, "ofbiz.base.config", "framework/base/config");
+
+        // base schema directory
+        baseDtd = getOfbizHomeProp(props, "ofbiz.base.schema", "framework/base/dtd");
+
+        // base lib directory
+        baseLib = getOfbizHomeProp(props, "ofbiz.base.lib", "framework/base/lib");
+
+        // base jar file
+        baseJar = getOfbizHomeProp(props, "ofbiz.base.jar", "framework/base/build/lib/ofbiz-base.jar");
+
+        // tools jar
+        String reqTJ = getProp(props, "java.tools.jar.required", "false");
+        requireToolsJar = "true".equalsIgnoreCase(reqTJ);
+        toolsJar = this.findSystemJar(props, javaVendor, javaVersion, "tools.jar", requireToolsJar);
+
+        // comm jar
+        String reqCJ = getProp(props, "java.comm.jar.required", "false");
+        requireCommJar = "true".equalsIgnoreCase(reqCJ);
+        commJar = this.findSystemJar(props, javaVendor, javaVersion, "comm.jar", requireCommJar);
+
+        // log directory
+        logDir = getOfbizHomeProp(props, "ofbiz.log.dir", "runtime/logs");
+
+        // container configuration
+        containerConfig = getOfbizHomeProp(props, "ofbiz.container.config", "framework/base/config/ofbiz-containers.xml");
+
+        // get the admin server info
+        String serverHost = getProp(props, "ofbiz.admin.host", "127.0.0.1");
+
+        String adminPortStr = getProp(props, "ofbiz.admin.port", "0");
+        // set the admin key
+        adminKey = getProp(props, "ofbiz.admin.key", "NA");
+
+        // create the host InetAddress
+        adminAddress = InetAddress.getByName(serverHost);
+
+        // parse the port number
+        int adminPortTmp;
+        try {
+            adminPortTmp = Integer.parseInt(adminPortStr);
+            if (args.length > 0) {
+                for (String arg : args) {
+                    if (arg.toLowerCase().contains("portoffset=") && !arg.toLowerCase().contains("${portoffset}")) {
+                        adminPortTmp = adminPortTmp != 0 ? adminPortTmp : 10523; // This is necessary because the ASF machines don't allow ports 1 to 3, see  INFRA-6790
+                        adminPortTmp += Integer.parseInt(arg.split("=")[1]);
+                    }
+                }
+            }
+        } catch (Exception e) {
+            System.out.println("Error while parsing admin port number (so default to 10523) = " + e);
+            adminPortTmp = 10523;
+        }
+        adminPort = adminPortTmp;
+
+        // set the Derby system home
+        String derbyPath = getProp(props, "derby.system.home", "runtime/data/derby");
+        System.setProperty("derby.system.home", derbyPath);
+
+        // set the property to tell Log4J to use log4j.xml
+        String log4jConfig = getProp(props, "log4j.configuration", "log4j.xml");
+
+        // set the log4j configuration property so we don't pick up one inside jars by
+        // mistake
+        System.setProperty("log4j.configuration", log4jConfig);
+
+        // check for shutdown hook
+        if (System.getProperty("ofbiz.enable.hook") != null && System.getProperty("ofbiz.enable.hook").length() > 0) {
+            useShutdownHook = "true".equalsIgnoreCase(System.getProperty("ofbiz.enable.hook"));
+        } else if (props.getProperty("ofbiz.enable.hook") != null && props.getProperty("ofbiz.enable.hook").length() > 0) {
+            useShutdownHook = "true".equalsIgnoreCase(props.getProperty("ofbiz.enable.hook"));
+        } else {
+            useShutdownHook = true;
+        }
+
+        // check for auto-shutdown
+        if (System.getProperty("ofbiz.auto.shutdown") != null && System.getProperty("ofbiz.auto.shutdown").length() > 0) {
+            shutdownAfterLoad = "true".equalsIgnoreCase(System.getProperty("ofbiz.auto.shutdown"));
+        } else if (props.getProperty("ofbiz.auto.shutdown") != null && props.getProperty("ofbiz.auto.shutdown").length() > 0) {
+            shutdownAfterLoad = "true".equalsIgnoreCase(props.getProperty("ofbiz.auto.shutdown"));
+        } else {
+            shutdownAfterLoad = false;
+        }
+
+        // set AWT headless mode
+        awtHeadless = getProp(props, "java.awt.headless", null);
+        if (awtHeadless != null) {
+            System.setProperty("java.awt.headless", awtHeadless);
+        }
+
+        // get the splash logo
+        splashLogo = props.getProperty("ofbiz.start.splash.logo", null);
+
+        // set the property to tell Jetty to use 2.4 SessionListeners
+        System.setProperty("org.mortbay.jetty.servlet.AbstractSessionManager.24SessionDestroyed", "true");
+
+        // set the default locale
+        String localeString = props.getProperty("ofbiz.locale.default");
+        if (localeString != null && localeString.length() > 0) {
+            String locales[] = localeString.split("_");
+            switch (locales.length) {
+                case 1:
+                    Locale.setDefault(new Locale(locales[0]));
+                    break;
+                case 2:
+                    Locale.setDefault(new Locale(locales[0], locales[1]));
+                    break;
+                case 3:
+                    Locale.setDefault(new Locale(locales[0], locales[1], locales[2]));
+            }
+            System.setProperty("user.language", localeString);
+        }
+
+        // set the default time zone
+        String tzString = props.getProperty("ofbiz.timeZone.default");
+        if (tzString != null && tzString.length() > 0) {
+            TimeZone.setDefault(TimeZone.getTimeZone(tzString));
+        }
+
+        instrumenterClassName = getProp(props, "ofbiz.instrumenterClassName", null);
+        instrumenterFile = getProp(props, "ofbiz.instrumenterFile", null);
+
+        // loader classes
+        List loadersTmp = new ArrayList<Map<String, String>>();
+        int currentPosition = 1;
+        Map<String, String> loader = null;
+        while (true) {
+            loader = new HashMap<String, String>();
+            String loaderClass = props.getProperty("ofbiz.start.loader" + currentPosition);
+            if (loaderClass == null || loaderClass.length() == 0) {
+                break;
+            } else {
+                loader.put("class", loaderClass);
+                loader.put("profiles", props.getProperty("ofbiz.start.loader" + currentPosition + ".loaders"));
+                loadersTmp.add(Collections.unmodifiableMap(loader));
+                currentPosition++;
+            }
+        }
+        loaders = Collections.unmodifiableList(loadersTmp);
+    }
+
     private String findSystemJar(Properties props, String javaVendor, String javaVersion, String jarName, boolean required) {
         String fileSep = System.getProperty("file.separator");
         String javaHome = System.getProperty("java.home");
@@ -275,165 +429,4 @@ public class Config {
             }
         }
     }
-
-    private Config(String config, String[] args) throws IOException {
-        // check the java_version
-        String javaVersion = System.getProperty("java.version");
-        String javaVendor = System.getProperty("java.vendor");
-
-        Properties props = this.getPropertiesFile(config);
-        System.out.println("Start.java using configuration file " + config);
-
-        // set the ofbiz.home
-        String ofbizHomeTmp = props.getProperty("ofbiz.home", ".");
-        // get a full path
-        if (ofbizHomeTmp.equals(".")) {
-            ofbizHomeTmp = System.getProperty("user.dir");
-            ofbizHomeTmp = ofbizHomeTmp.replace('\\', '/');
-        }
-        ofbizHome = ofbizHomeTmp;
-        System.setProperty("ofbiz.home", ofbizHome);
-        System.out.println("Set OFBIZ_HOME to - " + ofbizHome);
-
-        // base config directory
-        baseConfig = getOfbizHomeProp(props, "ofbiz.base.config", "framework/base/config");
-
-        // base schema directory
-        baseDtd = getOfbizHomeProp(props, "ofbiz.base.schema", "framework/base/dtd");
-
-        // base lib directory
-        baseLib = getOfbizHomeProp(props, "ofbiz.base.lib", "framework/base/lib");
-
-        // base jar file
-        baseJar = getOfbizHomeProp(props, "ofbiz.base.jar", "framework/base/build/lib/ofbiz-base.jar");
-
-        // tools jar
-        String reqTJ = getProp(props, "java.tools.jar.required", "false");
-        requireToolsJar = "true".equalsIgnoreCase(reqTJ);
-        toolsJar = this.findSystemJar(props, javaVendor, javaVersion, "tools.jar", requireToolsJar);
-
-        // comm jar
-        String reqCJ = getProp(props, "java.comm.jar.required", "false");
-        requireCommJar = "true".equalsIgnoreCase(reqCJ);
-        commJar = this.findSystemJar(props, javaVendor, javaVersion, "comm.jar", requireCommJar);
-
-        // log directory
-        logDir = getOfbizHomeProp(props, "ofbiz.log.dir", "runtime/logs");
-
-        // container configuration
-        containerConfig = getOfbizHomeProp(props, "ofbiz.container.config", "framework/base/config/ofbiz-containers.xml");
-
-        // get the admin server info
-        String serverHost = getProp(props, "ofbiz.admin.host", "127.0.0.1");
-
-        String adminPortStr = getProp(props, "ofbiz.admin.port", "0");
-        // set the admin key
-        adminKey = getProp(props, "ofbiz.admin.key", "NA");
-
-        // create the host InetAddress
-        adminAddress = InetAddress.getByName(serverHost);
-
-        // parse the port number
-        int adminPortTmp;
-        try {
-            adminPortTmp = Integer.parseInt(adminPortStr);
-            if (args.length > 0) {
-                for (String arg : args) {
-                    if (arg.toLowerCase().contains("portoffset=") && !arg.toLowerCase().contains("${portoffset}")) {
-                        adminPortTmp = adminPortTmp != 0 ? adminPortTmp : 10523; // This is necessary because the ASF machines don't allow ports 1 to 3, see  INFRA-6790
-                        adminPortTmp += Integer.parseInt(arg.split("=")[1]);
-                    }
-                }
-            }
-        } catch (Exception e) {
-            System.out.println("Error while parsing admin port number (so default to 10523) = " + e);
-            adminPortTmp = 10523;
-        }
-        adminPort = adminPortTmp;
-
-        // set the Derby system home
-        String derbyPath = getProp(props, "derby.system.home", "runtime/data/derby");
-        System.setProperty("derby.system.home", derbyPath);
-
-        // set the property to tell Log4J to use log4j.xml
-        String log4jConfig = getProp(props, "log4j.configuration", "log4j.xml");
-
-        // set the log4j configuration property so we don't pick up one inside jars by
-        // mistake
-        System.setProperty("log4j.configuration", log4jConfig);
-
-        // check for shutdown hook
-        if (System.getProperty("ofbiz.enable.hook") != null && System.getProperty("ofbiz.enable.hook").length() > 0) {
-            useShutdownHook = "true".equalsIgnoreCase(System.getProperty("ofbiz.enable.hook"));
-        } else if (props.getProperty("ofbiz.enable.hook") != null && props.getProperty("ofbiz.enable.hook").length() > 0) {
-            useShutdownHook = "true".equalsIgnoreCase(props.getProperty("ofbiz.enable.hook"));
-        } else {
-            useShutdownHook = true;
-        }
-
-        // check for auto-shutdown
-        if (System.getProperty("ofbiz.auto.shutdown") != null && System.getProperty("ofbiz.auto.shutdown").length() > 0) {
-            shutdownAfterLoad = "true".equalsIgnoreCase(System.getProperty("ofbiz.auto.shutdown"));
-        } else if (props.getProperty("ofbiz.auto.shutdown") != null && props.getProperty("ofbiz.auto.shutdown").length() > 0) {
-            shutdownAfterLoad = "true".equalsIgnoreCase(props.getProperty("ofbiz.auto.shutdown"));
-        } else {
-            shutdownAfterLoad = false;
-        }
-
-        // set AWT headless mode
-        awtHeadless = getProp(props, "java.awt.headless", null);
-        if (awtHeadless != null) {
-            System.setProperty("java.awt.headless", awtHeadless);
-        }
-
-        // get the splash logo
-        splashLogo = props.getProperty("ofbiz.start.splash.logo", null);
-
-        // set the property to tell Jetty to use 2.4 SessionListeners
-        System.setProperty("org.mortbay.jetty.servlet.AbstractSessionManager.24SessionDestroyed", "true");
-
-        // set the default locale
-        String localeString = props.getProperty("ofbiz.locale.default");
-        if (localeString != null && localeString.length() > 0) {
-            String locales[] = localeString.split("_");
-            switch (locales.length) {
-                case 1:
-                    Locale.setDefault(new Locale(locales[0]));
-                    break;
-                case 2:
-                    Locale.setDefault(new Locale(locales[0], locales[1]));
-                    break;
-                case 3:
-                    Locale.setDefault(new Locale(locales[0], locales[1], locales[2]));
-            }
-            System.setProperty("user.language", localeString);
-        }
-
-        // set the default time zone
-        String tzString = props.getProperty("ofbiz.timeZone.default");
-        if (tzString != null && tzString.length() > 0) {
-            TimeZone.setDefault(TimeZone.getTimeZone(tzString));
-        }
-
-        instrumenterClassName = getProp(props, "ofbiz.instrumenterClassName", null);
-        instrumenterFile = getProp(props, "ofbiz.instrumenterFile", null);
-
-        // loader classes
-        List loadersTmp = new ArrayList<Map<String, String>>();
-        int currentPosition = 1;
-        Map<String, String> loader = null;
-        while (true) {
-            loader = new HashMap<String, String>();
-            String loaderClass = props.getProperty("ofbiz.start.loader" + currentPosition);
-            if (loaderClass == null || loaderClass.length() == 0) {
-                break;
-            } else {
-                loader.put("class", loaderClass);
-                loader.put("profiles", props.getProperty("ofbiz.start.loader" + currentPosition + ".loaders"));
-                loadersTmp.add(Collections.unmodifiableMap(loader));
-                currentPosition++;
-            }
-        }
-        loaders = Collections.unmodifiableList(loadersTmp);
-    }
 }

Modified: ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Start.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Start.java?rev=1622441&r1=1622440&r2=1622441&view=diff
==============================================================================
--- ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Start.java (original)
+++ ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Start.java Thu Sep  4 10:01:07 2014
@@ -197,7 +197,7 @@ public final class Start {
             }
         }
         try {
-            this.config = Config.getInstance(args);
+            this.config = new Config(args);
         } catch (IOException e) {
             throw (StartupException) new StartupException("Couldn't not fetch config instance").initCause(e);
         }