Author: dims Date: Tue Aug 2 10:04:25 2005 New Revision: 227044 URL: http://svn.apache.org/viewcvs?rev=227044&view=rev Log: - Adding getSystemProperty in JDKHooks for handling SecurityException - Handle one more SecurityException in classLoader.getParent()
Modified: jakarta/commons/proper/discovery/trunk/src/java/org/apache/commons/discovery/jdk/JDK11Hooks.java jakarta/commons/proper/discovery/trunk/src/java/org/apache/commons/discovery/jdk/JDK12Hooks.java jakarta/commons/proper/discovery/trunk/src/java/org/apache/commons/discovery/jdk/JDKHooks.java jakarta/commons/proper/discovery/trunk/src/java/org/apache/commons/discovery/tools/ManagedProperties.java Modified: jakarta/commons/proper/discovery/trunk/src/java/org/apache/commons/discovery/jdk/JDK11Hooks.java URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/discovery/trunk/src/java/org/apache/commons/discovery/jdk/JDK11Hooks.java?rev=227044&r1=227043&r2=227044&view=diff ============================================================================== --- jakarta/commons/proper/discovery/trunk/src/java/org/apache/commons/discovery/jdk/JDK11Hooks.java (original) +++ jakarta/commons/proper/discovery/trunk/src/java/org/apache/commons/discovery/jdk/JDK11Hooks.java Tue Aug 2 10:04:25 2005 @@ -27,6 +27,15 @@ private static final ClassLoader systemClassLoader = new PsuedoSystemClassLoader(); + /** + * Get the system property + * + * @param propName name of the property + * @return value of the property + */ + public String getSystemProperty(final String propName) { + return System.getProperty(propName); + } /** * The thread context class loader is available for JDK 1.2 Modified: jakarta/commons/proper/discovery/trunk/src/java/org/apache/commons/discovery/jdk/JDK12Hooks.java URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/discovery/trunk/src/java/org/apache/commons/discovery/jdk/JDK12Hooks.java?rev=227044&r1=227043&r2=227044&view=diff ============================================================================== --- jakarta/commons/proper/discovery/trunk/src/java/org/apache/commons/discovery/jdk/JDK12Hooks.java (original) +++ jakarta/commons/proper/discovery/trunk/src/java/org/apache/commons/discovery/jdk/JDK12Hooks.java Tue Aug 2 10:04:25 2005 @@ -46,6 +46,25 @@ } /** + * Get the system property + * + * @param propName name of the property + * @return value of the property + */ + public String getSystemProperty(final String propName) { + return (String) + java.security.AccessController.doPrivileged(new java.security.PrivilegedAction() { + public Object run() { + try { + return System.getProperty(propName); + } catch (SecurityException se){ + return null; + } + } + }); + } + + /** * The thread context class loader is available for JDK 1.2 * or later, if certain security conditions are met. * Modified: jakarta/commons/proper/discovery/trunk/src/java/org/apache/commons/discovery/jdk/JDKHooks.java URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/discovery/trunk/src/java/org/apache/commons/discovery/jdk/JDKHooks.java?rev=227044&r1=227043&r2=227044&view=diff ============================================================================== --- jakarta/commons/proper/discovery/trunk/src/java/org/apache/commons/discovery/jdk/JDKHooks.java (original) +++ jakarta/commons/proper/discovery/trunk/src/java/org/apache/commons/discovery/jdk/JDKHooks.java Tue Aug 2 10:04:25 2005 @@ -41,6 +41,14 @@ } /** + * Get the system property + * + * @param propName name of the property + * @return value of the property + */ + public abstract String getSystemProperty(final String propName); + + /** * The thread context class loader is available for JDK 1.2 * or later, if certain security conditions are met. * Modified: jakarta/commons/proper/discovery/trunk/src/java/org/apache/commons/discovery/tools/ManagedProperties.java URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/discovery/trunk/src/java/org/apache/commons/discovery/tools/ManagedProperties.java?rev=227044&r1=227043&r2=227044&view=diff ============================================================================== --- jakarta/commons/proper/discovery/trunk/src/java/org/apache/commons/discovery/tools/ManagedProperties.java (original) +++ jakarta/commons/proper/discovery/trunk/src/java/org/apache/commons/discovery/tools/ManagedProperties.java Tue Aug 2 10:04:25 2005 @@ -121,7 +121,7 @@ * @return property value if found, otherwise default. */ public static String getProperty(ClassLoader classLoader, String propertyName) { - String value = System.getProperty(propertyName); + String value = JDKHooks.getJDKHooks().getSystemProperty(propertyName); if (value == null) { Value val = getValueProperty(classLoader, propertyName); if (val != null) { @@ -348,7 +348,11 @@ private static final ClassLoader getParent(final ClassLoader classLoader) { return (ClassLoader)AccessController.doPrivileged(new PrivilegedAction() { public Object run() { - return classLoader.getParent(); + try { + return classLoader.getParent(); + } catch (SecurityException se){ + return null; + } } }); } --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]