/*
*
* Copyright (c) 2000-2001 Silvere Martin-Michiellot All Rights Reserved.
*
* Silvere Martin-Michiellot grants you ("Licensee") a non-exclusive,
* royalty free, license to use, modify but not to redistribute this
* software in source and binary code form,
* provided that i) this copyright notice and license appear on all copies of
* the software; and ii) Licensee does not utilize the software in a manner
* which is disparaging to Silvere Martin-Michiellot.
*
* This software is provided "AS IS," without a warranty of any kind. ALL
* EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY
* IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR
* NON-INFRINGEMENT, ARE HEREBY EXCLUDED. Silvere Martin-Michiellot
* AND ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES
* SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING
* OR DISTRIBUTING THE SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL
* Silvere Martin-Michiellot OR ITS LICENSORS BE LIABLE
* FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT,
* INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER
* CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF
* OR INABILITY TO USE SOFTWARE, EVEN IF Silvere Martin-Michiellot HAS BEEN
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
*
* This software is not designed or intended for use in on-line control of
* aircraft, air traffic, aircraft navigation or aircraft communications; or in
* the design, construction, operation or maintenance of any nuclear
* facility. Licensee represents and warrants that it will not use or
* redistribute the Software for such purposes.
*
* @Author: Silvere Martin-Michiellot
*
*/
package com.db.version;
import java.util.ResourceBundle;
import java.util.Properties;
/**
* The SystemProperties class accesses general settings. It would be nice to access and control also the settings of the Virtual Machine, but as it is already launched, this sounds impossible. You therefore still have to use the -D parameter on the command line while launching Java.
*/
public class SystemProperties extends Object {
private static ResourceBundle bundle;
/**
* Builds the system properties access.
* @see java.lang.System
*/
public SystemProperties() {
bundle = ResourceBundle.getBundle("com.db.version.SystemPropertiesDescription");
}
/**
* Sets the system properties to the Properties argument.
*/
public static void setProperties(Properties props) {
System.setProperties(props);
}
/**
* Sets the system property indicated by the specified key.
*/
public static String setProperty(String key, String value) {
return System.setProperty(key, value);
}
/**
* Determines the current system properties.
*/
public static Properties getProperties() {
return System.getProperties();
}
/**
* Gets the system property indicated by the specified key.
*/
public static String getProperty(String key) {
return System.getProperty(key);
}
/**
* Gets the system property indicated by the specified key.
*/
public static String getProperty(String key, String def) {
return System.getProperty(key, def);
}
/**
* Gets the description corresponding to the system property indicated by the specified key.
*/
public static String getPropertyDescription(String key) {
return bundle.getString(key);
}
}
|