[jboss-cvs] JBossAS SVN: r88132 - in projects/bootstrap/trunk: impl-as/src/main/java/org/jboss/bootstrap/impl/as/server and 4 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Sun May 3 23:58:54 EDT 2009


Author: ALRubinger
Date: 2009-05-03 23:58:54 -0400 (Sun, 03 May 2009)
New Revision: 88132

Modified:
   projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/BasicJBossASServerConfig.java
   projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationInitializer.java
   projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationInitializerImpl.java
   projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationValidator.java
   projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/JBossASServerConfig.java
   projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/JBossASServerConfigLegacy.java
   projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/server/JBossASServerInitializer.java
   projects/bootstrap/trunk/impl-as/src/test/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationInitializationTestCase.java
   projects/bootstrap/trunk/impl-as/src/test/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationPropertyOverrideTestCase.java
   projects/bootstrap/trunk/impl-as/src/test/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationValidationTestCase.java
   projects/bootstrap/trunk/impl-as/src/test/java/org/jboss/bootstrap/impl/as/server/JBossASServerInitializationTestCase.java
   projects/bootstrap/trunk/impl-base/src/main/java/org/jboss/bootstrap/impl/base/config/AbstractBasicServerConfig.java
   projects/bootstrap/trunk/impl-base/src/main/java/org/jboss/bootstrap/impl/base/server/AbstractBasicServerInitializer.java
Log:
[JBBOOT-31] Handle configuration of "jboss.native.load" overrides, and tests

Modified: projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/BasicJBossASServerConfig.java
===================================================================
--- projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/BasicJBossASServerConfig.java	2009-05-04 01:17:22 UTC (rev 88131)
+++ projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/BasicJBossASServerConfig.java	2009-05-04 03:58:54 UTC (rev 88132)
@@ -176,6 +176,14 @@
     */
    private volatile Integer udpPort;
 
+   /**
+    * Whether or not to load the native libraries.
+    * Synchronized on "this".
+    * Volatile so we don't have to block
+    * when simply setting the value.
+    */
+   private volatile Boolean loadNative;
+
    //-------------------------------------------------------------------------------||
    // Constructor ------------------------------------------------------------------||
    //-------------------------------------------------------------------------------||
@@ -862,6 +870,29 @@
       return this.covarientReturn();
    }
 
+   /* (non-Javadoc)
+    * @see org.jboss.bootstrap.impl.as.config.JBossASServerConfig#isLoadNative()
+    */
+   public Boolean isLoadNative()
+   {
+      return this.loadNative;
+   }
+
+   /* (non-Javadoc)
+    * @see org.jboss.bootstrap.impl.as.config.JBossASServerConfig#loadNative(java.lang.Boolean)
+    */
+   public synchronized JBossASServerConfig loadNative(Boolean loadNative)
+   {
+      // Set
+      this.loadNative = loadNative;
+
+      // Set property
+      this.setPropertyForString(PROP_KEY_JBOSSAS_NATIVE_LOAD_PROPERTY, loadNative);
+
+      // Return
+      return this.covarientReturn();
+   }
+
    //-------------------------------------------------------------------------------||
    // Internal Helper Methods ------------------------------------------------------||
    //-------------------------------------------------------------------------------||

Modified: projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationInitializer.java
===================================================================
--- projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationInitializer.java	2009-05-04 01:17:22 UTC (rev 88131)
+++ projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationInitializer.java	2009-05-04 03:58:54 UTC (rev 88132)
@@ -112,4 +112,10 @@
     * {@link JBossASServerConfig#PROP_KEY_JBOSSAS_PARTITION_NAME} 
     */
    String DEFAULT_VALUE_PARITION_NAME = "DefaultPartition";
+
+   /**
+    * The default value for
+    * {@link JBossASServerConfig#PROP_KEY_JBOSSAS_NATIVE_LOAD_PROPERTY}
+    */
+   Boolean DEFAULT_VALUE_NATIVE_LOAD = true;
 }

