Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

org.apache.axis
Class AxisProperties  view AxisProperties download AxisProperties.java

java.lang.Object
  extended byorg.apache.axis.AxisProperties

public class AxisProperties
extends java.lang.Object

Configuration properties for AXIS.

Manage configuration properties according to a secure scheme similar to that used by classloaders:


Field Summary
private static org.apache.commons.discovery.resource.names.DiscoverNamesInAlternateManagedProperties altNameDiscoverer
           
private static org.apache.commons.discovery.resource.ClassLoaders loaders
           
protected static org.apache.commons.logging.Log log
          The Log for all interesting events in this class.
private static org.apache.commons.discovery.resource.names.DiscoverMappedNames mappedNames
           
private static org.apache.commons.discovery.resource.names.NameDiscoverers nameDiscoverer
           
 
Constructor Summary
AxisProperties()
           
 
Method Summary
private static org.apache.commons.discovery.resource.names.DiscoverNamesInAlternateManagedProperties getAlternatePropertyNameDiscoverer()
           
private static org.apache.commons.discovery.resource.ClassLoaders getClassLoaders()
           
private static org.apache.commons.discovery.resource.names.DiscoverMappedNames getMappedNames()
           
static org.apache.commons.discovery.ResourceNameDiscover getNameDiscoverer()
           
static java.util.Properties getProperties()
          This is an expensive operation.
static java.lang.String getProperty(java.lang.String propertyName)
          Get value for property bound to the current thread context class loader.
static java.lang.String getProperty(java.lang.String propertyName, java.lang.String dephault)
          Get value for property bound to the current thread context class loader.
static org.apache.commons.discovery.ResourceClassIterator getResourceClassIterator(java.lang.Class spi)
           
static java.lang.Object newInstance(java.lang.Class spiClass)
          Create a new instance of a service provider class.
static java.lang.Object newInstance(java.lang.Class spiClass, java.lang.Class defaultClass)
           
static java.lang.Object newInstance(java.lang.Class spiClass, java.lang.Class[] constructorParamTypes, java.lang.Object[] constructorParams)
           
private static java.lang.Object newInstance(org.apache.commons.discovery.tools.SPInterface spi, org.apache.commons.discovery.tools.DefaultClassHolder defaultClass)
          !WARNING! SECURITY issue.
static java.util.Enumeration propertyNames()
           
static void setClassDefault(java.lang.Class clazz, java.lang.String defaultName)
           
static void setClassDefaults(java.lang.Class clazz, java.lang.String[] defaultNames)
           
static void setClassOverrideProperty(java.lang.Class clazz, java.lang.String propertyName)
           
static void setProperties(java.util.Map newProperties)
          Set property values for Properties bound to the current thread context class loader.
static void setProperties(java.util.Map newProperties, boolean isDefault)
          Set property values for Properties bound to the current thread context class loader.
static void setProperty(java.lang.String propertyName, java.lang.String value)
          Set value for property bound to the current thread context class loader.
static void setProperty(java.lang.String propertyName, java.lang.String value, boolean isDefault)
          Set value for property bound to the current thread context class loader.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

protected static org.apache.commons.logging.Log log
The Log for all interesting events in this class.


altNameDiscoverer

private static org.apache.commons.discovery.resource.names.DiscoverNamesInAlternateManagedProperties altNameDiscoverer

mappedNames

private static org.apache.commons.discovery.resource.names.DiscoverMappedNames mappedNames

nameDiscoverer

private static org.apache.commons.discovery.resource.names.NameDiscoverers nameDiscoverer

loaders

private static org.apache.commons.discovery.resource.ClassLoaders loaders
Constructor Detail

AxisProperties

public AxisProperties()
Method Detail

setClassOverrideProperty

public static void setClassOverrideProperty(java.lang.Class clazz,
                                            java.lang.String propertyName)

setClassDefault

public static void setClassDefault(java.lang.Class clazz,
                                   java.lang.String defaultName)

setClassDefaults

public static void setClassDefaults(java.lang.Class clazz,
                                    java.lang.String[] defaultNames)

getNameDiscoverer

public static org.apache.commons.discovery.ResourceNameDiscover getNameDiscoverer()

getResourceClassIterator

public static org.apache.commons.discovery.ResourceClassIterator getResourceClassIterator(java.lang.Class spi)

getClassLoaders

private static org.apache.commons.discovery.resource.ClassLoaders getClassLoaders()

getMappedNames

private static org.apache.commons.discovery.resource.names.DiscoverMappedNames getMappedNames()

getAlternatePropertyNameDiscoverer

private static org.apache.commons.discovery.resource.names.DiscoverNamesInAlternateManagedProperties getAlternatePropertyNameDiscoverer()

newInstance

public static java.lang.Object newInstance(java.lang.Class spiClass)
Create a new instance of a service provider class. !WARNING! SECURITY issue. See bug 11874 The solution to both is to move doPrivilege UP within AXIS to a class that is either private (cannot be reached by code outside AXIS) or that represents a secure public interface... This is going to require analysis and (probably) rearchitecting. So, I'm taking taking the easy way out until we are at a point where we can reasonably rearchitect for security.


newInstance

public static java.lang.Object newInstance(java.lang.Class spiClass,
                                           java.lang.Class[] constructorParamTypes,
                                           java.lang.Object[] constructorParams)

getProperty

public static java.lang.String getProperty(java.lang.String propertyName)
Get value for property bound to the current thread context class loader.


getProperty

public static java.lang.String getProperty(java.lang.String propertyName,
                                           java.lang.String dephault)
Get value for property bound to the current thread context class loader. If not found, then return default.


setProperty

public static void setProperty(java.lang.String propertyName,
                               java.lang.String value)
Set value for property bound to the current thread context class loader.


setProperty

public static void setProperty(java.lang.String propertyName,
                               java.lang.String value,
                               boolean isDefault)
Set value for property bound to the current thread context class loader.


setProperties

public static void setProperties(java.util.Map newProperties)
Set property values for Properties bound to the current thread context class loader.


setProperties

public static void setProperties(java.util.Map newProperties,
                                 boolean isDefault)
Set property values for Properties bound to the current thread context class loader.


propertyNames

public static java.util.Enumeration propertyNames()

getProperties

public static java.util.Properties getProperties()
This is an expensive operation.


newInstance

public static java.lang.Object newInstance(java.lang.Class spiClass,
                                           java.lang.Class defaultClass)

newInstance

private static java.lang.Object newInstance(org.apache.commons.discovery.tools.SPInterface spi,
                                            org.apache.commons.discovery.tools.DefaultClassHolder defaultClass)
!WARNING! SECURITY issue. See bug 11874 The solution to both is to move doPrivilege UP within AXIS to a class that is either private (cannot be reached by code outside AXIS) or that represents a secure public interface... This is going to require analysis and (probably) rearchitecting. So, I'm taking taking the easy way out until we are at a point where we can reasonably rearchitect for security.