[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