Modified: projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationInitializerImpl.java
===================================================================
--- projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationInitializerImpl.java	2009-05-04 01:17:22 UTC (rev 88131)
+++ projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationInitializerImpl.java	2009-05-04 03:58:54 UTC (rev 88132)
@@ -241,6 +241,18 @@
          }
       }
 
+      // ${jboss.native.load}
+      final Boolean loadNative = config.isLoadNative();
+      final String loadNativeString = loadNative != null ? loadNative.toString() : null;
+      final String loadNativeResolved = this.resolvePropertyValue(
+            JBossASServerConfig.PROP_KEY_JBOSSAS_NATIVE_LOAD_PROPERTY, loadNativeString,
+            JBossASConfigurationInitializer.DEFAULT_VALUE_NATIVE_LOAD.toString(), configProps);
+      if (loadNativeResolved != null)
+      {
+         final boolean loadNativeOverride = Boolean.parseBoolean(loadNativeResolved);
+         config.loadNative(loadNativeOverride);
+      }
+
    }
 
    //-------------------------------------------------------------------------------||

Modified: projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationValidator.java
===================================================================
--- projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationValidator.java	2009-05-04 01:17:22 UTC (rev 88131)
+++ projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationValidator.java	2009-05-04 03:58:54 UTC (rev 88132)
@@ -101,6 +101,8 @@
       this.require(config.getServerTempLocation(), JBossASServerConfig.PROP_KEY_JBOSSAS_SERVER_TEMP_DIR);
       // jboss.partition.name
       this.require(config.getPartitionName(), JBossASServerConfig.PROP_KEY_JBOSSAS_PARTITION_NAME);
+      // jboss.native.load
+      this.require(config.isLoadNative(), JBossASServerConfig.PROP_KEY_JBOSSAS_NATIVE_LOAD_PROPERTY);
 
       // Log
       log.debug("Configuration is valid: " + config);
@@ -129,6 +131,23 @@
 
    /**
     * Requires that the specified argument is both non-null and
+    * non-empty. 
+    * 
+    * @throws InvalidConfigurationException If the specified argument is 
+    *   either null or empty
+    */
+   protected void require(final Boolean arg, final String propertyName) throws InvalidConfigurationException
+   {
+      // If not specified
+      if (arg == null)
+      {
+         // Tell 'em about it
+         throw new InvalidConfigurationException(propertyName + " must be specified");
+      }
+   }
+
+   /**
+    * Requires that the specified argument is both non-null and
     * pointing to an existent location
     * 
     * @throws InvalidConfigurationException If the specified argument is 

Modified: projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/JBossASServerConfig.java
===================================================================
--- projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/JBossASServerConfig.java	2009-05-04 01:17:22 UTC (rev 88131)
+++ projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/JBossASServerConfig.java	2009-05-04 03:58:54 UTC (rev 88132)
@@ -177,6 +177,12 @@
     */
    String PROP_KEY_JBOSSAS_PARTITION_UDP_PORT = "jboss.jgroups.udp.mcast_port";
 
+   /** 
+    * Constant that holds the name of the system property
+    * designating whether to load native libraries
+    */
+   String PROP_KEY_JBOSSAS_NATIVE_LOAD_PROPERTY = "jboss.native.load";
+
    //-------------------------------------------------------------------------------||
    // Contracts --------------------------------------------------------------------||
    //-------------------------------------------------------------------------------||
@@ -540,9 +546,24 @@
     * Sets the JGroups UDP Multicast port for use 
     * in clustering
     * 
-    * @param udpPort
+    * @param udpPort The port, or null to use the default
     * @return
     */
    JBossASServerConfig udpPort(Integer udpPort);
 
+   /**
+    * Determines whether or not to load the native libraries
+    * 
+    * @return
+    */
+   Boolean isLoadNative();
+
+   /**
+    * Sets whether or not to load the native libraries
+    * 
+    * @param loadNative true or false, or null to use the default
+    * @return
+    */
+   JBossASServerConfig loadNative(Boolean loadNative);
+
 }

Modified: projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/JBossASServerConfigLegacy.java
===================================================================
--- projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/JBossASServerConfigLegacy.java	2009-05-04 01:17:22 UTC (rev 88131)
+++ projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/config/JBossASServerConfigLegacy.java	2009-05-04 03:58:54 UTC (rev 88132)
@@ -47,9 +47,6 @@
     * STUFF BELOW HERE has not been addressed/documented/reintegrated
     */
 
-   /** Whether to load native libraries */
-   String PROP_KEY_JBOSSAS_NATIVE_LOAD_PROPERTY = "jboss.native.load";
-
    /** The location of native libraries property */
    String PROP_KEY_JBOSSAS_NATIVE_DIR_PROPERTY = "jboss.native.dir";
 

Modified: projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/server/JBossASServerInitializer.java
===================================================================
--- projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/server/JBossASServerInitializer.java	2009-05-04 01:17:22 UTC (rev 88131)
+++ projects/bootstrap/trunk/impl-as/src/main/java/org/jboss/bootstrap/impl/as/server/JBossASServerInitializer.java	2009-05-04 03:58:54 UTC (rev 88132)
@@ -104,6 +104,8 @@
       final String serverTempDir = this.getAbsoluteLocationOfUrl(configuration.getServerTempLocation());
       final String partitionName = configuration.getPartitionName();
       final String udpGroup = configuration.getUdpGroup();
+      final Integer udpPort = configuration.getUdpPort();
+      final Boolean loadNative = configuration.isLoadNative();
 
       // Set our system properties
       this.setSystemProperty(JBossASServerConfig.PROP_KEY_JBOSSAS_HOME, jbossHomeDir);
@@ -125,6 +127,8 @@
       this.setSystemProperty(JBossASServerConfig.PROP_KEY_JBOSSAS_SERVER_TEMP_DIR, serverTempDir);
       this.setSystemProperty(JBossASServerConfig.PROP_KEY_JBOSSAS_PARTITION_NAME, partitionName);
       this.setSystemProperty(JBossASServerConfig.PROP_KEY_JBOSSAS_PARTITION_UDP_GROUP, udpGroup);
+      this.setSystemProperty(JBossASServerConfig.PROP_KEY_JBOSSAS_PARTITION_UDP_PORT, udpPort);
+      this.setSystemProperty(JBossASServerConfig.PROP_KEY_JBOSSAS_NATIVE_LOAD_PROPERTY, loadNative);
    }
 
    //-------------------------------------------------------------------------------||

Modified: projects/bootstrap/trunk/impl-as/src/test/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationInitializationTestCase.java
===================================================================
--- projects/bootstrap/trunk/impl-as/src/test/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationInitializationTestCase.java	2009-05-04 01:17:22 UTC (rev 88131)
+++ projects/bootstrap/trunk/impl-as/src/test/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationInitializationTestCase.java	2009-05-04 03:58:54 UTC (rev 88132)
@@ -456,6 +456,28 @@
       log.info("Got expected: " + expected);
    }
 
+   /**
+    * Ensures that the default Load Native property is set correctly
+    * 
+    * @throws Throwable
+    */
+   @Test
+   public void testLoadNativeDefault() throws Throwable
+   {
+      // Log
+      log.info("testLoadNativeDefault");
+
+      // Get out the bootstrap URL
+      final Boolean actual = config.isLoadNative();
+
+      // Get expected value
+      final Boolean expected = JBossASConfigurationInitializer.DEFAULT_VALUE_NATIVE_LOAD;
+
+      // Test
+      TestCase.assertEquals("Load Native for AS was not defaulted as expected", expected, actual);
+      log.info("Got expected: " + expected);
+   }
+
    //-------------------------------------------------------------------------------||
    // Internal Helper Methods ------------------------------------------------------||
    //-------------------------------------------------------------------------------||

Modified: projects/bootstrap/trunk/impl-as/src/test/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationPropertyOverrideTestCase.java
===================================================================
--- projects/bootstrap/trunk/impl-as/src/test/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationPropertyOverrideTestCase.java	2009-05-04 01:17:22 UTC (rev 88131)
+++ projects/bootstrap/trunk/impl-as/src/test/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationPropertyOverrideTestCase.java	2009-05-04 03:58:54 UTC (rev 88132)
@@ -74,6 +74,11 @@
    private static final Integer INTEGER_EXPLICIT_SETTING = 102;
 
    /**
+    * A Boolean used to model an explicit setting while testing the config
+    */
+   private static final Boolean BOOLEAN_EXPLICIT_SETTING = false;
+
+   /**
     * A String used to model an explicit setting while testing the config
     */
    private static final URL URL_EXPLICIT_SETTING;
@@ -98,6 +103,11 @@
     */
    private static final Integer INTEGER_OVERRIDE = 513;
 
+   /**
+    * A Boolean used to model an override setting while testing the config
+    */
+   private static final Boolean BOOLEAN_OVERRIDE = true;
+
    static
    {
       try
@@ -593,4 +603,32 @@
       log.info("Got expected: " + override);
    }
 
+   /**
+    * Ensures that the Native Load may be overridden from
+    * the corresponding property
+    */
+   @Test
+   public void testNativeLoadPropOverride() throws Throwable
+   {
+      // Log
+      log.info("testNativeLoadPropOverride");
+
+      // Get the config
+      final JBossASServerConfig config = this.config;
+
+      // Explicitly set
+      config.loadNative(BOOLEAN_EXPLICIT_SETTING);
+
+      // Set override property
+      final String override = BOOLEAN_OVERRIDE.toString();
+      config.property(JBossASServerConfig.PROP_KEY_JBOSSAS_NATIVE_LOAD_PROPERTY, override);
+
+      // Initialize
+      initializer.initialize(config);
+
+      // Test
+      TestCase.assertEquals(FAIL_MESSAGE, override, config.isLoadNative().toString());
+      log.info("Got expected: " + override);
+   }
+
 }

Modified: projects/bootstrap/trunk/impl-as/src/test/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationValidationTestCase.java
===================================================================
--- projects/bootstrap/trunk/impl-as/src/test/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationValidationTestCase.java	2009-05-04 01:17:22 UTC (rev 88131)
+++ projects/bootstrap/trunk/impl-as/src/test/java/org/jboss/bootstrap/impl/as/config/JBossASConfigurationValidationTestCase.java	2009-05-04 03:58:54 UTC (rev 88132)
@@ -416,6 +416,23 @@
       this.assertMissingValueFails(config, "partition name");
    }
 
+   /**
+    * Ensures that an empty/null Native Load fails
+    */
+   @Test
+   public void testNoNativeLoadFails()
+   {
+      // Log
+      log.info("testNoNativeLoadFails");
+
+      // Get config and clear out
+      final JBossASServerConfig config = this.config;
+      config.loadNative(null);
+
+      // Test
+      this.assertMissingValueFails(config, "load native");
+   }
+
    //-------------------------------------------------------------------------------||
    // Internal Helper Methods ------------------------------------------------------||
    //-------------------------------------------------------------------------------||
@@ -476,13 +493,14 @@
       final String serverData = serverHome + JBossASConfigurationInitializer.DEFAULT_VALUE_SERVER_DATA_DIR_SUFFIX;
       final String serverTemp = serverHome + JBossASConfigurationInitializer.DEFAULT_VALUE_SERVER_TEMP_DIR_SUFFIX;
       final String partitionName = JBossASConfigurationInitializer.DEFAULT_VALUE_PARITION_NAME;
+      final Boolean nativeLoad = JBossASConfigurationInitializer.DEFAULT_VALUE_NATIVE_LOAD;
 
       // Populate
       config.jbossHome(jbossHome).bootstrapHome(bootstrapHome).bootstrapName(bootstrapName).bindAddress(bindAddress)
             .serverName(serverName).bootLibraryLocation(bootLib).serverBaseLocation(serverBase).serverHomeLocation(
                   serverHome).commonBaseLocation(commonBase).commonLibLocation(commonLib).serverLogLocation(serverLog)
             .serverConfLocation(serverConfig).serverLibLocation(serverLib).serverDataLocation(serverData)
-            .serverTempLocation(serverTemp).partitionName(partitionName);
+            .serverTempLocation(serverTemp).partitionName(partitionName).loadNative(nativeLoad);
 
       // Return
       return config;

Modified: projects/bootstrap/trunk/impl-as/src/test/java/org/jboss/bootstrap/impl/as/server/JBossASServerInitializationTestCase.java
===================================================================
--- projects/bootstrap/trunk/impl-as/src/test/java/org/jboss/bootstrap/impl/as/server/JBossASServerInitializationTestCase.java	2009-05-04 01:17:22 UTC (rev 88131)
+++ projects/bootstrap/trunk/impl-as/src/test/java/org/jboss/bootstrap/impl/as/server/JBossASServerInitializationTestCase.java	2009-05-04 03:58:54 UTC (rev 88132)
@@ -144,6 +144,7 @@
       final String partitionNamePropKey = JBossASServerConfig.PROP_KEY_JBOSSAS_PARTITION_NAME;
       final String udpGroupPropKey = JBossASServerConfig.PROP_KEY_JBOSSAS_PARTITION_UDP_GROUP;
       final String udpPortPropKey = JBossASServerConfig.PROP_KEY_JBOSSAS_PARTITION_UDP_PORT;
+      final String nativeLoadPropKey = JBossASServerConfig.PROP_KEY_JBOSSAS_NATIVE_LOAD_PROPERTY;
 
       // Get Properties from Configuration
       final Map<String, String> properties = configuration.getProperties();
@@ -167,6 +168,7 @@
       final String partitionNameFromConfProp = properties.get(partitionNamePropKey);
       final String udpGroupFromConfProp = properties.get(udpGroupPropKey);
       final String udpPortFromConfProp = properties.get(udpPortPropKey);
+      final String nativeLoadFromConfProp = properties.get(nativeLoadPropKey);
 
       // Get Properties from System
       final String jbossHomeFromSystem = System.getProperty(jbossHomePropKey);
@@ -188,7 +190,8 @@
       final String serverTempDirFromSystem = System.getProperty(serverTempDirPropKey);
       final String partitionNameFromSystem = System.getProperty(partitionNamePropKey);
       final String udpGroupFromSystem = System.getProperty(udpGroupPropKey);
-      final String udpPortFromSystem = properties.get(udpPortPropKey);
+      final String udpPortFromSystem = System.getProperty(udpPortPropKey);
+      final String nativeLoadFromSystem = System.getProperty(nativeLoadPropKey);
 
       // Get Expected Values
       final URL jbossHomeFromConf = configuration.getJBossHome();
@@ -222,6 +225,7 @@
       final String partitionNameFromConf = configuration.getPartitionName();
       final String udpGroupFromConf = configuration.getUdpGroup();
       final String udpPortFromConf = configuration.getUdpPort().toString();
+      final String nativeLoadFromConf = configuration.isLoadNative().toString();
 
       // Ensure all equal
       TestCase.assertEquals("JBoss Home in configuration must match the config property", jbossHomeDirFromConf,
@@ -304,6 +308,10 @@
             udpPortFromConfProp);
       TestCase.assertEquals("UDP Port in configuration must match the system property", udpPortFromConf,
             udpPortFromSystem);
+      TestCase.assertEquals("Native Load in configuration must match the config property", nativeLoadFromConf,
+            nativeLoadFromConfProp);
+      TestCase.assertEquals("Native Load in configuration must match the system property", nativeLoadFromConf,
+            nativeLoadFromSystem);
 
       // Push through lifecycle start/stop
       server.start();
@@ -330,6 +338,7 @@
       final String partitionNameFromSystemAfterCleanup = System.getProperty(partitionNamePropKey);
       final String udpGroupFromSystemAfterCleanup = System.getProperty(udpGroupPropKey);
       final String udpPortFromSystemAfterCleanup = System.getProperty(udpPortPropKey);
+      final String nativeLoadFromSystemAfterCleanup = System.getProperty(nativeLoadPropKey);
 
       // Ensure all null
       final String failMessage = "System property should be null after cleanup";
@@ -353,5 +362,6 @@
       TestCase.assertNull(failMessage, partitionNameFromSystemAfterCleanup);
       TestCase.assertNull(failMessage, udpGroupFromSystemAfterCleanup);
       TestCase.assertNull(failMessage, udpPortFromSystemAfterCleanup);
+      TestCase.assertNull(failMessage, nativeLoadFromSystemAfterCleanup);
    }
 }

Modified: projects/bootstrap/trunk/impl-base/src/main/java/org/jboss/bootstrap/impl/base/config/AbstractBasicServerConfig.java
===================================================================
--- projects/bootstrap/trunk/impl-base/src/main/java/org/jboss/bootstrap/impl/base/config/AbstractBasicServerConfig.java	2009-05-04 01:17:22 UTC (rev 88131)
+++ projects/bootstrap/trunk/impl-base/src/main/java/org/jboss/bootstrap/impl/base/config/AbstractBasicServerConfig.java	2009-05-04 03:58:54 UTC (rev 88132)
@@ -353,6 +353,17 @@
    }
 
    /**
+    * Sets both the configuration property and System property with the 
+    * specified key and specified value
+    */
+   protected void setPropertyForString(final String propertyName, final Boolean value)
+   {
+      final String stringValue = value != null ? value.toString() : null;
+      this.setPropertyForString(propertyName, stringValue);
+   }
+
+   
+   /**
     * Throws IllegalStateException if this configuration is frozen
     * 
     * @throws IllegalStateException

Modified: projects/bootstrap/trunk/impl-base/src/main/java/org/jboss/bootstrap/impl/base/server/AbstractBasicServerInitializer.java
===================================================================
--- projects/bootstrap/trunk/impl-base/src/main/java/org/jboss/bootstrap/impl/base/server/AbstractBasicServerInitializer.java	2009-05-04 01:17:22 UTC (rev 88131)
+++ projects/bootstrap/trunk/impl-base/src/main/java/org/jboss/bootstrap/impl/base/server/AbstractBasicServerInitializer.java	2009-05-04 03:58:54 UTC (rev 88132)
@@ -145,11 +145,35 @@
     */
    protected final void setSystemProperty(final String key, final URL value)
    {
-      String urlString = value != null ? value.toExternalForm() : "";
+      final String urlString = value != null ? value.toExternalForm() : "";
       this.setSystemProperty(key, urlString == null ? null : urlString);
    }
 
    /**
+    * Sets the specified Integer as a system property with the specified key
+    * 
+    * @param key
+    * @param value
+    */
+   protected final void setSystemProperty(final String key, final Integer value)
+   {
+      final String string = value != null ? value.toString() : "";
+      this.setSystemProperty(key, string == null ? null : string);
+   }
+   
+   /**
+    * Sets the specified Boolean as a system property with the specified key
+    * 
+    * @param key
+    * @param value
+    */
+   protected final void setSystemProperty(final String key, final Boolean value)
+   {
+      final String string = value != null ? value.toString() : "";
+      this.setSystemProperty(key, string == null ? null : string);
+   }
+
+   /**
     * Sets the specified system property key to the specified value
     * 
     * @param key The non-null key




More information about the jboss-cvs-commits mailing list